From f6b4e7ce62b9247135680908224084219827cfd7 Mon Sep 17 00:00:00 2001 From: GH Action CI Stream Date: Mon, 15 Apr 2024 16:29:18 +0000 Subject: [PATCH] Update video openapi Spec --- openapi/chat-openapi-clientside.json | 2 +- openapi/chat-openapi-clientside.yaml | 9157 ++++++++++++--------- openapi/chat-openapi.json | 2 +- openapi/chat-openapi.yaml | 5072 +++++++----- openapi/clientside-api.json | 2 +- openapi/clientside-api.yaml | 10101 ++++++++++++++---------- openapi/serverside-api.json | 2 +- openapi/serverside-api.yaml | 4688 +++++++---- openapi/video-openapi-clientside.json | 2 +- openapi/video-openapi-clientside.yaml | 239 +- openapi/video-openapi.json | 2 +- openapi/video-openapi.yaml | 239 +- 12 files changed, 18312 insertions(+), 11196 deletions(-) diff --git a/openapi/chat-openapi-clientside.json b/openapi/chat-openapi-clientside.json index 516e9df7..49d4930b 100644 --- a/openapi/chat-openapi-clientside.json +++ b/openapi/chat-openapi-clientside.json @@ -1 +1 @@ -{"components":{"schemas":{"APIError":{"nullable":true,"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNConfigFields":{"properties":{"auth_key":{"type":"string","x-stream-index":"009"},"auth_type":{"type":"string","x-stream-index":"003"},"bundle_id":{"type":"string","x-stream-index":"006"},"development":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"},"host":{"type":"string","x-stream-index":"005"},"key_id":{"type":"string","x-stream-index":"008"},"notification_template":{"type":"string","x-stream-index":"004"},"p12_cert":{"type":"string","x-stream-index":"010"},"team_id":{"type":"string","x-stream-index":"007"}},"required":["enabled","development","notification_template"],"type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"Action":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"required":["name","text","type"],"type":"object"},"ActionRequest":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"type":"object"},"AgoraCall":{"properties":{"channel":{"type":"string","x-stream-index":"001"}},"required":["channel"],"type":"object"},"AnyEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"custom","type":"string","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"AnyEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"App":{"properties":{"agora_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.038"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.018"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.016"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.019"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.020"},"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallType"},"type":"object","x-stream-index":"001.006"},"campaign_enabled":{"type":"boolean","x-stream-index":"001.033"},"cdn_expiration_seconds":{"format":"int32","type":"integer","x-stream-index":"001.036"},"channel_configs":{"additionalProperties":{"$ref":"#/components/schemas/ChannelConfig"},"description":"Object with channel configs","title":"Channel configs","type":"object","x-stream-index":"001.005","x-stream-map":{"key":"channel_type"}},"custom_action_handler_url":{"type":"string","x-stream-index":"001.021"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfo","x-stream-index":"001.041"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.010"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.011"},"enforce_unique_usernames":{"type":"string","x-stream-index":"001.022"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.029"},"geofences":{"items":{"$ref":"#/components/schemas/GeofenceResponse"},"type":"array","x-stream-index":"001.040"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.039"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.015"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.017"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.030"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.014"},"name":{"type":"string","x-stream-index":"001.001"},"organization":{"type":"string","x-stream-index":"001.002"},"permission_version":{"type":"string","x-stream-index":"001.012"},"policies":{"additionalProperties":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"type":"object","x-stream-index":"001.007"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationFields","x-stream-index":"001.003"},"reminders_interval":{"format":"int32","type":"integer","x-stream-index":"001.035"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.031"},"sns_key":{"type":"string","x-stream-index":"001.027"},"sns_secret":{"type":"string","x-stream-index":"001.028"},"sns_topic_arn":{"type":"string","x-stream-index":"001.026"},"sqs_key":{"type":"string","x-stream-index":"001.024"},"sqs_secret":{"type":"string","x-stream-index":"001.025"},"sqs_url":{"type":"string","x-stream-index":"001.023"},"suspended":{"type":"boolean","x-stream-index":"001.008"},"suspended_explanation":{"type":"string","x-stream-index":"001.009"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"video_provider":{"type":"string","x-stream-index":"001.037"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.034"},"webhook_url":{"type":"string","x-stream-index":"001.004"}},"required":["name","organization","push_notifications","webhook_url","channel_configs","call_types","policies","suspended","suspended_explanation","disable_auth_checks","disable_permissions_checks","permission_version","user_search_disallowed_roles","multi_tenant_enabled","image_moderation_enabled","async_url_enrich_enabled","custom_action_handler_url","enforce_unique_usernames","sqs_url","sqs_key","sqs_secret","sns_topic_arn","sns_key","sns_secret","file_upload_config","image_upload_config","grants","campaign_enabled","webhook_events","reminders_interval","cdn_expiration_seconds","video_provider"],"type":"object"},"Attachment":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"019"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"021"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url)","title":"Type","type":"string","x-stream-index":"001"}},"required":["Custom"],"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AttachmentRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"actions":{"items":{"$ref":"#/components/schemas/ActionRequest"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/FieldRequest"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/ImagesRequest","x-stream-index":"019"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"021"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url)","title":"Type","type":"string","x-stream-index":"001"}},"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AutomodDetails":{"properties":{"action":{"type":"string","x-stream-index":"001"},"image_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"message_details":{"$ref":"#/components/schemas/FlagMessageDetails","x-stream-index":"004"},"original_message_type":{"type":"string","x-stream-index":"002"},"result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"003"}},"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BanRequest":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserRequest","description":"User who issued a ban","title":"Banned by","x-stream-index":"009"},"banned_by_id":{"description":"User ID who issued a ban","title":"Banned by ID","type":"string","x-stream-index":"008"},"id":{"description":"Channel ID to ban user in","title":"ID","type":"string","x-stream-index":"005"},"ip_ban":{"description":"Whether to perform IP ban or not","title":"IP ban","type":"boolean","x-stream-index":"007"},"reason":{"description":"Ban reason","title":"Reason","type":"string","x-stream-index":"003"},"shadow":{"description":"Whether to perform shadow ban or not","title":"Shadow","type":"boolean","x-stream-index":"006"},"target_user_id":{"description":"ID of user to ban","title":"Target user ID","type":"string","x-stream-index":"001"},"timeout":{"description":"Timeout of ban in minutes. User will be unbanned after this period of time","title":"Timeout","type":"integer","x-stream-index":"002"},"type":{"description":"Channel type to ban user in","title":"Type","type":"string","x-stream-index":"004"}},"required":["target_user_id"],"type":"object"},"BanResponse":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"expires":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"required":["created_at"],"type":"object"},"BlockListOptions":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"required":["blocklist","behavior"],"type":"object"},"BroadcastSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettings","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"Call":{"properties":{"agora":{"$ref":"#/components/schemas/AgoraCall","x-stream-index":"005"},"hms":{"$ref":"#/components/schemas/HMSCall","x-stream-index":"004"},"id":{"type":"string","x-stream-index":"002"},"provider":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"003"}},"required":["provider","id","type"],"type":"object"},"CallSettings":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettings","x-stream-index":"006"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"007"},"recording":{"$ref":"#/components/schemas/RecordSettings","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"009"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"004"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"003"}},"type":"object"},"CallType":{"nullable":true,"properties":{"AppPK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"CreatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"005"},"ExternalStorage":{"type":"string","writeOnly":true,"x-stream-index":"009"},"Name":{"type":"string","writeOnly":true,"x-stream-index":"004"},"NotificationSettings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"008"},"PK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"002"},"Settings":{"$ref":"#/components/schemas/CallSettings","x-stream-index":"007"},"UpdatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"006"}},"required":["PK","AppPK","Name","CreatedAt","UpdatedAt","ExternalStorage"],"type":"object"},"Channel":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"028"},"auto_translation_language":{"type":"string","x-stream-index":"029"},"cid":{"type":"string","x-stream-index":"003"},"config":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"025"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"026"},"cooldown":{"format":"int32","type":"integer","x-stream-index":"030"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"008"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"disabled":{"type":"boolean","x-stream-index":"017"},"frozen":{"type":"boolean","x-stream-index":"016"},"id":{"type":"string","x-stream-index":"004"},"invites":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"021"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"006"},"member_count":{"format":"int32","type":"integer","x-stream-index":"020"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"019"},"team":{"type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"015"},"type":{"type":"string","x-stream-index":"005"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"}},"required":["cid","id","type","created_at","updated_at","frozen","disabled","Custom","auto_translation_language"],"type":"object"},"ChannelConfig":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.024"},"blocklist":{"type":"string","x-stream-index":"001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.022"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"003"},"connect_events":{"type":"boolean","x-stream-index":"001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.012"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.017"},"message_retention":{"type":"string","x-stream-index":"001.016"},"mutes":{"type":"boolean","x-stream-index":"001.009"},"name":{"type":"string","x-stream-index":"001.001"},"push_notifications":{"type":"boolean","x-stream-index":"001.013"},"quotes":{"type":"boolean","x-stream-index":"001.008"},"reactions":{"type":"boolean","x-stream-index":"001.006"},"read_events":{"type":"boolean","x-stream-index":"001.003"},"reminders":{"type":"boolean","x-stream-index":"001.014"},"replies":{"type":"boolean","x-stream-index":"001.007"},"search":{"type":"boolean","x-stream-index":"001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"002.004"},"uploads":{"type":"boolean","x-stream-index":"001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands"],"type":"object"},"ChannelConfigRequest":{"description":"Channel configuration overrides","properties":{"blocklist":{"type":"string","x-stream-index":"008"},"blocklist_behavior":{"enum":["flag","block"],"type":"string","x-stream-index":"009"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"010","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"max_message_length":{"description":"Overrides max message length","format":"int32","maximum":20000,"title":"Max Message Length","type":"integer","x-stream-index":"007"},"quotes":{"description":"Enables message quotes","title":"Quotes","type":"boolean","x-stream-index":"004"},"reactions":{"description":"Enables or disables reactions","title":"Reactions","type":"boolean","x-stream-index":"002"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"003"},"typing_events":{"description":"Enables or disables typing events","title":"Typing events","type":"boolean","x-stream-index":"001"},"uploads":{"description":"Enables or disables file uploads","title":"Uploads","type":"boolean","x-stream-index":"005"},"url_enrichment":{"description":"Enables or disables URL enrichment","title":"URL Enrichment","type":"boolean","x-stream-index":"006"}},"type":"object"},"ChannelConfigWithInfo":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.002.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.002.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.002.024"},"blocklist":{"type":"string","x-stream-index":"001.002.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.002.022"},"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.001.003"},"custom_events":{"type":"boolean","x-stream-index":"001.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"002","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.002.017"},"message_retention":{"type":"string","x-stream-index":"001.002.016"},"mutes":{"type":"boolean","x-stream-index":"001.002.009"},"name":{"type":"string","x-stream-index":"001.002.001"},"push_notifications":{"type":"boolean","x-stream-index":"001.002.013"},"quotes":{"type":"boolean","x-stream-index":"001.002.008"},"reactions":{"type":"boolean","x-stream-index":"001.002.006"},"read_events":{"type":"boolean","x-stream-index":"001.002.003"},"reminders":{"type":"boolean","x-stream-index":"001.002.014"},"replies":{"type":"boolean","x-stream-index":"001.002.007"},"search":{"type":"boolean","x-stream-index":"001.002.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.001.004"},"uploads":{"type":"boolean","x-stream-index":"001.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.002.011"}},"required":["created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelCreatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.created","type":"string","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"ChannelCreatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelDeletedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"team":{"type":"string","x-stream-index":"001.001"},"type":{"default":"channel.deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelFrozenEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.frozen","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelFrozenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelGetOrCreateRequest":{"nullable":true,"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"004"},"hide_for_creator":{"description":"Whether this channel will be hidden for the user who created the channel or not","title":"Hide for creator","type":"boolean","x-stream-index":"008"},"members":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"011"},"messages":{"$ref":"#/components/schemas/MessagePaginationParamsRequest","x-stream-index":"010"},"presence":{"description":"Fetch user presence info","title":"Presence","type":"boolean","x-stream-index":"007"},"state":{"description":"Refresh channel state","title":"State","type":"boolean","x-stream-index":"006"},"thread_unread_counts":{"type":"boolean","x-stream-index":"009"},"watch":{"description":"Start watching the channel","title":"Watch","type":"boolean","x-stream-index":"005"},"watchers":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"012"}},"type":"object"},"ChannelHiddenEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"clear_history":{"type":"boolean","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"type":{"default":"channel.hidden","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["clear_history","cid","channel_id","channel_type","type","created_at"],"title":"ChannelHiddenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelKickedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.kicked","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelKickedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelMember":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"required":["created_at","updated_at","banned","shadow_banned","channel_role","notifications_muted"],"title":"Channel member","type":"object"},"ChannelMemberRequest":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"title":"Channel member","type":"object"},"ChannelMute":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"007"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"ChannelRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"auto_translation_enabled":{"description":"Enable or disable auto translation","title":"Auto translation","type":"boolean","x-stream-index":"007"},"auto_translation_language":{"description":"Switch auto translation language","title":"Auto translation language","type":"string","x-stream-index":"008"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfigRequest","x-stream-index":"026"},"disabled":{"type":"boolean","x-stream-index":"016"},"frozen":{"description":"Freeze or unfreeze the channel","title":"Frozen","type":"boolean","x-stream-index":"015"},"members":{"items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"type":"array","x-stream-index":"020"},"team":{"description":"Team the channel belongs to (if multi-tenant mode is enabled)","title":"Team","type":"string","x-stream-index":"006"},"truncated_by_id":{"type":"string","x-stream-index":"012"}},"type":"object"},"ChannelResponse":{"description":"Represents channel in chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"029"},"auto_translation_enabled":{"description":"Whether auto translation is enabled or not","title":"Auto translation","type":"boolean","x-stream-index":"021"},"auto_translation_language":{"description":"Language to translate to when auto translation is active","title":"Auto translation language","type":"string","x-stream-index":"022"},"cid":{"description":"Channel CID (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"005"},"config":{"$ref":"#/components/schemas/ChannelConfigWithInfo","description":"Channel configuration","title":"Config","x-stream-index":"017"},"cooldown":{"description":"Cooldown period after sending each message","format":"int32","title":"Cooldown","type":"integer","x-stream-index":"024"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"008"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Creator of the channel","title":"Created by","x-stream-index":"011"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"010"},"disabled":{"type":"boolean","x-stream-index":"013"},"frozen":{"description":"Whether channel is frozen or not","title":"Frozen","type":"boolean","x-stream-index":"012"},"hidden":{"description":"Whether this channel is hidden by current user or not","title":"Hidden","type":"boolean","x-stream-index":"026"},"hide_messages_before":{"description":"Date since when the message history is accessible","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"023"},"id":{"description":"Channel unique ID","title":"ID","type":"string","x-stream-index":"003"},"last_message_at":{"description":"Date of the last message sent","format":"date-time","title":"Last message at","type":"string","x-stream-index":"006"},"member_count":{"description":"Number of members in the channel","format":"int32","title":"Member count","type":"integer","x-stream-index":"015"},"members":{"description":"List of channel members (max 100)","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"014"},"mute_expires_at":{"description":"Date of mute expiration","format":"date-time","title":"Mute expires at","type":"string","x-stream-index":"019"},"muted":{"description":"Whether this channel is muted or not","title":"Muted","type":"boolean","x-stream-index":"018"},"own_capabilities":{"description":"List of channel capabilities of authenticated user","items":{"type":"string"},"title":"Own Capabilities","type":"array","x-stream-index":"025"},"team":{"description":"Team the channel belongs to (multi-tenant only)","title":"Team","type":"string","x-stream-index":"020"},"truncated_at":{"description":"Date of the latest truncation of the channel","format":"date-time","title":"Truncated At","type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"028"},"type":{"description":"Type of the channel","title":"Type","type":"string","x-stream-docs-page-id":"channel_features","x-stream-index":"004"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"009"}},"required":["id","type","cid","frozen","disabled","Custom"],"title":"Channel","type":"object"},"ChannelStateResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"hidden":{"type":"boolean","x-stream-index":"001.010"},"hide_messages_before":{"format":"date-time","type":"string","x-stream-index":"001.011"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"001.007"},"membership":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.008"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.002"},"pending_messages":{"items":{"$ref":"#/components/schemas/PendingMessage"},"type":"array","x-stream-index":"001.012"},"pinned_messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.003"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"001.006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"001.009"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.004"},"watchers":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.005"}},"required":["messages","pinned_messages","members","threads","duration"],"type":"object"},"ChannelStateResponseFields":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"hidden":{"description":"Whether this channel is hidden or not","title":"Hidden","type":"boolean","x-stream-index":"010"},"hide_messages_before":{"description":"Messages before this date are hidden from the user","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"011"},"members":{"description":"List of channel members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"007"},"membership":{"$ref":"#/components/schemas/ChannelMember","description":"Current user membership object","title":"Membership","x-stream-index":"008"},"messages":{"description":"List of channel messages","items":{"$ref":"#/components/schemas/Message"},"title":"Message","type":"array","x-stream-index":"002"},"pending_messages":{"description":"Pending messages that this user has sent","items":{"$ref":"#/components/schemas/PendingMessage"},"title":"Pending messages","type":"array","x-stream-index":"012"},"pinned_messages":{"description":"List of pinned messages in the channel","items":{"$ref":"#/components/schemas/Message"},"title":"Pinned messages","type":"array","x-stream-docs-page-id":"pinned_messages","x-stream-index":"003"},"read":{"description":"List of read states","items":{"$ref":"#/components/schemas/Read"},"title":"Read","type":"array","x-stream-index":"006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"009"},"watcher_count":{"description":"Number of channel watchers","format":"int32","title":"Watcher count","type":"integer","x-stream-index":"004"},"watchers":{"description":"List of user who is watching the channel","items":{"$ref":"#/components/schemas/UserObject"},"title":"Watchers","type":"array","x-stream-index":"005"}},"required":["messages","pinned_messages","members","threads"],"type":"object"},"ChannelStopWatchingRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"001.003"}},"type":"object"},"ChannelTruncatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.004"},"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"channel.truncated","type":"string","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ChannelTruncatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelUnFrozenEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.unfrozen","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelUnFrozenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelUpdatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"004.004"},"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"channel.updated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelVisibleEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"type":{"default":"channel.visible","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ChannelVisibleEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelsResponse":{"nullable":true,"properties":{"channels":{"description":"List of channels","items":{"$ref":"#/components/schemas/ChannelStateResponseFields"},"title":"Channels","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channels","duration"],"title":"Channels list","type":"object"},"Command":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","title":"Arguments","type":"string","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"001"},"description":{"description":"Description, shown in commands auto-completion","title":"Description","type":"string","x-stream-index":"005"},"name":{"description":"Unique command name","title":"Name","type":"string","x-stream-index":"004"},"set":{"description":"Set name used for grouping commands","title":"Set","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"002"}},"required":["name","description","args","set"],"title":"Command","type":"object"},"Config":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConnectRequest":{"properties":{"device":{"$ref":"#/components/schemas/DeviceFields","x-stream-index":"001.002"},"user_details":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["user_details"],"type":"object"},"CreateCallRequest":{"nullable":true,"properties":{"id":{"type":"string","x-stream-index":"004"},"options":{"type":"object","x-stream-index":"005"},"type":{"enum":["audio","video"],"type":"string","x-stream-index":"003"}},"required":["type","id"],"type":"object"},"CreateCallResponse":{"nullable":true,"properties":{"agora_app_id":{"type":"string","x-stream-index":"002.003"},"agora_uid":{"format":"int32","type":"integer","x-stream-index":"002.002"},"call":{"$ref":"#/components/schemas/Call","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"token":{"type":"string","x-stream-index":"002.001"}},"required":["token","duration"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"DataDogInfo":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"required":["api_key","site","enabled"],"type":"object"},"DeleteChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteChannelsRequest":{"nullable":true,"properties":{"cids":{"description":"All channels that should be deleted","items":{"type":"string"},"maximum":100,"minimum":1,"title":"Channels CID","type":"array","x-stream-index":"001"},"hard_delete":{"description":"Specify if channels and all ressources should be hard deleted","title":"Hard delete","type":"boolean","x-stream-index":"002"}},"type":"object"},"DeleteChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"result":{"additionalProperties":{"$ref":"#/components/schemas/DeleteChannelsResult"},"type":"object","x-stream-index":"001"},"task_id":{"type":"string","x-stream-index":"002"}},"required":["duration"],"type":"object"},"DeleteChannelsResult":{"nullable":true,"properties":{"error":{"type":"string","x-stream-index":"003"},"status":{"type":"string","x-stream-index":"002"}},"required":["status"],"type":"object"},"Device":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"disabled":{"type":"boolean","x-stream-index":"002.003"},"disabled_reason":{"type":"string","x-stream-index":"002.004"},"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"002.001.004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"002.001.001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"002.001.003"},"user_id":{"type":"string","x-stream-index":"004"},"voip":{"type":"boolean","x-stream-index":"002.001.005"}},"required":["push_provider","id","created_at","user_id"],"type":"object"},"DeviceFields":{"properties":{"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"003"},"voip":{"type":"boolean","x-stream-index":"005"}},"required":["push_provider","id"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventRequest":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"001"}},"required":["type"],"type":"object"},"EventResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/WSEvent","x-stream-index":"001"}},"required":["event","duration"],"type":"object"},"Field":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"required":["title","value","short"],"type":"object"},"FieldRequest":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"type":"object"},"FileDeleteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"FileUploadConfig":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"required":["allowed_file_extensions","blocked_file_extensions","allowed_mime_types","blocked_mime_types","size_limit"],"type":"object"},"FileUploadRequest":{"nullable":true,"properties":{"file":{"description":"file field","title":"File","type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","description":"user for the request **server side only**","title":"User","x-stream-index":"003"}},"type":"object"},"FileUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"003"}},"required":["duration"],"type":"object"},"FirebaseConfigFields":{"properties":{"apn_template":{"type":"string","x-stream-index":"004"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"003"},"enabled":{"type":"boolean","x-stream-index":"001"},"notification_template":{"type":"string","x-stream-index":"002"},"server_key":{"type":"string","x-stream-index":"005"}},"required":["enabled","notification_template","data_template","apn_template"],"type":"object"},"Flag":{"description":"Contains information about flagged user or message","properties":{"approved_at":{"description":"Date of the approval","format":"date-time","title":"Approved at","type":"string","x-stream-index":"015"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"created_by_automod":{"type":"boolean","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"022"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"021"},"reason":{"type":"string","x-stream-index":"020"},"rejected_at":{"description":"Date of the rejection","format":"date-time","title":"Rejected at","type":"string","x-stream-index":"016"},"reviewed_at":{"description":"Date of the review","format":"date-time","title":"Reviewed at","type":"string","x-stream-index":"013"},"target_message":{"$ref":"#/components/schemas/Message","x-stream-index":"008"},"target_message_id":{"description":"ID of flagged message","title":"Target Message ID","type":"string","x-stream-index":"007"},"target_user":{"$ref":"#/components/schemas/UserObject","description":"Flagged user","title":"User","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","description":"User who flagged a message or a user","title":"User","x-stream-index":"006"}},"required":["created_by_automod","created_at","updated_at"],"title":"Flag","type":"object"},"FlagDetails":{"properties":{"Extra":{"type":"object","writeOnly":true,"x-stream-index":"002"},"automod":{"$ref":"#/components/schemas/AutomodDetails","x-stream-index":"001"},"original_text":{"type":"string","x-stream-index":"003"}},"required":["Extra","original_text"],"type":"object"},"FlagFeedback":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"labels":{"items":{"$ref":"#/components/schemas/Label"},"type":"array","x-stream-index":"006"},"message_id":{"type":"string","x-stream-index":"004"}},"required":["message_id","created_at","labels"],"type":"object"},"FlagMessageDetails":{"properties":{"pin_changed":{"type":"boolean","x-stream-index":"002"},"should_enrich":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"004"},"updated_by_id":{"type":"string","x-stream-index":"001"}},"type":"object"},"FlagRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"004"},"reason":{"maxLength":255,"type":"string","x-stream-index":"003"},"target_message_id":{"description":"ID of the message when reporting a message","title":"Target Message ID","type":"string","x-stream-index":"001"}},"type":"object"},"FlagResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flag":{"$ref":"#/components/schemas/Flag","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GeofenceResponse":{"nullable":true,"properties":{"country_codes":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"}},"required":["name"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GetApplicationResponse":{"nullable":true,"properties":{"app":{"$ref":"#/components/schemas/App","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["app","duration"],"type":"object"},"GetCallTokenRequest":{"nullable":true,"type":"object"},"GetCallTokenResponse":{"nullable":true,"properties":{"agora_app_id":{"type":"string","x-stream-index":"001.003"},"agora_uid":{"format":"int32","type":"integer","x-stream-index":"001.002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"token":{"type":"string","x-stream-index":"001.001"}},"required":["token","duration"],"type":"object"},"GetManyMessagesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetOGResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.018"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"001.015"},"asset_url":{"description":"URL of detected video or audio","title":"Image URL","type":"string","x-stream-index":"001.017"},"author_icon":{"type":"string","x-stream-index":"001.007"},"author_link":{"description":"og:site","title":"Author Link","type":"string","x-stream-index":"001.006"},"author_name":{"description":"og:site_name","title":"Author Name","type":"string","x-stream-index":"001.005"},"color":{"type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"002.001"},"fallback":{"type":"string","x-stream-index":"001.002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"001.016"},"footer":{"type":"string","x-stream-index":"001.013"},"footer_icon":{"type":"string","x-stream-index":"001.014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"001.019"},"image_url":{"description":"URL of detected image","title":"Image URL","type":"string","x-stream-index":"001.011"},"og_scrape_url":{"description":"extracted url from the text","title":"OG Scrape URL","type":"string","x-stream-index":"001.020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"001.022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"001.021"},"pretext":{"type":"string","x-stream-index":"001.004"},"text":{"description":"og:description","title":"Text","type":"string","x-stream-index":"001.010"},"thumb_url":{"description":"URL of detected thumb image","title":"Image URL","type":"string","x-stream-index":"001.012"},"title":{"description":"og:title","title":"Title","type":"string","x-stream-index":"001.008"},"title_link":{"description":"og:url","title":"Title Link","type":"string","x-stream-index":"001.009"},"type":{"description":"Attachment type, could be empty, image, audio or video","title":"Type","type":"string","x-stream-index":"001.001"}},"required":["Custom","duration"],"title":"Get OG Attachment","type":"object","x-stream-docs-page-id":"og"},"GetReactionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"reactions":{"description":"List of reactions","items":{"$ref":"#/components/schemas/Reaction"},"title":"Reactions","type":"array","x-stream-index":"001"}},"required":["reactions","duration"],"type":"object"},"GetRepliesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetThreadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadStateResponse","description":"Enriched thread state","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"GuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"GuestResponse":{"nullable":true,"properties":{"access_token":{"description":"Authentication token to use for guest user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","description":"Created user object","title":"User","x-stream-index":"001"}},"required":["access_token","duration"],"type":"object"},"HLSSettings":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks"],"type":"object"},"HMSCall":{"properties":{"room_id":{"type":"string","x-stream-index":"001"},"room_name":{"type":"string","x-stream-index":"002"}},"required":["room_id","room_name"],"type":"object"},"HealthCheckEvent":{"properties":{"cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"002"},"type":{"default":"health.check","type":"string","x-stream-index":"003.001"}},"required":["cid","type","created_at"],"title":"HealthCheckEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"HideChannelRequest":{"nullable":true,"properties":{"clear_history":{"description":"Whether to clear message history of the channel or not","title":"Clear history","type":"boolean","x-stream-index":"001"}},"type":"object"},"HideChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"HuaweiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"id":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"ImageData":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"required":["url","width","height","size","frames"],"type":"object"},"ImageDataRequest":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageSize":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"required":["crop","resize","height","width"],"title":"Image size configuration","type":"object"},"ImageSizeRequest":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"title":"Image size configuration","type":"object"},"ImageUploadRequest":{"nullable":true,"properties":{"file":{"type":"string","x-stream-index":"001.002"},"upload_sizes":{"description":"field with JSON-encoded array of image size configurations","items":{"$ref":"#/components/schemas/ImageSizeRequest"},"title":"Upload sizes","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","x-stream-index":"001.003"}},"type":"object"},"ImageUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"001.002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"001.003"},"upload_sizes":{"items":{"$ref":"#/components/schemas/ImageSize"},"type":"array","x-stream-index":"002"}},"required":["duration"],"type":"object"},"Images":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageData","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageData","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageData","x-stream-index":"001"}},"required":["original","fixed_height","fixed_height_still","fixed_height_downsampled","fixed_width","fixed_width_still","fixed_width_downsampled"],"type":"object"},"ImagesRequest":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"001"}},"type":"object"},"Label":{"properties":{"harm_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"phrase_list_ids":{"items":{"format":"int32","type":"integer"},"type":"array","x-stream-index":"002"}},"required":["name"],"type":"object"},"LabelThresholds":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"MarkChannelsReadRequest":{"nullable":true,"type":"object"},"MarkReadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message that is considered last read by client","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Optional Thread ID to specifically mark a given thread as read","title":"Thread ID","type":"string","x-stream-index":"004"}},"type":"object"},"MarkReadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/MessageReadEvent","description":"Mark read event","title":"Event","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MarkUnreadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message from where the channel is marked unread","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Mark a thread unread, specify both the thread and message id","title":"Thread ID","type":"string","x-stream-index":"003"}},"required":["message_id","thread_id"],"type":"object"},"MemberAddedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"member.added","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberAddedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MemberRemovedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"type":{"default":"member.removed","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberRemovedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MemberUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"member.updated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MembersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"members":{"description":"List of found members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"001"}},"required":["members","duration"],"type":"object"},"Message":{"description":"Represents any chat message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"031"},"attachments":{"description":"Array of message attachments","items":{"$ref":"#/components/schemas/Attachment"},"title":"Message attachments","type":"array","x-stream-docs-page-id":"message_format#attachment-format","x-stream-index":"011"},"before_message_send_failed":{"description":"Whether `before_message_send webhook` failed or not. Field is only accessible in push webhook","title":"Before Message Send Failed","type":"boolean","x-stream-docs-page-id":"before_message_send_webhook","x-stream-index":"043"},"cid":{"description":"Channel unique identifier in \u003ctype\u003e:\u003cid\u003e format","title":"Channel CID","type":"string","x-stream-index":"026"},"command":{"description":"Contains provided slash command","title":"Command","type":"string","x-stream-docs-page-id":"custom_commands_webhook","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"028"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"021"},"html":{"description":"Contains HTML markup of the message. Can only be set when using server-side API","title":"HTML content","type":"string","x-stream-index":"007"},"i18n":{"additionalProperties":{"type":"string"},"description":"Object with translations. Key `language` contains the original language key. Other keys contain translations","title":"Internationalization info","type":"object","x-stream-docs-page-id":"translation","x-stream-index":"041"},"id":{"description":"Message ID is unique string identifier of the message","title":"ID","type":"string","x-stream-index":"002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Contains image moderation information","title":"Image moderation labels","type":"object","x-stream-index":"037"},"latest_reactions":{"description":"List of 10 latest reactions to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Latest reactions","type":"array","x-stream-index":"012"},"mentioned_users":{"description":"List of mentioned users","items":{"$ref":"#/components/schemas/UserObject"},"title":"Mentioned Users","type":"array","x-stream-index":"040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"049"},"mml":{"description":"Should be empty if `text` is provided. Can only be set when using server-side API","title":"Messaging Markup Language","type":"string","x-stream-docs-page-id":"mml_overview","x-stream-index":"005"},"own_reactions":{"description":"List of 10 latest reactions of authenticated user to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Own reactions","type":"array","x-stream-index":"013"},"parent_id":{"description":"ID of parent message (thread)","title":"Parent message ID","type":"string","x-stream-docs-page-id":"threads","x-stream-index":"017"},"pin_expires":{"description":"Date when pinned message expires","format":"date-time","title":"Pin expiration date","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"048"},"pinned":{"description":"Whether message is pinned or not","title":"Pinned","type":"boolean","x-stream-docs-page-id":"pinned_messages","x-stream-index":"044"},"pinned_at":{"description":"Date when message got pinned","format":"date-time","title":"Pinned at","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","description":"Contains user who pinned the message","title":"Pinned by","x-stream-docs-page-id":"pinned_messages","x-stream-index":"047"},"quoted_message":{"$ref":"#/components/schemas/Message","description":"Contains quoted message","title":"Quoted message","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"023"},"quoted_message_id":{"title":"ID of quoted message","type":"string","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing number of reactions of each type. Key: reaction type (string), value: number of reactions (int)","title":"Reaction counts","type":"object","x-stream-index":"014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing scores of reactions of each type. Key: reaction type (string), value: total score of reactions (int)","title":"Reaction scores","type":"object","x-stream-index":"015"},"reply_count":{"description":"Number of replies to this message","format":"int32","title":"Reply count","type":"integer","x-stream-index":"020"},"shadowed":{"description":"Whether the message was shadowed or not","title":"Shadowed","type":"boolean","x-stream-docs-page-id":"moderation#shadow-ban","x-stream-index":"033"},"show_in_channel":{"description":"Whether thread reply should be shown in the channel as well","title":"Show in channel","type":"boolean","x-stream-docs-page-id":"threads","x-stream-index":"019"},"silent":{"description":"Whether message is silent or not","title":"Silent","type":"boolean","x-stream-index":"042"},"text":{"description":"Text of the message. Should be empty if `mml` is provided","title":"Text","type":"string","x-stream-index":"004"},"thread_participants":{"description":"List of users who participate in thread","items":{"$ref":"#/components/schemas/UserObject"},"title":"Thread participants","type":"array","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"025"},"type":{"description":"Contains type of the message","enum":["regular","ephemeral","error","reply","system","deleted"],"title":"Message Type","type":"string","x-stream-docs-page-id":"message_format#message-types","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"029"},"user":{"$ref":"#/components/schemas/UserObject","description":"Sender of the message. Required when using server-side API","title":"User object","x-stream-index":"010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned"],"title":"Message","type":"object","x-stream-docs-page-id":"send_message"},"MessageActionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"form_data":{"additionalProperties":{"type":"string"},"description":"ReadOnlyData to execute command with","title":"Form data","type":"object","x-stream-index":"002"}},"required":["form_data"],"type":"object"},"MessageChangeSet":{"properties":{"attachments":{"type":"boolean","x-stream-index":"005"},"custom":{"type":"boolean","x-stream-index":"001"},"html":{"type":"boolean","x-stream-index":"004"},"mentioned_user_ids":{"type":"boolean","x-stream-index":"006"},"mml":{"type":"boolean","x-stream-index":"003"},"pin":{"type":"boolean","x-stream-index":"009"},"quoted_message_id":{"type":"boolean","x-stream-index":"007"},"silent":{"type":"boolean","x-stream-index":"008"},"text":{"type":"boolean","x-stream-index":"002"}},"required":["custom","text","mml","html","attachments","mentioned_user_ids","quoted_message_id","silent","pin"],"type":"object"},"MessageDeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"hard_delete":{"type":"boolean","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.deleted","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["hard_delete","cid","channel_id","channel_type","type","created_at"],"title":"MessageDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageFlag":{"nullable":true,"properties":{"approved_at":{"format":"date-time","type":"string","x-stream-index":"013"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by_automod":{"type":"boolean","x-stream-index":"001"},"custom":{"type":"object","x-stream-index":"008"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"006"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"005"},"moderation_feedback":{"$ref":"#/components/schemas/FlagFeedback","x-stream-index":"003"},"moderation_result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"002"},"reason":{"type":"string","x-stream-index":"007"},"rejected_at":{"format":"date-time","type":"string","x-stream-index":"014"},"reviewed_at":{"format":"date-time","type":"string","x-stream-index":"011"},"reviewed_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004"}},"required":["created_by_automod","created_at","updated_at"],"type":"object"},"MessageModerationResult":{"properties":{"action":{"type":"string","x-stream-index":"004"},"ai_moderation_response":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"009"},"blocked_word":{"type":"string","x-stream-index":"006"},"blocklist_name":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"012"},"message_id":{"type":"string","x-stream-index":"003"},"moderated_by":{"type":"string","x-stream-index":"005"},"moderation_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"013"},"user_bad_karma":{"type":"boolean","x-stream-index":"011"},"user_karma":{"format":"float","type":"number","x-stream-index":"010"}},"required":["message_id","action","user_karma","user_bad_karma","created_at","updated_at"],"type":"object"},"MessageNewEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"006.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.new","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"002.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"MessageNewEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessagePaginationParamsRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"008"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"007"},"created_at_around":{"format":"date-time","type":"string","x-stream-index":"012"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"010"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"009"},"id_around":{"type":"string","x-stream-index":"011"},"id_gt":{"type":"string","x-stream-index":"004"},"id_gte":{"type":"string","x-stream-index":"003"},"id_lt":{"type":"string","x-stream-index":"006"},"id_lte":{"type":"string","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"MessageReadEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"last_read_message_id":{"type":"string","x-stream-index":"006"},"team":{"type":"string","x-stream-index":"004.001"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"default":"message.read","type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"MessageReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageRequest":{"properties":{"attachments":{"items":{"$ref":"#/components/schemas/AttachmentRequest"},"maximum":30,"type":"array","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"007"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"mentioned_users":{"items":{"type":"string"},"maximum":25,"type":"array","x-stream-index":"008"},"parent_id":{"type":"string","x-stream-index":"005"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"015"},"pinned":{"type":"boolean","x-stream-index":"013"},"pinned_at":{"format":"date-time","nullable":true,"type":"string","x-stream-index":"014"},"quoted_message_id":{"type":"string","x-stream-index":"009"},"show_in_channel":{"type":"boolean","x-stream-index":"006"},"silent":{"type":"boolean","x-stream-index":"012"},"text":{"type":"string","x-stream-index":"002"},"type":{"enum":["''regular","system"],"type":"string","x-stream-index":"011"}},"required":["attachments"],"type":"object"},"MessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MessageUndeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.undeleted","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MessageUndeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageUpdate":{"properties":{"change_set":{"$ref":"#/components/schemas/MessageChangeSet","x-stream-index":"002"},"old_text":{"type":"string","x-stream-index":"001"}},"type":"object"},"MessageUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.updated","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MessageUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageWithPendingMetadataResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"description":"Metadata attached to a message while it is pending","title":"Pending message metadata","type":"object","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ModerationResponse":{"properties":{"action":{"type":"string","x-stream-index":"004"},"explicit":{"format":"float","type":"number","x-stream-index":"002"},"spam":{"format":"float","type":"number","x-stream-index":"003"},"toxic":{"format":"float","type":"number","x-stream-index":"001"}},"required":["toxic","explicit","spam","action","automod_response"],"type":"object"},"MuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"003"}},"required":["channel_cids"],"type":"object"},"MuteChannelResponse":{"nullable":true,"properties":{"channel_mute":{"$ref":"#/components/schemas/ChannelMute","description":"Object with channel mute (if one channel was muted)","title":"Channel mute","x-stream-index":"001"},"channel_mutes":{"description":"Object with mutes (if multiple channels were muted)","items":{"$ref":"#/components/schemas/ChannelMute"},"title":"Channel mutes","type":"array","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"004.001"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"003"}},"required":["target_ids"],"type":"object"},"MuteUserResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"mute":{"$ref":"#/components/schemas/UserMute","description":"Object with user mute (if one user was muted)","title":"Mute","x-stream-index":"001"},"mutes":{"description":"Object with mutes (if multiple users were muted)","items":{"$ref":"#/components/schemas/UserMute"},"title":"Mutes","type":"array","x-stream-index":"002"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"NotificationAddedToChannelEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"type":{"default":"notification.added_to_channel","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationAddedToChannelEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelDeletedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"team":{"type":"string","x-stream-index":"001.001"},"type":{"default":"notification.channel_deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationChannelDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelMutesUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"001"},"type":{"default":"notification.channel_mutes_updated","type":"string","x-stream-index":"002.001"}},"required":["me","type","created_at"],"title":"NotificationChannelMutesUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelTruncatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"notification.channel_truncated","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationChannelTruncatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInviteAcceptedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invite_accepted","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInviteAcceptedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInviteRejectedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invite_rejected","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInviteRejectedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInvitedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invited","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInvitedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMarkReadEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"team":{"type":"string","x-stream-index":"002.001"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"006"},"type":{"default":"notification.mark_read","type":"string","x-stream-index":"001.001"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"007"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"005"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"008"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type","unread_count","total_unread_count","unread_channels","unread_threads"],"title":"NotificationMarkReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMarkUnreadEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"first_unread_message_id":{"type":"string","x-stream-index":"005"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"006"},"last_read_message_id":{"type":"string","x-stream-index":"012"},"team":{"type":"string","x-stream-index":"002.001"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"009"},"type":{"default":"notification.mark_unread","type":"string","x-stream-index":"001.001"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"010"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"008"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"007"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type","first_unread_message_id","last_read_at","unread_messages","unread_count","total_unread_count","unread_channels","unread_threads"],"title":"NotificationMarkUnreadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMutesUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"001"},"type":{"default":"notification.mutes_updated","type":"string","x-stream-index":"002.001"}},"required":["me","type","created_at"],"title":"NotificationMutesUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationNewMessageEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"004.004"},"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"notification.message_new","type":"string","x-stream-index":"003.001"}},"required":["message","type","created_at","cid","channel_id","channel_type"],"title":"NotificationNewMessageEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationRemovedFromChannelEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.removed_from_channel","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationRemovedFromChannelEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"OnlyUserIDRequest":{"properties":{"id":{"type":"string","x-stream-index":"001"}},"required":["id"],"type":"object"},"OwnUser":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"banned":{"type":"boolean","x-stream-index":"014"},"channel_mutes":{"items":{"$ref":"#/components/schemas/ChannelMute"},"type":"array","x-stream-index":"026"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"deactivated_at":{"format":"date-time","type":"string","x-stream-index":"012"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"type":"array","x-stream-index":"024"},"id":{"type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"type":"string","x-stream-index":"031"},"last_active":{"format":"date-time","type":"string","x-stream-index":"010"},"latest_hidden_channels":{"items":{"type":"string"},"type":"array","x-stream-index":"033"},"mutes":{"items":{"$ref":"#/components/schemas/UserMute"},"type":"array","x-stream-index":"025"},"online":{"type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"role":{"type":"string","x-stream-index":"004"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"032"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"028"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"029"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"027"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"030"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","created_at","updated_at","banned","online","devices","mutes","channel_mutes","unread_count","total_unread_count","unread_channels","unread_threads","language"],"type":"object"},"PaginationParamsRequest":{"properties":{"id_gt":{"format":"int32","type":"integer","x-stream-index":"004"},"id_gte":{"format":"int32","type":"integer","x-stream-index":"003"},"id_lt":{"format":"int32","type":"integer","x-stream-index":"006"},"id_lte":{"format":"int32","type":"integer","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"PendingMessage":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/Channel","x-stream-index":"007"},"message":{"$ref":"#/components/schemas/Message","description":"The message","title":"Message","x-stream-index":"009"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional data attached to the pending message. This data is discarded once the pending message is committed.","title":"Metadata","type":"object","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"type":"object"},"Policy":{"properties":{"action":{"type":"integer","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"name":{"type":"string","x-stream-index":"004"},"owner":{"type":"boolean","x-stream-index":"008"},"priority":{"format":"int32","type":"integer","x-stream-index":"009"},"resources":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"}},"required":["name","resources","roles","action","owner","priority","created_at","updated_at"],"type":"object"},"PushNotificationFields":{"properties":{"apn":{"$ref":"#/components/schemas/APNConfigFields","x-stream-index":"002"},"firebase":{"$ref":"#/components/schemas/FirebaseConfigFields","x-stream-index":"003"},"huawei":{"$ref":"#/components/schemas/HuaweiConfigFields","x-stream-index":"004"},"offline_only":{"type":"boolean","x-stream-index":"001.002"},"providers":{"items":{"$ref":"#/components/schemas/PushProvider"},"type":"array","x-stream-index":"006"},"version":{"type":"string","x-stream-index":"001.001"},"xiaomi":{"$ref":"#/components/schemas/XiaomiConfigFields","x-stream-index":"005"}},"required":["version","offline_only","apn","firebase","huawei","xiaomi"],"type":"object"},"PushNotificationSettings":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushNotificationSettingsRequest":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushProvider":{"nullable":true,"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name","type","created_at","updated_at"],"type":"object"},"QueryBannedUsersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"003.006"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.005"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"003.008"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.007"},"exclude_expired_bans":{"type":"boolean","x-stream-index":"006"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"type":"integer","x-stream-index":"004"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"005"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"type":"array","x-stream-index":"002"}},"required":["filter_conditions"],"type":"object"},"QueryBannedUsersResponse":{"nullable":true,"properties":{"bans":{"items":{"$ref":"#/components/schemas/BanResponse"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["bans","duration"],"type":"object"},"QueryChannelsRequest":{"nullable":true,"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"011.003"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"description":"Number of channels to limit","format":"int32","title":"Limit","type":"integer","x-stream-index":"008"},"member_limit":{"description":"Number of members to limit","format":"int32","maximum":100,"minimum":0,"title":"Member limit","type":"integer","x-stream-index":"007"},"message_limit":{"description":"Number of messages to limit","format":"int32","minimum":0,"title":"Message limit","type":"integer","x-stream-index":"006"},"offset":{"description":"Channel pagination offset","format":"int32","title":"Offset","type":"integer","x-stream-index":"009"},"presence":{"title":"Presence","type":"boolean","x-stream-index":"005"},"sort":{"description":"List of sort parameters","items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"state":{"description":"Whether to update channel state or not","title":"State","type":"boolean","x-stream-index":"004"},"watch":{"description":"Whether to start watching found channels or not","title":"Watch","type":"boolean","x-stream-index":"003"}},"title":"Query Channels Request","type":"object","x-stream-docs-page-id":"query_channels"},"QueryMembersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"006.010"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.009"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"006.012"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.011"},"filter_conditions":{"description":"Filter to apply to members","title":"Filter conditions","type":"object","x-stream-index":"004"},"id":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","x-stream-index":"002"},"limit":{"description":"Number of records to return","format":"int32","maximum":300,"minimum":0,"title":"Limit","type":"integer","x-stream-index":"006.003"},"members":{"description":"List of members to search in distinct channels","items":{"$ref":"#/components/schemas/ChannelMember"},"maximum":100,"title":"Members","type":"array","x-stream-index":"003"},"offset":{"description":"Number of records to offset","format":"int32","maximum":10000,"title":"Offset","type":"integer","x-stream-index":"006.004"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"title":"Sort","type":"array","x-stream-index":"005"},"type":{"description":"Channel type to interact with","maxLength":64,"title":"Channel type","type":"string","x-stream-index":"001"},"user_id_gt":{"type":"string","x-stream-index":"006.006"},"user_id_gte":{"type":"string","x-stream-index":"006.005"},"user_id_lt":{"type":"string","x-stream-index":"006.008"},"user_id_lte":{"type":"string","x-stream-index":"006.007"}},"required":["type","filter_conditions"],"type":"object"},"QueryMessageFlagsRequest":{"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"minimum":0,"type":"integer","x-stream-index":"003.003"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"003.004"},"show_deleted_messages":{"type":"boolean","x-stream-index":"002"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"type":"array","x-stream-index":"003.005"}},"type":"object"},"QueryMessageFlagsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flags":{"items":{"$ref":"#/components/schemas/MessageFlag"},"type":"array","x-stream-index":"001"}},"required":["flags","duration"],"type":"object"},"QueryThreadsRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"participant_limit":{"description":"Limit the number of participants returned per each thread","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","x-stream-index":"004"},"prev":{"type":"string","x-stream-index":"005.003"},"reply_limit":{"description":"Limit the number of replies returned per each thread","format":"int32","maximum":10,"minimum":0,"title":"Reply limit","type":"integer","x-stream-index":"003"},"watch":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryThreadsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"threads":{"description":"List of enriched thread states","items":{"$ref":"#/components/schemas/ThreadStateResponse"},"title":"Threads","type":"array","x-stream-index":"001"}},"required":["threads","duration"],"type":"object"},"QueryUsersRequest":{"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"007.003"},"filter_conditions":{"description":"User filters","title":"Filter conditions","type":"object","x-stream-docs-page-id":"query_users","x-stream-index":"001"},"id_gt":{"type":"string","x-stream-index":"005.006"},"id_gte":{"type":"string","x-stream-index":"005.005"},"id_lt":{"type":"string","x-stream-index":"005.008"},"id_lte":{"type":"string","x-stream-index":"005.007"},"include_deactivated_users":{"type":"boolean","x-stream-index":"004"},"limit":{"format":"int32","maximum":100,"minimum":0,"type":"integer","x-stream-index":"005.003"},"offset":{"format":"int32","maximum":1000,"type":"integer","x-stream-index":"005.004"},"presence":{"description":"Request user presence status","title":"Presence","type":"boolean","x-stream-index":"003"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"}},"required":["filter_conditions"],"type":"object"},"Reaction":{"description":"Represents user reaction to a message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"008"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["message_id","type","score","created_at","updated_at","Custom"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionDeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"reaction.deleted","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ReactionDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ReactionNewEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"reaction.new","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ReactionNewEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ReactionRemovalResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionRequest":{"description":"Represents user reaction to a message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["type"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"type":{"default":"reaction.updated","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["message","reaction","cid","channel_id","channel_type","type","created_at"],"title":"ReactionUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Read":{"nullable":true,"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"004"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["last_read","unread_messages"],"type":"object"},"RecordSettings":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"SearchRequest":{"properties":{"filter_conditions":{"description":"Channel filter conditions","maximum":100,"minimum":1,"title":"Channel filter","type":"object","x-stream-docs-page-id":"query_channels","x-stream-index":"002"},"limit":{"description":"Number of messages to return","format":"int32","title":"Limit","type":"integer","x-stream-index":"004"},"message_filter_conditions":{"description":"Message filter conditions","title":"Message filter","type":"object","x-stream-index":"003"},"next":{"description":"Pagination parameter. Cannot be used with non-zero offset.","title":"Next","type":"string","x-stream-index":"007"},"offset":{"description":"Pagination offset. Cannot be used with sort or next.","format":"int32","title":"Offset","type":"integer","x-stream-index":"005"},"query":{"description":"Search phrase","title":"Query","type":"string","x-stream-index":"001"},"sort":{"description":"Sort parameters. Cannot be used with non-zero offset","items":{"$ref":"#/components/schemas/SortParam"},"title":"Sort","type":"array","x-stream-index":"006"}},"required":["filter_conditions"],"type":"object"},"SearchResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"next":{"description":"Value to pass to the next search query in order to paginate","title":"Next","type":"string","x-stream-index":"003"},"previous":{"description":"Value that points to the previous page. Pass as the next value in a search query to paginate backwards","title":"Previous","type":"string","x-stream-index":"004"},"results":{"description":"Search results","items":{"$ref":"#/components/schemas/SearchResult"},"title":"Results","type":"array","x-stream-index":"001"},"results_warning":{"$ref":"#/components/schemas/SearchWarning","description":"Warning about the search results","title":"Results Warning","x-stream-index":"002"}},"required":["results","duration"],"type":"object"},"SearchResult":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/SearchResultMessage","description":"Found message","title":"Message","x-stream-index":"001"}},"type":"object"},"SearchResultMessage":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.031"},"attachments":{"items":{"$ref":"#/components/schemas/Attachment"},"type":"array","x-stream-index":"001.011"},"before_message_send_failed":{"type":"boolean","x-stream-index":"001.043"},"channel":{"$ref":"#/components/schemas/ChannelResponse","description":"Channel object","title":"Channel","x-stream-index":"002"},"cid":{"type":"string","x-stream-index":"001.026"},"command":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.028"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"001.021"},"html":{"type":"string","x-stream-index":"001.007"},"i18n":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"001.041"},"id":{"type":"string","x-stream-index":"001.002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.037"},"latest_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.012"},"mentioned_users":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"001.049"},"mml":{"type":"string","x-stream-index":"001.005"},"own_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.013"},"parent_id":{"type":"string","x-stream-index":"001.017"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"001.048"},"pinned":{"type":"boolean","x-stream-index":"001.044"},"pinned_at":{"format":"date-time","type":"string","x-stream-index":"001.045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.047"},"quoted_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.023"},"quoted_message_id":{"type":"string","x-stream-index":"001.022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.015"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.020"},"shadowed":{"type":"boolean","x-stream-index":"001.033"},"show_in_channel":{"type":"boolean","x-stream-index":"001.019"},"silent":{"type":"boolean","x-stream-index":"001.042"},"text":{"type":"string","x-stream-index":"001.004"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.025"},"type":{"type":"string","x-stream-index":"001.008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.029"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned"],"type":"object"},"SearchWarning":{"properties":{"channel_search_cids":{"description":"Channel CIDs for the searched channels","items":{"type":"string"},"title":"Channel Search CIDs","type":"array","x-stream-index":"004"},"channel_search_count":{"description":"Number of channels searched","format":"int32","title":"Channel Search Count","type":"integer","x-stream-index":"003"},"warning_code":{"description":"Code corresponding to the warning","format":"int32","title":"Warning Code","type":"integer","x-stream-index":"002"},"warning_description":{"description":"Description of the warning","title":"Warning Description","type":"string","x-stream-index":"001"}},"required":["warning_description","warning_code"],"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/EventRequest","x-stream-index":"001"}},"required":["event"],"type":"object"},"SendMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"SendMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"enforce_unique":{"description":"Whether to replace all existing user reactions","title":"Enforce unique","type":"boolean","x-stream-index":"003"},"reaction":{"$ref":"#/components/schemas/ReactionRequest","x-stream-index":"002"},"skip_push":{"description":"Skips any mobile push notifications","title":"Skip push","type":"boolean","x-stream-index":"004"}},"required":["reaction"],"type":"object"},"ShowChannelRequest":{"nullable":true,"type":"object"},"ShowChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParam":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StopWatchingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SyncRequest":{"nullable":true,"properties":{"channel_cids":{"description":"List of channel CIDs to sync","items":{"type":"string"},"maximum":255,"minimum":1,"title":"Channel CIDs","type":"array","x-stream-index":"001"},"connection_id":{"type":"string","x-stream-index":"006.003"},"last_sync_at":{"description":"Date from which synchronization should happen","format":"date-time","title":"Last sync at","type":"string","x-stream-index":"002"},"watch":{"description":"If set to true this will start watching requested and newly added channels that user has access to. If error occurred with this option enabled and it is not an input error - channels will still be watched.","title":"Watch synced channels","type":"boolean","x-stream-index":"004"},"with_inaccessible_cids":{"description":"If set to true this will add 'inaccessible_cids' to response type","title":"With inaccessible CIDs","type":"boolean","x-stream-index":"003"}},"required":["last_sync_at"],"type":"object"},"SyncResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"events":{"description":"List of events","items":{"$ref":"#/components/schemas/WSEvent"},"title":"Events","type":"array","x-stream-index":"001"},"inaccessible_cids":{"description":"List of CIDs that user can't access","items":{"type":"string"},"title":"Inaccessible CIDs","type":"array","x-stream-index":"002"}},"required":["events","duration"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"Thread":{"description":"Represents a conversation thread linked to a specific message in a channel.","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"012"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"010"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom"],"title":"Thread","type":"object"},"ThreadParticipant":{"description":"Represents a user that is participating in a thread.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"app_pk":{"format":"int32","readOnly":true,"type":"integer","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"007"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"009"},"left_thread_at":{"description":"Left Thread At is the time when the user left the thread","format":"date-time","title":"Left Thread At","type":"string","x-stream-index":"008"},"thread_id":{"description":"Thead ID is unique string identifier of the thread","title":"ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserObject","description":"User is the user object","title":"User","x-stream-index":"006"},"user_id":{"description":"User ID is unique string identifier of the user","title":"User ID","type":"string","x-stream-index":"005"}},"required":["app_pk","channel_cid","created_at","last_read_at","Custom"],"title":"ThreadParticipant","type":"object"},"ThreadResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"created_by_user_id":{"type":"string","x-stream-index":"005"},"custom":{"type":"object","x-stream-index":"015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"010"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"004"},"parent_message_id":{"type":"string","x-stream-index":"003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"008"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"009"},"title":{"type":"string","x-stream-index":"014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom"],"type":"object"},"ThreadState":{"description":"Represents a conversation thread linked to a specific message in a channel.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"001.004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"001.003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"001.013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"001.008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"001.015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"001.012"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"001.006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"001.005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"001.010"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"001.009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"001.016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"001.014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom","latest_replies"],"title":"Thread","type":"object"},"ThreadStateResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.002"},"channel_cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.006"},"created_by_user_id":{"type":"string","x-stream-index":"001.005"},"custom":{"type":"object","x-stream-index":"001.015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"001.010"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.004"},"parent_message_id":{"type":"string","x-stream-index":"001.003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"001.008"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.009"},"title":{"type":"string","x-stream-index":"001.014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom","latest_replies"],"type":"object"},"ThreadUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"default":"thread.updated","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ThreadUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Thresholds":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranslateMessageRequest":{"nullable":true,"properties":{"language":{"description":"Language to translate message to","enum":["af","sq","am","ar","az","bn","bs","bg","zh","zh-TW","hr","cs","da","fa-AF","nl","en","et","fi","fr","fr-CA","ka","de","el","ha","he","hi","hu","id","it","ja","ko","lv","ms","no","fa","ps","pl","pt","ro","ru","sr","sk","sl","so","es","es-MX","sw","sv","tl","ta","th","tr","uk","ur","vi"],"title":"Language","type":"string","x-stream-index":"002"}},"required":["language"],"type":"object"},"TruncateChannelRequest":{"nullable":true,"properties":{"hard_delete":{"description":"Permanently delete channel data (messages, reactions, etc.)","title":"Hard delete","type":"boolean","x-stream-index":"002"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"004"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"005"},"truncated_at":{"description":"Truncate channel data up to `truncated_at`. The system message (if provided) creation time is always greater than `truncated_at`","format":"date-time","title":"Truncated at","type":"string","x-stream-index":"006"}},"type":"object"},"TruncateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"003"}},"required":["duration"],"type":"object"},"TypingStartEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"parent_id":{"type":"string","x-stream-index":"001"},"type":{"default":"typing.start","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"TypingStartEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"TypingStopEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"parent_id":{"type":"string","x-stream-index":"001"},"type":{"default":"typing.stop","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"TypingStopEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UnmuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"001.002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"001.003"}},"required":["channel_cids"],"type":"object"},"UnmuteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["duration"],"type":"object"},"UnmuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"001.002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"001.003"}},"required":["target_ids"],"type":"object"},"UnreadCountsChannel":{"properties":{"channel_id":{"type":"string","x-stream-index":"001"},"last_read":{"format":"date-time","type":"string","x-stream-index":"003"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["channel_id","unread_count","last_read"],"type":"object"},"UnreadCountsChannelType":{"properties":{"channel_count":{"format":"int32","type":"integer","x-stream-index":"002"},"channel_type":{"type":"string","x-stream-index":"001"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"003"}},"required":["channel_type","channel_count","unread_count"],"type":"object"},"UnreadCountsThread":{"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"003"},"parent_message_id":{"type":"string","x-stream-index":"004"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["unread_count","last_read","last_read_message_id","parent_message_id"],"type":"object"},"UpdateChannelPartialRequest":{"nullable":true,"properties":{"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["set","unset"],"type":"object"},"UpdateChannelPartialResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelRequest":{"nullable":true,"properties":{"accept_invite":{"description":"Set to `true` to accept the invite","title":"Accept invite","type":"boolean","x-stream-index":"008"},"add_members":{"description":"List of user IDs to add to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Add members","type":"array","x-stream-index":"001"},"add_moderators":{"description":"List of user IDs to make channel moderators","items":{"type":"string"},"maximum":100,"title":"Add moderators","type":"array","x-stream-index":"003"},"assign_roles":{"description":"List of channel member role assignments. If any specified user is not part of the channel, the request will fail","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Assign roles","type":"array","x-stream-index":"006"},"cooldown":{"description":"Sets cool down period for the channel in seconds","format":"int32","maximum":120,"minimum":0,"title":"Cool down","type":"integer","x-stream-index":"007"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"013.001"},"demote_moderators":{"description":"List of user IDs to take away moderators status from","items":{"type":"string"},"maximum":100,"title":"Demote moderators","type":"array","x-stream-index":"004"},"hide_history":{"description":"Set to `true` to hide channel's history when adding new members","title":"Hide history","type":"boolean","x-stream-index":"012"},"invites":{"description":"List of user IDs to invite to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Invites","type":"array","x-stream-index":"005"},"message":{"$ref":"#/components/schemas/MessageRequest","description":"Message to send to the chat when channel is successfully updated","title":"Message","x-stream-index":"010"},"reject_invite":{"description":"Set to `true` to reject the invite","title":"Reject invite","type":"boolean","x-stream-index":"009"},"remove_members":{"description":"List of user IDs to remove from the channel","items":{"type":"string"},"maximum":100,"title":"Remove members","type":"array","x-stream-index":"002"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"011"}},"required":["remove_members","add_moderators","demote_moderators"],"title":"Channel update request","type":"object","x-stream-docs-page-id":"channel_update"},"UpdateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"003"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateMessagePartialRequest":{"nullable":true,"properties":{"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"skip_enrich_url":{"type":"boolean","x-stream-index":"001"},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"}},"required":["set","unset"],"type":"object"},"UpdateMessagePartialResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"UpdateMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateThreadPartialRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"set":{"type":"object","x-stream-index":"004.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"004.002"}},"required":["set","unset"],"type":"object"},"UpdateThreadPartialResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadResponse","description":"Updated thread (not enriched)","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"UpdateUserPartialRequest":{"nullable":true,"properties":{"id":{"description":"User ID to update","title":"ID","type":"string","x-stream-index":"001"},"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["id","set","unset"],"type":"object"},"UpdateUsersRequest":{"nullable":true,"properties":{"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObjectRequest"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users"],"type":"object"},"UpdateUsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"membership_deletion_task_id":{"type":"string","x-stream-index":"002"},"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObject"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users","membership_deletion_task_id","duration"],"type":"object"},"UserBannedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"006.002"},"channel_type":{"type":"string","x-stream-index":"006.003"},"cid":{"type":"string","x-stream-index":"006.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008.002"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"},"expiration":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"type":{"default":"user.banned","type":"string","x-stream-index":"008.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"007.001"}},"required":["created_by","shadow","cid","channel_id","channel_type","type","created_at"],"title":"UserBannedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserDeactivatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"},"type":{"default":"user.deactivated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["created_by","type","created_at"],"title":"UserDeactivatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserDeletedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"delete_conversation_channels":{"type":"boolean","x-stream-index":"005"},"hard_delete":{"type":"boolean","x-stream-index":"003.001"},"mark_messages_deleted":{"type":"boolean","x-stream-index":"004"},"type":{"default":"user.deleted","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["type","created_at","hard_delete","mark_messages_deleted","delete_conversation_channels"],"title":"UserDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserMute":{"nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"target":{"$ref":"#/components/schemas/UserObject","description":"User who's muted","title":"Target","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"UserMutedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"target_user":{"type":"string","x-stream-index":"001"},"target_users":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"type":{"default":"user.muted","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at"],"title":"UserMutedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserObject":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"007"},"deactivated_at":{"description":"Date of deactivation","format":"date-time","readOnly":true,"title":"Deactivated at","type":"string","x-stream-index":"012"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","readOnly":true,"title":"Deleted at","type":"string","x-stream-index":"011"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"last_active":{"description":"Date of last activity","format":"date-time","readOnly":true,"title":"Last active","type":"string","x-stream-index":"010"},"online":{"description":"Whether a user online or not","readOnly":true,"title":"Online","type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","banned","online"],"title":"User object","type":"object"},"UserObjectRequest":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettingsRequest","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"}},"required":["id"],"title":"User object","type":"object"},"UserPresenceChangedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.presence.changed","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"UserPresenceChangedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserReactivatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.reactivated","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["type","created_at"],"title":"UserReactivatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"UserResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.005"},"ban_expires":{"format":"date-time","type":"string","x-stream-index":"001.015"},"banned":{"type":"boolean","x-stream-index":"001.014"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.007"},"deactivated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.012"},"deleted_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.011"},"id":{"type":"string","x-stream-index":"001.003"},"invisible":{"type":"boolean","x-stream-index":"001.021"},"language":{"type":"string","x-stream-index":"001.031"},"last_active":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.010"},"online":{"readOnly":true,"type":"boolean","x-stream-index":"001.020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"001.023"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.038"},"role":{"type":"string","x-stream-index":"001.004"},"shadow_banned":{"description":"Whether user is shadow banned or not","title":"Shadow banned","type":"boolean","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.032"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.008"}},"required":["id","role","Custom","banned","online","shadow_banned"],"type":"object"},"UserUnbannedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"shadow":{"type":"boolean","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"004.001"},"type":{"default":"user.unbanned","type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["shadow","cid","channel_id","channel_type","type","created_at"],"title":"UserUnbannedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.updated","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["type","created_at"],"title":"UserUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserWatchingStartEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"user.watching.start","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"UserWatchingStartEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserWatchingStopEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.watching.stop","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"UserWatchingStopEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"users":{"description":"List of found users","items":{"$ref":"#/components/schemas/UserResponse"},"title":"Users","type":"array","x-stream-index":"001"}},"required":["users","duration"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"WSEvent":{"description":"The discriminator object for all websocket events, it maps events' payload to the final type","discriminator":{"mapping":{"channel.created":"#/components/schemas/ChannelCreatedEvent","channel.deleted":"#/components/schemas/ChannelDeletedEvent","channel.frozen":"#/components/schemas/ChannelFrozenEvent","channel.hidden":"#/components/schemas/ChannelHiddenEvent","channel.kicked":"#/components/schemas/ChannelKickedEvent","channel.truncated":"#/components/schemas/ChannelTruncatedEvent","channel.unfrozen":"#/components/schemas/ChannelUnFrozenEvent","channel.updated":"#/components/schemas/ChannelUpdatedEvent","channel.visible":"#/components/schemas/ChannelVisibleEvent","custom":"#/components/schemas/AnyEvent","health.check":"#/components/schemas/HealthCheckEvent","member.added":"#/components/schemas/MemberAddedEvent","member.removed":"#/components/schemas/MemberRemovedEvent","member.updated":"#/components/schemas/MemberUpdatedEvent","message.deleted":"#/components/schemas/MessageDeletedEvent","message.new":"#/components/schemas/MessageNewEvent","message.read":"#/components/schemas/MessageReadEvent","message.undeleted":"#/components/schemas/MessageUndeletedEvent","message.updated":"#/components/schemas/MessageUpdatedEvent","notification.added_to_channel":"#/components/schemas/NotificationAddedToChannelEvent","notification.channel_deleted":"#/components/schemas/NotificationChannelDeletedEvent","notification.channel_mutes_updated":"#/components/schemas/NotificationChannelMutesUpdatedEvent","notification.channel_truncated":"#/components/schemas/NotificationChannelTruncatedEvent","notification.invite_accepted":"#/components/schemas/NotificationInviteAcceptedEvent","notification.invite_rejected":"#/components/schemas/NotificationInviteRejectedEvent","notification.invited":"#/components/schemas/NotificationInvitedEvent","notification.mark_read":"#/components/schemas/NotificationMarkReadEvent","notification.mark_unread":"#/components/schemas/NotificationMarkUnreadEvent","notification.message_new":"#/components/schemas/NotificationNewMessageEvent","notification.mutes_updated":"#/components/schemas/NotificationMutesUpdatedEvent","notification.removed_from_channel":"#/components/schemas/NotificationRemovedFromChannelEvent","notification.thread_message_new":"#/components/schemas/MessageNewEvent","reaction.deleted":"#/components/schemas/ReactionDeletedEvent","reaction.new":"#/components/schemas/ReactionNewEvent","reaction.updated":"#/components/schemas/ReactionUpdatedEvent","thread.updated":"#/components/schemas/ThreadUpdatedEvent","typing.start":"#/components/schemas/TypingStartEvent","typing.stop":"#/components/schemas/TypingStopEvent","user.banned":"#/components/schemas/UserBannedEvent","user.deactivated":"#/components/schemas/UserDeactivatedEvent","user.deleted":"#/components/schemas/UserDeletedEvent","user.muted":"#/components/schemas/UserMutedEvent","user.presence.changed":"#/components/schemas/UserPresenceChangedEvent","user.reactivated":"#/components/schemas/UserReactivatedEvent","user.unbanned":"#/components/schemas/UserUnbannedEvent","user.updated":"#/components/schemas/UserUpdatedEvent","user.watching.start":"#/components/schemas/UserWatchingStartEvent","user.watching.stop":"#/components/schemas/UserWatchingStopEvent"},"propertyName":"type"},"oneOf":[{"$ref":"#/components/schemas/AnyEvent"},{"$ref":"#/components/schemas/ChannelCreatedEvent"},{"$ref":"#/components/schemas/ChannelDeletedEvent"},{"$ref":"#/components/schemas/ChannelFrozenEvent"},{"$ref":"#/components/schemas/ChannelHiddenEvent"},{"$ref":"#/components/schemas/ChannelKickedEvent"},{"$ref":"#/components/schemas/ChannelTruncatedEvent"},{"$ref":"#/components/schemas/ChannelUnFrozenEvent"},{"$ref":"#/components/schemas/ChannelUpdatedEvent"},{"$ref":"#/components/schemas/ChannelVisibleEvent"},{"$ref":"#/components/schemas/HealthCheckEvent"},{"$ref":"#/components/schemas/MemberAddedEvent"},{"$ref":"#/components/schemas/MemberRemovedEvent"},{"$ref":"#/components/schemas/MemberUpdatedEvent"},{"$ref":"#/components/schemas/MessageDeletedEvent"},{"$ref":"#/components/schemas/MessageNewEvent"},{"$ref":"#/components/schemas/MessageNewEvent"},{"$ref":"#/components/schemas/MessageReadEvent"},{"$ref":"#/components/schemas/MessageUndeletedEvent"},{"$ref":"#/components/schemas/MessageUpdatedEvent"},{"$ref":"#/components/schemas/NotificationAddedToChannelEvent"},{"$ref":"#/components/schemas/NotificationChannelDeletedEvent"},{"$ref":"#/components/schemas/NotificationChannelMutesUpdatedEvent"},{"$ref":"#/components/schemas/NotificationChannelTruncatedEvent"},{"$ref":"#/components/schemas/NotificationInviteAcceptedEvent"},{"$ref":"#/components/schemas/NotificationInviteRejectedEvent"},{"$ref":"#/components/schemas/NotificationInvitedEvent"},{"$ref":"#/components/schemas/NotificationMarkReadEvent"},{"$ref":"#/components/schemas/NotificationMarkUnreadEvent"},{"$ref":"#/components/schemas/NotificationMutesUpdatedEvent"},{"$ref":"#/components/schemas/NotificationNewMessageEvent"},{"$ref":"#/components/schemas/NotificationRemovedFromChannelEvent"},{"$ref":"#/components/schemas/ReactionDeletedEvent"},{"$ref":"#/components/schemas/ReactionNewEvent"},{"$ref":"#/components/schemas/ReactionUpdatedEvent"},{"$ref":"#/components/schemas/ThreadUpdatedEvent"},{"$ref":"#/components/schemas/TypingStartEvent"},{"$ref":"#/components/schemas/TypingStopEvent"},{"$ref":"#/components/schemas/UserBannedEvent"},{"$ref":"#/components/schemas/UserDeactivatedEvent"},{"$ref":"#/components/schemas/UserDeletedEvent"},{"$ref":"#/components/schemas/UserMutedEvent"},{"$ref":"#/components/schemas/UserPresenceChangedEvent"},{"$ref":"#/components/schemas/UserReactivatedEvent"},{"$ref":"#/components/schemas/UserUnbannedEvent"},{"$ref":"#/components/schemas/UserUpdatedEvent"},{"$ref":"#/components/schemas/UserWatchingStartEvent"},{"$ref":"#/components/schemas/UserWatchingStopEvent"}]},"WrappedUnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"001.004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"001.005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001.001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"001.002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads","duration"],"type":"object"},"XiaomiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"package_name":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"connectRequestQueryRequest":{"nullable":true,"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v104.0.1"},"openapi":"3.0.3","paths":{"/app":{"get":{"description":"This Method returns the application settings\n","operationId":"GetApp","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetApplicationResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get App Settings","tags":["Settings"]}},"/calls":{"post":{"description":"Retrieves the token to join a call\n\nRequired permissions:\n- JoinCall\n- ReadChannel\n","operationId":"GetCallToken","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Token"}},"/calls/{call_id}":{"post":{"description":"Retrieves the token to join a call\n\nRequired permissions:\n- JoinCall\n- ReadChannel\n","operationId":"GetCallToken","parameters":[{"in":"path","name":"call_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Token"}},"/channels":{"post":{"description":"Query channels with filter query\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryChannels","parameters":[{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"011.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryChannelsRequest"}}},"description":"Query Channels Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelsResponse"}}},"description":"Channels list"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query channels","tags":["Channels"]}},"/channels/delete":{"post":{"description":"Allows to delete several channels at once asynchronously\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deletes channels asynchronously","tags":["Channels","GDPR"]}},"/channels/read":{"post":{"description":"Marks channels as read up to the specific message. If no channels is given, mark all channel as read\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkChannelsRead","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChannelsReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark channels as read","tags":["Channels","Messages"]}},"/channels/{type}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/channels/{type}/{id}":{"delete":{"description":"Deletes channel\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"hard_delete","schema":{"type":"boolean","x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel","tags":["Channels"]},"patch":{"description":"Updates certain fields of the channel\n\nSends events:\n- channel.updated\n\nRequired permissions:\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n","operationId":"UpdateChannelPartial","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update channel","tags":["Channels"]},"post":{"description":"Change channel data\n\nSends events:\n- channel.updated\n- member.added\n- member.removed\n- member.updated\n- message.new\n\nRequired permissions:\n- AddOwnChannelMembership\n- RemoveOwnChannelMembership\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n- UpdateChannelMembers\n","operationId":"UpdateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelRequest"}}},"description":"Channel update request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel","tags":["Channels"]}},"/channels/{type}/{id}/call":{"post":{"description":"Creates a call\n\nRequired permissions:\n- CreateCall\n- ReadChannel\n","operationId":"CreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create a call"}},"/channels/{type}/{id}/event":{"post":{"description":"Sends event to the channel\n\nRequired permissions:\n- SendCustomEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send event","tags":["Events"]}},"/channels/{type}/{id}/file":{"delete":{"description":"Deletes previously uploaded file\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete file","tags":["Messages","Files"]},"post":{"description":"Uploads file\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload file","tags":["Messages","Files"]}},"/channels/{type}/{id}/hide":{"post":{"description":"Marks channel as hidden for current user\n\nSends events:\n- channel.hidden\n\nRequired permissions:\n- ReadChannel\n","operationId":"HideChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Hide channel","tags":["Channels"]}},"/channels/{type}/{id}/image":{"delete":{"description":"Deletes previously uploaded image\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete image","tags":["Messages","Files"]},"post":{"description":"Uploads image\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ImageUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload image","tags":["Messages","Files"]}},"/channels/{type}/{id}/message":{"post":{"description":"Sends new message to the specified channel\n\nSends events:\n- message.new\n- message.updated\n\nRequired permissions:\n- AddLinks\n- CreateMessage\n- PinMessage\n- SkipChannelCooldown\n- SkipMessageModeration\n- UseFrozenChannel\n","operationId":"SendMessage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"009.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"009.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send new message","tags":["Messages"]}},"/channels/{type}/{id}/messages":{"get":{"description":"Returns list messages found by IDs\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetManyMessages","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"ids","schema":{"description":"List of comma-separated IDs","items":{"type":"string"},"maximum":50,"minimum":1,"title":"IDs","type":"array","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetManyMessagesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get many messages","tags":["Messages"]}},"/channels/{type}/{id}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID (maximum length of 64 characters)","title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/channels/{type}/{id}/read":{"post":{"description":"Marks channel as read up to the specific message\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkRead","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark read","tags":["Channels","Messages"]}},"/channels/{type}/{id}/show":{"post":{"description":"Shows previously hidden channel\n\nSends events:\n- channel.visible\n","operationId":"ShowChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Show channel","tags":["Channels"]}},"/channels/{type}/{id}/stop-watching":{"post":{"description":"Call this Method to stop receiving channel events\n\nSends events:\n- user.watching.stop\n","operationId":"StopWatchingChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStopWatchingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopWatchingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop watching channel","tags":["Channels"]}},"/channels/{type}/{id}/truncate":{"post":{"description":"Truncates channel\n\nSends events:\n- channel.truncated\n\nRequired permissions:\n- DeleteChannel\n- TruncateChannel\n","operationId":"TruncateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Truncate channel","tags":["Channels"]}},"/channels/{type}/{id}/unread":{"post":{"description":"Marks channel as unread from a specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkUnread","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkUnreadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark unread","tags":["Channels","Messages"]}},"/connect":{"get":{"description":"Establishes WebSocket connection for user\n\nSends events:\n- user.updated\n","operationId":"Connect","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Connect (WebSocket)","tags":["Users"]}},"/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device","tags":["Devices"]},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices","tags":["Devices"]},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device","tags":["Devices","Push"]}},"/guest":{"post":{"description":"Creates guest user\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create guest","tags":["Users"]}},"/longpoll":{"get":{"description":"WebSocket fallback transport endpoint\n\nSends events:\n- user.updated\n","operationId":"LongPoll","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"},{"in":"query","name":"connection_id","schema":{"maxLength":36,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Long Poll (Transport)","tags":["Users"]}},"/members":{"get":{"description":"Find and filter channel members\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryMembers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query members","tags":["Channels"]}},"/messages/{id}":{"delete":{"description":"Deletes message\n\nSends events:\n- message.deleted\n\nRequired permissions:\n- DeleteMessage\n","operationId":"DeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"hard","schema":{"description":"Delete all message reactions and replies as well","title":"Hard","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"deleted_by","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete message","tags":["Messages"]},"get":{"description":"Returns message by ID\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"show_deleted_message","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageWithPendingMetadataResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get message","tags":["Messages"]},"post":{"description":"Updates message with new data\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update message","tags":["Messages"]},"put":{"description":"Updates certain fields of the message\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessagePartial","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially message update","tags":["Messages"]}},"/messages/{id}/action":{"post":{"description":"Executes message command action with given parameters\n\nSends events:\n- message.new\n\nRequired permissions:\n- RunMessageAction\n","operationId":"RunMessageAction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageActionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Run message command action","tags":["Messages"]}},"/messages/{id}/reaction":{"post":{"description":"Sends reaction to specified message\n\nSends events:\n- reaction.new\n- reaction.updated\n\nRequired permissions:\n- CreateReaction\n- UseFrozenChannel\n","operationId":"SendReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to send reaction for","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction","tags":["Messages","Reactions"]}},"/messages/{id}/reaction/{type}":{"delete":{"description":"Removes user reaction from the message\n\nSends events:\n- reaction.deleted\n\nRequired permissions:\n- DeleteReaction\n","operationId":"DeleteReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to remove reaction from","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"type","required":true,"schema":{"description":"Reaction type to remove","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionRemovalResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete reaction","tags":["Messages","Reactions"]}},"/messages/{id}/reactions":{"get":{"description":"Returns list of reactions of specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReactions","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"limit","schema":{"description":"Number of records to return","format":"int32","title":"Limit","type":"integer","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"offset","schema":{"description":"Number of records to offset","format":"int32","title":"Offset","type":"integer","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetReactionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get reactions","tags":["Messages","Reactions"]}},"/messages/{id}/translate":{"post":{"description":"Translates message to a given language using automated translation software\n\nSends events:\n- message.updated\n\nRequired permissions:\n- ReadChannel\n","operationId":"TranslateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Translate message","tags":["Messages"]}},"/messages/{parent_id}/replies":{"get":{"description":"Returns replies (thread) of the message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReplies","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"description":"ID of a message which replies to return","title":"Parent ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"id_gte","schema":{"type":"string","x-stream-index":"002.001.003"}},{"in":"query","name":"id_gt","schema":{"type":"string","x-stream-index":"002.001.004"}},{"in":"query","name":"id_lte","schema":{"type":"string","x-stream-index":"002.001.005"}},{"in":"query","name":"id_lt","schema":{"type":"string","x-stream-index":"002.001.006"}},{"in":"query","name":"created_at_after_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.007"}},{"in":"query","name":"created_at_after","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.008"}},{"in":"query","name":"created_at_before_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.009"}},{"in":"query","name":"created_at_before","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.010"}},{"in":"query","name":"id_around","schema":{"type":"string","x-stream-index":"002.001.011"}},{"in":"query","name":"created_at_around","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.012"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get replies","tags":["Messages"]}},"/moderation/ban":{"delete":{"description":"Removes previously applied ban\n\nSends events:\n- user.unbanned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Unban","parameters":[{"in":"query","name":"target_user_id","schema":{"type":"string","x-stream-index":"001"}},{"in":"query","name":"type","schema":{"type":"string","x-stream-index":"002"}},{"in":"query","name":"id","schema":{"type":"string","x-stream-index":"003"}},{"in":"query","name":"created_by","schema":{"type":"string","x-stream-index":"004"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unban user","tags":["Users","Moderation"]},"post":{"description":"Restricts user activity either in specific channel or globally\n\nSends events:\n- user.banned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Ban","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BanRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Ban user","tags":["Users","Moderation"]}},"/moderation/flag":{"post":{"description":"Reports message or user for review by moderators\n\nSends events:\n- message.flagged\n- user.flagged\n\nRequired permissions:\n- FlagMessage\n- FlagUser\n","operationId":"Flag","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Flag","tags":["Moderation","Messages","Users"]}},"/moderation/flags/message":{"get":{"description":"Find and filter message flags\n\nRequired permissions:\n- ReadMessageFlags\n","operationId":"QueryMessageFlags","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Message Flags","tags":["Messages","Moderation"]}},"/moderation/mute":{"post":{"description":"Mutes one or several users\n\nSends events:\n- user.muted\n\nRequired permissions:\n- MuteUser\n","operationId":"MuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute user","tags":["Users","Moderation"]}},"/moderation/mute/channel":{"post":{"description":"Mutes channel for user\n\nSends events:\n- channel.muted\n\nRequired permissions:\n- MuteChannel\n","operationId":"MuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute channel","tags":["Channels"]}},"/moderation/unmute":{"post":{"description":"Unmutes previously muted user\n\nSends events:\n- user.unmuted\n\nRequired permissions:\n- MuteUser\n","operationId":"UnmuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute user","tags":["Users","Moderation"]}},"/moderation/unmute/channel":{"post":{"description":"Unmutes channel for user\n\nSends events:\n- channel.unmuted\n\nRequired permissions:\n- MuteChannel\n","operationId":"UnmuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute channel","tags":["Channels"]}},"/og":{"get":{"description":"Get an OpenGraph attachment for a link\n","operationId":"GetOG","parameters":[{"in":"query","name":"url","schema":{"description":"URL to be scraped","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOGResponse"}}},"description":"Get OG Attachment"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get OG","tags":["Messages"]}},"/query_banned_users":{"get":{"description":"Find and filter channel scoped or global user bans\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryBannedUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Banned Users","tags":["Users","Moderation"]}},"/search":{"get":{"description":"Search messages across channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Search","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest","description":"JSON object with search payload","title":"Payload","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Search messages","tags":["Channels","Messages"]}},"/sync":{"post":{"description":"Returns all events happened since client disconnect in specified channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Sync","parameters":[{"in":"query","name":"with_inaccessible_cids","schema":{"description":"If set to true this will add 'inaccessible_cids' to response type","title":"With inaccessible CIDs","type":"boolean","x-stream-index":"003"}},{"in":"query","name":"watch","schema":{"description":"If set to true this will start watching requested and newly added channels that user has access to. If error occurred with this option enabled and it is not an input error - channels will still be watched.","title":"Watch synced channels","type":"boolean","x-stream-index":"004"}},{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"006.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Sync","tags":["Channels","Events"]}},"/threads":{"post":{"description":"Returns the list of threads for specific user\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryThreads","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Threads","tags":["Threads"]}},"/threads/{message_id}":{"get":{"description":"Return a specific thread\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetThread","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"watch","schema":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"reply_limit","schema":{"description":"Limit the number of replies returned","format":"int32","minimum":0,"title":"Reply limit","type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"participant_limit","schema":{"description":"Limit the number of participants returned","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetThreadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Thread","tags":["Threads"]},"patch":{"description":"Updates certain fields of the thread\n\nSends events:\n- thread.updated\n\nRequired permissions:\n- ReadChannel\n- UpdateThread\n","operationId":"UpdateThreadPartial","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update thread","tags":["Threads","Channels"]}},"/unread":{"get":{"description":"Fetch unread counts for a single user\n","operationId":"UnreadCounts","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WrappedUnreadCountsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unread counts","tags":["Channels"]}},"/users":{"get":{"description":"Find and filter users\n\nRequired permissions:\n- SearchUser\n","operationId":"QueryUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query users","tags":["Users"]},"patch":{"description":"Updates certain fields of the user\n\nSends events:\n- user.presence.changed\n- user.updated\n","operationId":"UpdateUsersPartial","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update user","tags":["Users"]},"post":{"description":"Update or create users in bulk\n\nSends events:\n- user.updated\n","operationId":"UpdateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert users","tags":["Users"]}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file +{"components":{"schemas":{"APIError":{"nullable":true,"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNConfigFields":{"properties":{"auth_key":{"type":"string","x-stream-index":"009"},"auth_type":{"type":"string","x-stream-index":"003"},"bundle_id":{"type":"string","x-stream-index":"006"},"development":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"},"host":{"type":"string","x-stream-index":"005"},"key_id":{"type":"string","x-stream-index":"008"},"notification_template":{"type":"string","x-stream-index":"004"},"p12_cert":{"type":"string","x-stream-index":"010"},"team_id":{"type":"string","x-stream-index":"007"}},"required":["enabled","development","notification_template"],"type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"Action":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"required":["name","text","type"],"type":"object"},"ActionRequest":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"type":"object"},"AgoraCall":{"properties":{"channel":{"type":"string","x-stream-index":"001"}},"required":["channel"],"type":"object"},"AnyEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"custom","type":"string","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"AnyEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"App":{"properties":{"agora_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.039"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.018"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.016"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.019"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.020"},"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallType"},"type":"object","x-stream-index":"001.006"},"campaign_enabled":{"type":"boolean","x-stream-index":"001.033"},"cdn_expiration_seconds":{"format":"int32","type":"integer","x-stream-index":"001.037"},"channel_configs":{"additionalProperties":{"$ref":"#/components/schemas/ChannelConfig"},"description":"Object with channel configs","title":"Channel configs","type":"object","x-stream-index":"001.005","x-stream-map":{"key":"channel_type"}},"custom_action_handler_url":{"type":"string","x-stream-index":"001.021"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfo","x-stream-index":"001.042"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.010"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.011"},"enforce_unique_usernames":{"type":"string","x-stream-index":"001.022"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.029"},"geofences":{"items":{"$ref":"#/components/schemas/GeofenceResponse"},"type":"array","x-stream-index":"001.041"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.040"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.015"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.017"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.030"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.014"},"name":{"type":"string","x-stream-index":"001.001"},"organization":{"type":"string","x-stream-index":"001.002"},"permission_version":{"type":"string","x-stream-index":"001.012"},"policies":{"additionalProperties":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"type":"object","x-stream-index":"001.007"},"polls_enabled":{"type":"boolean","x-stream-index":"001.034"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationFields","x-stream-index":"001.003"},"reminders_interval":{"format":"int32","type":"integer","x-stream-index":"001.036"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.031"},"sns_key":{"type":"string","x-stream-index":"001.027"},"sns_secret":{"type":"string","x-stream-index":"001.028"},"sns_topic_arn":{"type":"string","x-stream-index":"001.026"},"sqs_key":{"type":"string","x-stream-index":"001.024"},"sqs_secret":{"type":"string","x-stream-index":"001.025"},"sqs_url":{"type":"string","x-stream-index":"001.023"},"suspended":{"type":"boolean","x-stream-index":"001.008"},"suspended_explanation":{"type":"string","x-stream-index":"001.009"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"video_provider":{"type":"string","x-stream-index":"001.038"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.035"},"webhook_url":{"type":"string","x-stream-index":"001.004"}},"required":["name","organization","push_notifications","webhook_url","channel_configs","call_types","policies","suspended","suspended_explanation","disable_auth_checks","disable_permissions_checks","permission_version","user_search_disallowed_roles","multi_tenant_enabled","image_moderation_enabled","async_url_enrich_enabled","custom_action_handler_url","enforce_unique_usernames","sqs_url","sqs_key","sqs_secret","sns_topic_arn","sns_key","sns_secret","file_upload_config","image_upload_config","grants","campaign_enabled","polls_enabled","webhook_events","reminders_interval","cdn_expiration_seconds","video_provider"],"type":"object"},"Attachment":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"021"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"023"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"019"},"poll_id":{"type":"string","x-stream-index":"018"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url, poll)","title":"Type","type":"string","x-stream-index":"001"}},"required":["Custom"],"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AttachmentRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"actions":{"items":{"$ref":"#/components/schemas/ActionRequest"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/FieldRequest"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/ImagesRequest","x-stream-index":"021"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"023"},"poll":{"$ref":"#/components/schemas/PollRequest","x-stream-index":"019"},"poll_id":{"type":"string","x-stream-index":"018"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url, poll)","title":"Type","type":"string","x-stream-index":"001"}},"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettings","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AutomodDetails":{"properties":{"action":{"type":"string","x-stream-index":"001"},"image_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"message_details":{"$ref":"#/components/schemas/FlagMessageDetails","x-stream-index":"004"},"original_message_type":{"type":"string","x-stream-index":"002"},"result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"003"}},"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BanRequest":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserRequest","description":"User who issued a ban","title":"Banned by","x-stream-index":"009"},"banned_by_id":{"description":"User ID who issued a ban","title":"Banned by ID","type":"string","x-stream-index":"008"},"id":{"description":"Channel ID to ban user in","title":"ID","type":"string","x-stream-index":"005"},"ip_ban":{"description":"Whether to perform IP ban or not","title":"IP ban","type":"boolean","x-stream-index":"007"},"reason":{"description":"Ban reason","title":"Reason","type":"string","x-stream-index":"003"},"shadow":{"description":"Whether to perform shadow ban or not","title":"Shadow","type":"boolean","x-stream-index":"006"},"target_user_id":{"description":"ID of user to ban","title":"Target user ID","type":"string","x-stream-index":"001"},"timeout":{"description":"Timeout of ban in minutes. User will be unbanned after this period of time","title":"Timeout","type":"integer","x-stream-index":"002"},"type":{"description":"Channel type to ban user in","title":"Type","type":"string","x-stream-index":"004"}},"required":["target_user_id"],"type":"object"},"BanResponse":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"expires":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"required":["created_at"],"type":"object"},"BlockListOptions":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"required":["blocklist","behavior"],"type":"object"},"BroadcastSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettings","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"Call":{"properties":{"agora":{"$ref":"#/components/schemas/AgoraCall","x-stream-index":"005"},"hms":{"$ref":"#/components/schemas/HMSCall","x-stream-index":"004"},"id":{"type":"string","x-stream-index":"002"},"provider":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"003"}},"required":["provider","id","type"],"type":"object"},"CallSettings":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettings","x-stream-index":"006"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"007"},"recording":{"$ref":"#/components/schemas/RecordSettings","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"009"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"004"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"003"}},"type":"object"},"CallType":{"nullable":true,"properties":{"AppPK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"CreatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"005"},"ExternalStorage":{"type":"string","writeOnly":true,"x-stream-index":"009"},"Name":{"type":"string","writeOnly":true,"x-stream-index":"004"},"NotificationSettings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"008"},"PK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"002"},"Settings":{"$ref":"#/components/schemas/CallSettings","x-stream-index":"007"},"UpdatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"006"}},"required":["PK","AppPK","Name","CreatedAt","UpdatedAt","ExternalStorage"],"type":"object"},"CastPollVoteRequest":{"nullable":true,"properties":{"poll_id":{"maxLength":255,"type":"string","x-stream-index":"002"},"vote":{"$ref":"#/components/schemas/VoteDataRequest","x-stream-index":"003"}},"required":["poll_id"],"type":"object"},"Channel":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"028"},"auto_translation_language":{"type":"string","x-stream-index":"029"},"cid":{"type":"string","x-stream-index":"003"},"config":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"025"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"026"},"cooldown":{"format":"int32","type":"integer","x-stream-index":"030"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"008"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"disabled":{"type":"boolean","x-stream-index":"017"},"frozen":{"type":"boolean","x-stream-index":"016"},"id":{"type":"string","x-stream-index":"004"},"invites":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"021"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"006"},"member_count":{"format":"int32","type":"integer","x-stream-index":"020"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"019"},"team":{"type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"015"},"type":{"type":"string","x-stream-index":"005"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"}},"required":["cid","id","type","created_at","updated_at","frozen","disabled","Custom","auto_translation_language"],"type":"object"},"ChannelConfig":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.025"},"blocklist":{"type":"string","x-stream-index":"001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.023"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"003"},"connect_events":{"type":"boolean","x-stream-index":"001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.012"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.018"},"message_retention":{"type":"string","x-stream-index":"001.017"},"mutes":{"type":"boolean","x-stream-index":"001.009"},"name":{"type":"string","x-stream-index":"001.001"},"polls":{"type":"boolean","x-stream-index":"001.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.013"},"quotes":{"type":"boolean","x-stream-index":"001.008"},"reactions":{"type":"boolean","x-stream-index":"001.006"},"read_events":{"type":"boolean","x-stream-index":"001.003"},"reminders":{"type":"boolean","x-stream-index":"001.014"},"replies":{"type":"boolean","x-stream-index":"001.007"},"search":{"type":"boolean","x-stream-index":"001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"002.004"},"uploads":{"type":"boolean","x-stream-index":"001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands"],"type":"object"},"ChannelConfigRequest":{"description":"Channel configuration overrides","properties":{"blocklist":{"type":"string","x-stream-index":"008"},"blocklist_behavior":{"enum":["flag","block"],"type":"string","x-stream-index":"009"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"010","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"max_message_length":{"description":"Overrides max message length","format":"int32","maximum":20000,"title":"Max Message Length","type":"integer","x-stream-index":"007"},"quotes":{"description":"Enables message quotes","title":"Quotes","type":"boolean","x-stream-index":"004"},"reactions":{"description":"Enables or disables reactions","title":"Reactions","type":"boolean","x-stream-index":"002"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"003"},"typing_events":{"description":"Enables or disables typing events","title":"Typing events","type":"boolean","x-stream-index":"001"},"uploads":{"description":"Enables or disables file uploads","title":"Uploads","type":"boolean","x-stream-index":"005"},"url_enrichment":{"description":"Enables or disables URL enrichment","title":"URL Enrichment","type":"boolean","x-stream-index":"006"}},"type":"object"},"ChannelConfigWithInfo":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.002.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.002.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.002.025"},"blocklist":{"type":"string","x-stream-index":"001.002.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.002.023"},"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.001.003"},"custom_events":{"type":"boolean","x-stream-index":"001.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"002","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.002.018"},"message_retention":{"type":"string","x-stream-index":"001.002.017"},"mutes":{"type":"boolean","x-stream-index":"001.002.009"},"name":{"type":"string","x-stream-index":"001.002.001"},"polls":{"type":"boolean","x-stream-index":"001.002.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.002.013"},"quotes":{"type":"boolean","x-stream-index":"001.002.008"},"reactions":{"type":"boolean","x-stream-index":"001.002.006"},"read_events":{"type":"boolean","x-stream-index":"001.002.003"},"reminders":{"type":"boolean","x-stream-index":"001.002.014"},"replies":{"type":"boolean","x-stream-index":"001.002.007"},"search":{"type":"boolean","x-stream-index":"001.002.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.001.004"},"uploads":{"type":"boolean","x-stream-index":"001.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.002.011"}},"required":["created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelCreatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.created","type":"string","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"ChannelCreatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelDeletedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"team":{"type":"string","x-stream-index":"001.001"},"type":{"default":"channel.deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelFrozenEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.frozen","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelFrozenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelGetOrCreateRequest":{"nullable":true,"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"004"},"hide_for_creator":{"description":"Whether this channel will be hidden for the user who created the channel or not","title":"Hide for creator","type":"boolean","x-stream-index":"008"},"members":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"011"},"messages":{"$ref":"#/components/schemas/MessagePaginationParamsRequest","x-stream-index":"010"},"presence":{"description":"Fetch user presence info","title":"Presence","type":"boolean","x-stream-index":"007"},"state":{"description":"Refresh channel state","title":"State","type":"boolean","x-stream-index":"006"},"thread_unread_counts":{"type":"boolean","x-stream-index":"009"},"watch":{"description":"Start watching the channel","title":"Watch","type":"boolean","x-stream-index":"005"},"watchers":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"012"}},"type":"object"},"ChannelHiddenEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"clear_history":{"type":"boolean","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"type":{"default":"channel.hidden","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["clear_history","cid","channel_id","channel_type","type","created_at"],"title":"ChannelHiddenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelKickedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.kicked","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelKickedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelMember":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"required":["created_at","updated_at","banned","shadow_banned","channel_role","notifications_muted"],"title":"Channel member","type":"object"},"ChannelMemberRequest":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"title":"Channel member","type":"object"},"ChannelMute":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"007"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"ChannelRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"auto_translation_enabled":{"description":"Enable or disable auto translation","title":"Auto translation","type":"boolean","x-stream-index":"007"},"auto_translation_language":{"description":"Switch auto translation language","title":"Auto translation language","type":"string","x-stream-index":"008"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfigRequest","x-stream-index":"026"},"disabled":{"type":"boolean","x-stream-index":"016"},"frozen":{"description":"Freeze or unfreeze the channel","title":"Frozen","type":"boolean","x-stream-index":"015"},"members":{"items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"type":"array","x-stream-index":"020"},"team":{"description":"Team the channel belongs to (if multi-tenant mode is enabled)","title":"Team","type":"string","x-stream-index":"006"},"truncated_by_id":{"type":"string","x-stream-index":"012"}},"type":"object"},"ChannelResponse":{"description":"Represents channel in chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"029"},"auto_translation_enabled":{"description":"Whether auto translation is enabled or not","title":"Auto translation","type":"boolean","x-stream-index":"021"},"auto_translation_language":{"description":"Language to translate to when auto translation is active","title":"Auto translation language","type":"string","x-stream-index":"022"},"cid":{"description":"Channel CID (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"005"},"config":{"$ref":"#/components/schemas/ChannelConfigWithInfo","description":"Channel configuration","title":"Config","x-stream-index":"017"},"cooldown":{"description":"Cooldown period after sending each message","format":"int32","title":"Cooldown","type":"integer","x-stream-index":"024"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"008"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Creator of the channel","title":"Created by","x-stream-index":"011"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"010"},"disabled":{"type":"boolean","x-stream-index":"013"},"frozen":{"description":"Whether channel is frozen or not","title":"Frozen","type":"boolean","x-stream-index":"012"},"hidden":{"description":"Whether this channel is hidden by current user or not","title":"Hidden","type":"boolean","x-stream-index":"026"},"hide_messages_before":{"description":"Date since when the message history is accessible","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"023"},"id":{"description":"Channel unique ID","title":"ID","type":"string","x-stream-index":"003"},"last_message_at":{"description":"Date of the last message sent","format":"date-time","title":"Last message at","type":"string","x-stream-index":"006"},"member_count":{"description":"Number of members in the channel","format":"int32","title":"Member count","type":"integer","x-stream-index":"015"},"members":{"description":"List of channel members (max 100)","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"014"},"mute_expires_at":{"description":"Date of mute expiration","format":"date-time","title":"Mute expires at","type":"string","x-stream-index":"019"},"muted":{"description":"Whether this channel is muted or not","title":"Muted","type":"boolean","x-stream-index":"018"},"own_capabilities":{"description":"List of channel capabilities of authenticated user","items":{"type":"string"},"title":"Own Capabilities","type":"array","x-stream-index":"025"},"team":{"description":"Team the channel belongs to (multi-tenant only)","title":"Team","type":"string","x-stream-index":"020"},"truncated_at":{"description":"Date of the latest truncation of the channel","format":"date-time","title":"Truncated At","type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"028"},"type":{"description":"Type of the channel","title":"Type","type":"string","x-stream-docs-page-id":"channel_features","x-stream-index":"004"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"009"}},"required":["id","type","cid","frozen","disabled","Custom"],"title":"Channel","type":"object"},"ChannelStateResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"hidden":{"type":"boolean","x-stream-index":"001.010"},"hide_messages_before":{"format":"date-time","type":"string","x-stream-index":"001.011"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"001.007"},"membership":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.008"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.002"},"pending_messages":{"items":{"$ref":"#/components/schemas/PendingMessage"},"type":"array","x-stream-index":"001.012"},"pinned_messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.003"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"001.006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"001.009"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.004"},"watchers":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.005"}},"required":["messages","pinned_messages","members","threads","duration"],"type":"object"},"ChannelStateResponseFields":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"hidden":{"description":"Whether this channel is hidden or not","title":"Hidden","type":"boolean","x-stream-index":"010"},"hide_messages_before":{"description":"Messages before this date are hidden from the user","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"011"},"members":{"description":"List of channel members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"007"},"membership":{"$ref":"#/components/schemas/ChannelMember","description":"Current user membership object","title":"Membership","x-stream-index":"008"},"messages":{"description":"List of channel messages","items":{"$ref":"#/components/schemas/Message"},"title":"Message","type":"array","x-stream-index":"002"},"pending_messages":{"description":"Pending messages that this user has sent","items":{"$ref":"#/components/schemas/PendingMessage"},"title":"Pending messages","type":"array","x-stream-index":"012"},"pinned_messages":{"description":"List of pinned messages in the channel","items":{"$ref":"#/components/schemas/Message"},"title":"Pinned messages","type":"array","x-stream-docs-page-id":"pinned_messages","x-stream-index":"003"},"read":{"description":"List of read states","items":{"$ref":"#/components/schemas/Read"},"title":"Read","type":"array","x-stream-index":"006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"009"},"watcher_count":{"description":"Number of channel watchers","format":"int32","title":"Watcher count","type":"integer","x-stream-index":"004"},"watchers":{"description":"List of user who is watching the channel","items":{"$ref":"#/components/schemas/UserObject"},"title":"Watchers","type":"array","x-stream-index":"005"}},"required":["messages","pinned_messages","members","threads"],"type":"object"},"ChannelStopWatchingRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"001.003"}},"type":"object"},"ChannelTruncatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.004"},"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"channel.truncated","type":"string","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ChannelTruncatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelUnFrozenEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.unfrozen","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelUnFrozenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelUpdatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"004.004"},"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"channel.updated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelVisibleEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"type":{"default":"channel.visible","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ChannelVisibleEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelsResponse":{"nullable":true,"properties":{"channels":{"description":"List of channels","items":{"$ref":"#/components/schemas/ChannelStateResponseFields"},"title":"Channels","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channels","duration"],"title":"Channels list","type":"object"},"Command":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","title":"Arguments","type":"string","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"001"},"description":{"description":"Description, shown in commands auto-completion","title":"Description","type":"string","x-stream-index":"005"},"name":{"description":"Unique command name","title":"Name","type":"string","x-stream-index":"004"},"set":{"description":"Set name used for grouping commands","title":"Set","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"002"}},"required":["name","description","args","set"],"title":"Command","type":"object"},"Config":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConnectRequest":{"properties":{"device":{"$ref":"#/components/schemas/DeviceFields","x-stream-index":"001.002"},"user_details":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["user_details"],"type":"object"},"CreateCallRequest":{"nullable":true,"properties":{"id":{"type":"string","x-stream-index":"004"},"options":{"type":"object","x-stream-index":"005"},"type":{"enum":["audio","video"],"type":"string","x-stream-index":"003"}},"required":["type","id"],"type":"object"},"CreateCallResponse":{"nullable":true,"properties":{"agora_app_id":{"type":"string","x-stream-index":"002.003"},"agora_uid":{"format":"int32","type":"integer","x-stream-index":"002.002"},"call":{"$ref":"#/components/schemas/Call","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"token":{"type":"string","x-stream-index":"002.001"}},"required":["token","duration"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreatePollOptionRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"position":{"format":"int32","type":"integer","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"}},"required":["poll_id","text"],"type":"object"},"CreatePollRequest":{"description":"Contains all information needed to create a new poll","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"011"},"allow_answers":{"description":"Indicates whether users can suggest user defined answers","title":"Allow answers","type":"boolean","x-stream-index":"009"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"008"},"description":{"description":"A description of the poll","title":"Description","type":"string","x-stream-index":"003"},"enforce_unique_vote":{"description":"Indicates whether users can cast multiple votes","title":"Multiple choice","type":"boolean","x-stream-index":"006"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"is_closed":{"description":"Indicates whether the poll is open for voting","title":"Is closed","type":"boolean","x-stream-index":"010"},"max_votes_allowed":{"description":"Indicates the maximum amount of votes a user can cast","format":"int32","maximum":10,"title":"Maximum votes allowed","type":"integer","x-stream-index":"007"},"name":{"description":"The name of the poll","title":"Name","type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest_1"},"maximum":100,"type":"array","x-stream-index":"004"},"voting_visibility":{"enum":["anonymous","public"],"type":"string","x-stream-index":"005"}},"required":["name"],"title":"Create Poll Request","type":"object"},"DataDogInfo":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"required":["api_key","site","enabled"],"type":"object"},"DeleteChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteChannelsRequest":{"nullable":true,"properties":{"cids":{"description":"All channels that should be deleted","items":{"type":"string"},"maximum":100,"minimum":1,"title":"Channels CID","type":"array","x-stream-index":"001"},"hard_delete":{"description":"Specify if channels and all ressources should be hard deleted","title":"Hard delete","type":"boolean","x-stream-index":"002"}},"type":"object"},"DeleteChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"result":{"additionalProperties":{"$ref":"#/components/schemas/DeleteChannelsResult"},"type":"object","x-stream-index":"001"},"task_id":{"type":"string","x-stream-index":"002"}},"required":["duration"],"type":"object"},"DeleteChannelsResult":{"nullable":true,"properties":{"error":{"type":"string","x-stream-index":"003"},"status":{"type":"string","x-stream-index":"002"}},"required":["status"],"type":"object"},"Device":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"disabled":{"type":"boolean","x-stream-index":"002.003"},"disabled_reason":{"type":"string","x-stream-index":"002.004"},"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"002.001.004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"002.001.001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"002.001.003"},"user_id":{"type":"string","x-stream-index":"004"},"voip":{"type":"boolean","x-stream-index":"002.001.005"}},"required":["push_provider","id","created_at","user_id"],"type":"object"},"DeviceFields":{"properties":{"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"003"},"voip":{"type":"boolean","x-stream-index":"005"}},"required":["push_provider","id"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventRequest":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"001"}},"required":["type"],"type":"object"},"EventResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/WSEvent","x-stream-index":"001"}},"required":["event","duration"],"type":"object"},"Field":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"required":["title","value","short"],"type":"object"},"FieldRequest":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"type":"object"},"FileDeleteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"FileUploadConfig":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"required":["allowed_file_extensions","blocked_file_extensions","allowed_mime_types","blocked_mime_types","size_limit"],"type":"object"},"FileUploadRequest":{"nullable":true,"properties":{"file":{"description":"file field","title":"File","type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","description":"user for the request **server side only**","title":"User","x-stream-index":"003"}},"type":"object"},"FileUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"003"}},"required":["duration"],"type":"object"},"FirebaseConfigFields":{"properties":{"apn_template":{"type":"string","x-stream-index":"004"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"003"},"enabled":{"type":"boolean","x-stream-index":"001"},"notification_template":{"type":"string","x-stream-index":"002"},"server_key":{"type":"string","x-stream-index":"005"}},"required":["enabled","notification_template","data_template","apn_template"],"type":"object"},"Flag":{"description":"Contains information about flagged user or message","properties":{"approved_at":{"description":"Date of the approval","format":"date-time","title":"Approved at","type":"string","x-stream-index":"015"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"created_by_automod":{"type":"boolean","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"022"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"021"},"reason":{"type":"string","x-stream-index":"020"},"rejected_at":{"description":"Date of the rejection","format":"date-time","title":"Rejected at","type":"string","x-stream-index":"016"},"reviewed_at":{"description":"Date of the review","format":"date-time","title":"Reviewed at","type":"string","x-stream-index":"013"},"target_message":{"$ref":"#/components/schemas/Message","x-stream-index":"008"},"target_message_id":{"description":"ID of flagged message","title":"Target Message ID","type":"string","x-stream-index":"007"},"target_user":{"$ref":"#/components/schemas/UserObject","description":"Flagged user","title":"User","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","description":"User who flagged a message or a user","title":"User","x-stream-index":"006"}},"required":["created_by_automod","created_at","updated_at"],"title":"Flag","type":"object"},"FlagDetails":{"properties":{"Extra":{"type":"object","writeOnly":true,"x-stream-index":"002"},"automod":{"$ref":"#/components/schemas/AutomodDetails","x-stream-index":"001"},"original_text":{"type":"string","x-stream-index":"003"}},"required":["Extra","original_text"],"type":"object"},"FlagFeedback":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"labels":{"items":{"$ref":"#/components/schemas/Label"},"type":"array","x-stream-index":"006"},"message_id":{"type":"string","x-stream-index":"004"}},"required":["message_id","created_at","labels"],"type":"object"},"FlagMessageDetails":{"properties":{"pin_changed":{"type":"boolean","x-stream-index":"002"},"should_enrich":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"004"},"updated_by_id":{"type":"string","x-stream-index":"001"}},"type":"object"},"FlagRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"004"},"reason":{"maxLength":255,"type":"string","x-stream-index":"003"},"target_message_id":{"description":"ID of the message when reporting a message","title":"Target Message ID","type":"string","x-stream-index":"001"}},"type":"object"},"FlagResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flag":{"$ref":"#/components/schemas/Flag","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GeofenceResponse":{"nullable":true,"properties":{"country_codes":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"}},"required":["name"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GetApplicationResponse":{"nullable":true,"properties":{"app":{"$ref":"#/components/schemas/App","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["app","duration"],"type":"object"},"GetCallTokenRequest":{"nullable":true,"type":"object"},"GetCallTokenResponse":{"nullable":true,"properties":{"agora_app_id":{"type":"string","x-stream-index":"001.003"},"agora_uid":{"format":"int32","type":"integer","x-stream-index":"001.002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"token":{"type":"string","x-stream-index":"001.001"}},"required":["token","duration"],"type":"object"},"GetManyMessagesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetOGResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.020"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"001.015"},"asset_url":{"description":"URL of detected video or audio","title":"Image URL","type":"string","x-stream-index":"001.017"},"author_icon":{"type":"string","x-stream-index":"001.007"},"author_link":{"description":"og:site","title":"Author Link","type":"string","x-stream-index":"001.006"},"author_name":{"description":"og:site_name","title":"Author Name","type":"string","x-stream-index":"001.005"},"color":{"type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"002.001"},"fallback":{"type":"string","x-stream-index":"001.002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"001.016"},"footer":{"type":"string","x-stream-index":"001.013"},"footer_icon":{"type":"string","x-stream-index":"001.014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"001.021"},"image_url":{"description":"URL of detected image","title":"Image URL","type":"string","x-stream-index":"001.011"},"og_scrape_url":{"description":"extracted url from the text","title":"OG Scrape URL","type":"string","x-stream-index":"001.022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"001.024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"001.023"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001.019"},"poll_id":{"type":"string","x-stream-index":"001.018"},"pretext":{"type":"string","x-stream-index":"001.004"},"text":{"description":"og:description","title":"Text","type":"string","x-stream-index":"001.010"},"thumb_url":{"description":"URL of detected thumb image","title":"Image URL","type":"string","x-stream-index":"001.012"},"title":{"description":"og:title","title":"Title","type":"string","x-stream-index":"001.008"},"title_link":{"description":"og:url","title":"Title Link","type":"string","x-stream-index":"001.009"},"type":{"description":"Attachment type, could be empty, image, audio or video","title":"Type","type":"string","x-stream-index":"001.001"}},"required":["Custom","duration"],"title":"Get OG Attachment","type":"object","x-stream-docs-page-id":"og"},"GetReactionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"reactions":{"description":"List of reactions","items":{"$ref":"#/components/schemas/Reaction"},"title":"Reactions","type":"array","x-stream-index":"001"}},"required":["reactions","duration"],"type":"object"},"GetRepliesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetThreadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadStateResponse","description":"Enriched thread state","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"GuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"GuestResponse":{"nullable":true,"properties":{"access_token":{"description":"Authentication token to use for guest user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","description":"Created user object","title":"User","x-stream-index":"001"}},"required":["access_token","duration"],"type":"object"},"HLSSettings":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks"],"type":"object"},"HMSCall":{"properties":{"room_id":{"type":"string","x-stream-index":"001"},"room_name":{"type":"string","x-stream-index":"002"}},"required":["room_id","room_name"],"type":"object"},"HealthCheckEvent":{"properties":{"cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"002"},"type":{"default":"health.check","type":"string","x-stream-index":"003.001"}},"required":["cid","type","created_at"],"title":"HealthCheckEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"HideChannelRequest":{"nullable":true,"properties":{"clear_history":{"description":"Whether to clear message history of the channel or not","title":"Clear history","type":"boolean","x-stream-index":"001"}},"type":"object"},"HideChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"HuaweiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"id":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"ImageData":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"required":["url","width","height","size","frames"],"type":"object"},"ImageDataRequest":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageSize":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"required":["crop","resize","height","width"],"title":"Image size configuration","type":"object"},"ImageSizeRequest":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"title":"Image size configuration","type":"object"},"ImageUploadRequest":{"nullable":true,"properties":{"file":{"type":"string","x-stream-index":"001.002"},"upload_sizes":{"description":"field with JSON-encoded array of image size configurations","items":{"$ref":"#/components/schemas/ImageSizeRequest"},"title":"Upload sizes","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","x-stream-index":"001.003"}},"type":"object"},"ImageUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"001.002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"001.003"},"upload_sizes":{"items":{"$ref":"#/components/schemas/ImageSize"},"type":"array","x-stream-index":"002"}},"required":["duration"],"type":"object"},"Images":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageData","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageData","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageData","x-stream-index":"001"}},"required":["original","fixed_height","fixed_height_still","fixed_height_downsampled","fixed_width","fixed_width_still","fixed_width_downsampled"],"type":"object"},"ImagesRequest":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"001"}},"type":"object"},"Label":{"properties":{"harm_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"phrase_list_ids":{"items":{"format":"int32","type":"integer"},"type":"array","x-stream-index":"002"}},"required":["name"],"type":"object"},"LabelThresholds":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"MarkChannelsReadRequest":{"nullable":true,"type":"object"},"MarkReadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message that is considered last read by client","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Optional Thread ID to specifically mark a given thread as read","title":"Thread ID","type":"string","x-stream-index":"004"}},"type":"object"},"MarkReadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/MessageReadEvent","description":"Mark read event","title":"Event","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MarkUnreadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message from where the channel is marked unread","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Mark a thread unread, specify both the thread and message id","title":"Thread ID","type":"string","x-stream-index":"003"}},"required":["message_id","thread_id"],"type":"object"},"MemberAddedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"member.added","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberAddedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MemberRemovedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"type":{"default":"member.removed","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberRemovedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MemberUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"member.updated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MembersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"members":{"description":"List of found members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"001"}},"required":["members","duration"],"type":"object"},"Message":{"description":"Represents any chat message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"031"},"attachments":{"description":"Array of message attachments","items":{"$ref":"#/components/schemas/Attachment"},"title":"Message attachments","type":"array","x-stream-docs-page-id":"message_format#attachment-format","x-stream-index":"011"},"before_message_send_failed":{"description":"Whether `before_message_send webhook` failed or not. Field is only accessible in push webhook","title":"Before Message Send Failed","type":"boolean","x-stream-docs-page-id":"before_message_send_webhook","x-stream-index":"043"},"cid":{"description":"Channel unique identifier in \u003ctype\u003e:\u003cid\u003e format","title":"Channel CID","type":"string","x-stream-index":"026"},"command":{"description":"Contains provided slash command","title":"Command","type":"string","x-stream-docs-page-id":"custom_commands_webhook","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"028"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"021"},"html":{"description":"Contains HTML markup of the message. Can only be set when using server-side API","title":"HTML content","type":"string","x-stream-index":"007"},"i18n":{"additionalProperties":{"type":"string"},"description":"Object with translations. Key `language` contains the original language key. Other keys contain translations","title":"Internationalization info","type":"object","x-stream-docs-page-id":"translation","x-stream-index":"041"},"id":{"description":"Message ID is unique string identifier of the message","title":"ID","type":"string","x-stream-index":"002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Contains image moderation information","title":"Image moderation labels","type":"object","x-stream-index":"037"},"latest_reactions":{"description":"List of 10 latest reactions to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Latest reactions","type":"array","x-stream-index":"012"},"mentioned_users":{"description":"List of mentioned users","items":{"$ref":"#/components/schemas/UserObject"},"title":"Mentioned Users","type":"array","x-stream-index":"040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"049"},"mml":{"description":"Should be empty if `text` is provided. Can only be set when using server-side API","title":"Messaging Markup Language","type":"string","x-stream-docs-page-id":"mml_overview","x-stream-index":"005"},"own_reactions":{"description":"List of 10 latest reactions of authenticated user to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Own reactions","type":"array","x-stream-index":"013"},"parent_id":{"description":"ID of parent message (thread)","title":"Parent message ID","type":"string","x-stream-docs-page-id":"threads","x-stream-index":"017"},"pin_expires":{"description":"Date when pinned message expires","format":"date-time","title":"Pin expiration date","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"048"},"pinned":{"description":"Whether message is pinned or not","title":"Pinned","type":"boolean","x-stream-docs-page-id":"pinned_messages","x-stream-index":"044"},"pinned_at":{"description":"Date when message got pinned","format":"date-time","title":"Pinned at","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","description":"Contains user who pinned the message","title":"Pinned by","x-stream-docs-page-id":"pinned_messages","x-stream-index":"047"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"051"},"poll_id":{"description":"Identifier of the poll to include in the message","title":"Poll ID","type":"string","x-stream-index":"050"},"quoted_message":{"$ref":"#/components/schemas/Message","description":"Contains quoted message","title":"Quoted message","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"023"},"quoted_message_id":{"title":"ID of quoted message","type":"string","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing number of reactions of each type. Key: reaction type (string), value: number of reactions (int)","title":"Reaction counts","type":"object","x-stream-index":"014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing scores of reactions of each type. Key: reaction type (string), value: total score of reactions (int)","title":"Reaction scores","type":"object","x-stream-index":"015"},"reply_count":{"description":"Number of replies to this message","format":"int32","title":"Reply count","type":"integer","x-stream-index":"020"},"shadowed":{"description":"Whether the message was shadowed or not","title":"Shadowed","type":"boolean","x-stream-docs-page-id":"moderation#shadow-ban","x-stream-index":"033"},"show_in_channel":{"description":"Whether thread reply should be shown in the channel as well","title":"Show in channel","type":"boolean","x-stream-docs-page-id":"threads","x-stream-index":"019"},"silent":{"description":"Whether message is silent or not","title":"Silent","type":"boolean","x-stream-index":"042"},"text":{"description":"Text of the message. Should be empty if `mml` is provided","title":"Text","type":"string","x-stream-index":"004"},"thread_participants":{"description":"List of users who participate in thread","items":{"$ref":"#/components/schemas/UserObject"},"title":"Thread participants","type":"array","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"025"},"type":{"description":"Contains type of the message","enum":["regular","ephemeral","error","reply","system","deleted"],"title":"Message Type","type":"string","x-stream-docs-page-id":"message_format#message-types","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"029"},"user":{"$ref":"#/components/schemas/UserObject","description":"Sender of the message. Required when using server-side API","title":"User object","x-stream-index":"010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned","poll_id"],"title":"Message","type":"object","x-stream-docs-page-id":"send_message"},"MessageActionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"form_data":{"additionalProperties":{"type":"string"},"description":"ReadOnlyData to execute command with","title":"Form data","type":"object","x-stream-index":"002"}},"required":["form_data"],"type":"object"},"MessageChangeSet":{"properties":{"attachments":{"type":"boolean","x-stream-index":"005"},"custom":{"type":"boolean","x-stream-index":"001"},"html":{"type":"boolean","x-stream-index":"004"},"mentioned_user_ids":{"type":"boolean","x-stream-index":"006"},"mml":{"type":"boolean","x-stream-index":"003"},"pin":{"type":"boolean","x-stream-index":"009"},"quoted_message_id":{"type":"boolean","x-stream-index":"007"},"silent":{"type":"boolean","x-stream-index":"008"},"text":{"type":"boolean","x-stream-index":"002"}},"required":["custom","text","mml","html","attachments","mentioned_user_ids","quoted_message_id","silent","pin"],"type":"object"},"MessageDeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"hard_delete":{"type":"boolean","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.deleted","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["hard_delete","cid","channel_id","channel_type","type","created_at"],"title":"MessageDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageFlag":{"nullable":true,"properties":{"approved_at":{"format":"date-time","type":"string","x-stream-index":"013"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by_automod":{"type":"boolean","x-stream-index":"001"},"custom":{"type":"object","x-stream-index":"008"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"006"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"005"},"moderation_feedback":{"$ref":"#/components/schemas/FlagFeedback","x-stream-index":"003"},"moderation_result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"002"},"reason":{"type":"string","x-stream-index":"007"},"rejected_at":{"format":"date-time","type":"string","x-stream-index":"014"},"reviewed_at":{"format":"date-time","type":"string","x-stream-index":"011"},"reviewed_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004"}},"required":["created_by_automod","created_at","updated_at"],"type":"object"},"MessageModerationResult":{"properties":{"action":{"type":"string","x-stream-index":"004"},"ai_moderation_response":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"009"},"blocked_word":{"type":"string","x-stream-index":"006"},"blocklist_name":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"012"},"message_id":{"type":"string","x-stream-index":"003"},"moderated_by":{"type":"string","x-stream-index":"005"},"moderation_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"013"},"user_bad_karma":{"type":"boolean","x-stream-index":"011"},"user_karma":{"format":"float","type":"number","x-stream-index":"010"}},"required":["message_id","action","user_karma","user_bad_karma","created_at","updated_at"],"type":"object"},"MessageNewEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"006.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.new","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"002.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"MessageNewEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessagePaginationParamsRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"008"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"007"},"created_at_around":{"format":"date-time","type":"string","x-stream-index":"012"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"010"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"009"},"id_around":{"type":"string","x-stream-index":"011"},"id_gt":{"type":"string","x-stream-index":"004"},"id_gte":{"type":"string","x-stream-index":"003"},"id_lt":{"type":"string","x-stream-index":"006"},"id_lte":{"type":"string","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"MessageReadEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"last_read_message_id":{"type":"string","x-stream-index":"006"},"team":{"type":"string","x-stream-index":"004.001"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"default":"message.read","type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"MessageReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageRequest":{"properties":{"attachments":{"items":{"$ref":"#/components/schemas/AttachmentRequest"},"maximum":30,"type":"array","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"007"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"mentioned_users":{"items":{"type":"string"},"maximum":25,"type":"array","x-stream-index":"008"},"parent_id":{"type":"string","x-stream-index":"005"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"015"},"pinned":{"type":"boolean","x-stream-index":"013"},"pinned_at":{"format":"date-time","nullable":true,"type":"string","x-stream-index":"014"},"poll_id":{"type":"string","x-stream-index":"038"},"quoted_message_id":{"type":"string","x-stream-index":"009"},"show_in_channel":{"type":"boolean","x-stream-index":"006"},"silent":{"type":"boolean","x-stream-index":"012"},"text":{"type":"string","x-stream-index":"002"},"type":{"enum":["''regular","system"],"type":"string","x-stream-index":"011"}},"required":["attachments"],"type":"object"},"MessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MessageUndeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.undeleted","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MessageUndeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageUpdate":{"properties":{"change_set":{"$ref":"#/components/schemas/MessageChangeSet","x-stream-index":"002"},"old_text":{"type":"string","x-stream-index":"001"}},"type":"object"},"MessageUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.updated","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MessageUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageWithPendingMetadataResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"description":"Metadata attached to a message while it is pending","title":"Pending message metadata","type":"object","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ModerationResponse":{"properties":{"action":{"type":"string","x-stream-index":"004"},"explicit":{"format":"float","type":"number","x-stream-index":"002"},"spam":{"format":"float","type":"number","x-stream-index":"003"},"toxic":{"format":"float","type":"number","x-stream-index":"001"}},"required":["toxic","explicit","spam","action","automod_response"],"type":"object"},"MuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"003"}},"required":["channel_cids"],"type":"object"},"MuteChannelResponse":{"nullable":true,"properties":{"channel_mute":{"$ref":"#/components/schemas/ChannelMute","description":"Object with channel mute (if one channel was muted)","title":"Channel mute","x-stream-index":"001"},"channel_mutes":{"description":"Object with mutes (if multiple channels were muted)","items":{"$ref":"#/components/schemas/ChannelMute"},"title":"Channel mutes","type":"array","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"004.001"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"003"}},"required":["target_ids"],"type":"object"},"MuteUserResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"mute":{"$ref":"#/components/schemas/UserMute","description":"Object with user mute (if one user was muted)","title":"Mute","x-stream-index":"001"},"mutes":{"description":"Object with mutes (if multiple users were muted)","items":{"$ref":"#/components/schemas/UserMute"},"title":"Mutes","type":"array","x-stream-index":"002"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"NoiseCancellationSettings":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode"],"type":"object"},"NotificationAddedToChannelEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"type":{"default":"notification.added_to_channel","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationAddedToChannelEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelDeletedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"team":{"type":"string","x-stream-index":"001.001"},"type":{"default":"notification.channel_deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationChannelDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelMutesUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"001"},"type":{"default":"notification.channel_mutes_updated","type":"string","x-stream-index":"002.001"}},"required":["me","type","created_at"],"title":"NotificationChannelMutesUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelTruncatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"notification.channel_truncated","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationChannelTruncatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInviteAcceptedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invite_accepted","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInviteAcceptedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInviteRejectedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invite_rejected","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInviteRejectedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInvitedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invited","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInvitedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMarkReadEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"team":{"type":"string","x-stream-index":"002.001"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"006"},"type":{"default":"notification.mark_read","type":"string","x-stream-index":"001.001"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"007"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"005"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"008"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type","unread_count","total_unread_count","unread_channels","unread_threads"],"title":"NotificationMarkReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMarkUnreadEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"first_unread_message_id":{"type":"string","x-stream-index":"005"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"006"},"last_read_message_id":{"type":"string","x-stream-index":"012"},"team":{"type":"string","x-stream-index":"002.001"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"009"},"type":{"default":"notification.mark_unread","type":"string","x-stream-index":"001.001"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"010"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"008"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"007"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type","first_unread_message_id","last_read_at","unread_messages","unread_count","total_unread_count","unread_channels","unread_threads"],"title":"NotificationMarkUnreadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMutesUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"001"},"type":{"default":"notification.mutes_updated","type":"string","x-stream-index":"002.001"}},"required":["me","type","created_at"],"title":"NotificationMutesUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationNewMessageEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"004.004"},"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"notification.message_new","type":"string","x-stream-index":"003.001"}},"required":["message","type","created_at","cid","channel_id","channel_type"],"title":"NotificationNewMessageEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationRemovedFromChannelEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.removed_from_channel","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationRemovedFromChannelEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"OnlyUserIDRequest":{"properties":{"id":{"type":"string","x-stream-index":"001"}},"required":["id"],"type":"object"},"OwnUser":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"banned":{"type":"boolean","x-stream-index":"014"},"channel_mutes":{"items":{"$ref":"#/components/schemas/ChannelMute"},"type":"array","x-stream-index":"026"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"deactivated_at":{"format":"date-time","type":"string","x-stream-index":"012"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"type":"array","x-stream-index":"024"},"id":{"type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"type":"string","x-stream-index":"031"},"last_active":{"format":"date-time","type":"string","x-stream-index":"010"},"latest_hidden_channels":{"items":{"type":"string"},"type":"array","x-stream-index":"033"},"mutes":{"items":{"$ref":"#/components/schemas/UserMute"},"type":"array","x-stream-index":"025"},"online":{"type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"role":{"type":"string","x-stream-index":"004"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"032"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"028"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"029"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"027"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"030"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","created_at","updated_at","banned","online","devices","mutes","channel_mutes","unread_count","total_unread_count","unread_channels","unread_threads","language"],"type":"object"},"PaginationParamsRequest":{"properties":{"id_gt":{"format":"int32","type":"integer","x-stream-index":"004"},"id_gte":{"format":"int32","type":"integer","x-stream-index":"003"},"id_lt":{"format":"int32","type":"integer","x-stream-index":"006"},"id_lte":{"format":"int32","type":"integer","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"PendingMessage":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/Channel","x-stream-index":"007"},"message":{"$ref":"#/components/schemas/Message","description":"The message","title":"Message","x-stream-index":"009"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional data attached to the pending message. This data is discarded once the pending message is committed.","title":"Metadata","type":"object","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"type":"object"},"Policy":{"properties":{"action":{"type":"integer","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"name":{"type":"string","x-stream-index":"004"},"owner":{"type":"boolean","x-stream-index":"008"},"priority":{"format":"int32","type":"integer","x-stream-index":"009"},"resources":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"}},"required":["name","resources","roles","action","owner","priority","created_at","updated_at"],"type":"object"},"Poll":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"023"},"allow_answers":{"type":"boolean","x-stream-index":"010"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"009"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"015"},"created_at":{"format":"date-time","type":"string","x-stream-index":"021"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"020"},"created_by_id":{"type":"string","x-stream-index":"019"},"description":{"type":"string","x-stream-index":"005"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"007"},"id":{"type":"string","x-stream-index":"003"},"is_closed":{"type":"boolean","x-stream-index":"011"},"latest_answers":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array","x-stream-index":"017"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array"},"type":"object","x-stream-index":"016"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"008"},"name":{"type":"string","x-stream-index":"004"},"options":{"items":{"$ref":"#/components/schemas/PollOption"},"type":"array","x-stream-index":"013"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array","x-stream-index":"018"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"022"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"012"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"014"},"voting_visibility":{"type":"string","x-stream-index":"006"}},"required":["id","name","description","enforce_unique_vote","allow_user_suggested_options","allow_answers","vote_count","options","vote_counts_by_option","answers_count","latest_votes_by_option","latest_answers","own_votes","created_by_id","created_at","updated_at","Custom"],"type":"object"},"PollClosedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001"},"type":{"default":"poll.closed","type":"string","x-stream-index":"002.001"}},"required":["type","created_at"],"title":"PollClosedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollCreatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001"},"type":{"default":"poll.created","type":"string","x-stream-index":"002.001"}},"required":["type","created_at"],"title":"PollCreatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollDeletedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001"},"type":{"default":"poll.deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at"],"title":"PollDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollOption":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id","text","custom"],"type":"object"},"PollOptionRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"PollOptionRequest_1":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"}},"type":"object"},"PollOptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"poll_option":{"$ref":"#/components/schemas/PollOptionResponseData","x-stream-index":"001"}},"required":["poll_option","duration"],"type":"object"},"PollOptionResponseData":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id","text","custom"],"type":"object"},"PollRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"023"},"allow_answers":{"type":"boolean","x-stream-index":"010"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"009"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"015"},"created_at":{"format":"date-time","type":"string","x-stream-index":"021"},"created_by":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"020"},"created_by_id":{"type":"string","x-stream-index":"019"},"description":{"type":"string","x-stream-index":"005"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"007"},"id":{"type":"string","x-stream-index":"003"},"is_closed":{"type":"boolean","x-stream-index":"011"},"latest_answers":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array","x-stream-index":"017"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array"},"type":"object","x-stream-index":"016"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"008"},"name":{"type":"string","x-stream-index":"004"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest"},"type":"array","x-stream-index":"013"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array","x-stream-index":"018"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"022"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"012"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"014"},"voting_visibility":{"type":"string","x-stream-index":"006"}},"type":"object"},"PollResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"poll":{"$ref":"#/components/schemas/PollResponseData","x-stream-index":"001"}},"required":["poll","duration"],"type":"object"},"PollResponseData":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"allow_answers":{"type":"boolean","x-stream-index":"008"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"007"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"012"},"created_at":{"format":"date-time","type":"string","x-stream-index":"018"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"017"},"created_by_id":{"type":"string","x-stream-index":"016"},"description":{"type":"string","x-stream-index":"003"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"005"},"id":{"type":"string","x-stream-index":"001"},"is_closed":{"type":"boolean","x-stream-index":"009"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array"},"type":"object","x-stream-index":"014"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"006"},"name":{"type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionResponseData"},"type":"array","x-stream-index":"011"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array","x-stream-index":"015"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"019"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"010"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"013"},"voting_visibility":{"type":"string","x-stream-index":"004"}},"required":["id","name","description","voting_visibility","enforce_unique_vote","allow_user_suggested_options","allow_answers","vote_count","options","answers_count","vote_counts_by_option","latest_votes_by_option","own_votes","created_by_id","created_at","updated_at","Custom"],"type":"object"},"PollUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001"},"type":{"default":"poll.updated","type":"string","x-stream-index":"002.001"}},"required":["type","created_at"],"title":"PollUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollVote":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"004"},"is_answer":{"type":"boolean","x-stream-index":"006"},"option_id":{"type":"string","x-stream-index":"005"},"poll_id":{"type":"string","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"009"},"user_id":{"type":"string","x-stream-index":"008"}},"required":["poll_id","id","option_id","created_at","updated_at"],"type":"object"},"PollVoteCastedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"poll.vote_casted","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVote","x-stream-index":"001"}},"required":["type","created_at"],"title":"PollVoteCastedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollVoteChangedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"poll.vote_changed","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVote","x-stream-index":"001"}},"required":["type","created_at"],"title":"PollVoteChangedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollVoteRemovedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"poll.vote_removed","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVote","x-stream-index":"001"}},"required":["type","created_at"],"title":"PollVoteRemovedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollVoteRequest":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"004"},"is_answer":{"type":"boolean","x-stream-index":"006"},"option_id":{"type":"string","x-stream-index":"005"},"poll_id":{"type":"string","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"009"},"user_id":{"type":"string","x-stream-index":"008"}},"type":"object"},"PollVoteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVoteResponseData","x-stream-index":"001"}},"required":["duration"],"type":"object"},"PollVoteResponseData":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"005"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"id":{"type":"string","x-stream-index":"002"},"is_answer":{"type":"boolean","x-stream-index":"004"},"option_id":{"type":"string","x-stream-index":"003"},"poll_id":{"type":"string","x-stream-index":"001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"007"},"user_id":{"type":"string","x-stream-index":"006"}},"required":["poll_id","id","option_id","created_at","updated_at"],"type":"object"},"PollVotesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"votes":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array","x-stream-index":"001"}},"required":["votes","duration"],"type":"object"},"PushNotificationFields":{"properties":{"apn":{"$ref":"#/components/schemas/APNConfigFields","x-stream-index":"002"},"firebase":{"$ref":"#/components/schemas/FirebaseConfigFields","x-stream-index":"003"},"huawei":{"$ref":"#/components/schemas/HuaweiConfigFields","x-stream-index":"004"},"offline_only":{"type":"boolean","x-stream-index":"001.002"},"providers":{"items":{"$ref":"#/components/schemas/PushProvider"},"type":"array","x-stream-index":"006"},"version":{"type":"string","x-stream-index":"001.001"},"xiaomi":{"$ref":"#/components/schemas/XiaomiConfigFields","x-stream-index":"005"}},"required":["version","offline_only","apn","firebase","huawei","xiaomi"],"type":"object"},"PushNotificationSettings":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushNotificationSettingsRequest":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushProvider":{"nullable":true,"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name","type","created_at","updated_at"],"type":"object"},"QueryBannedUsersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"003.006"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.005"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"003.008"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.007"},"exclude_expired_bans":{"type":"boolean","x-stream-index":"006"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"type":"integer","x-stream-index":"004"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"005"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"type":"array","x-stream-index":"002"}},"required":["filter_conditions"],"type":"object"},"QueryBannedUsersResponse":{"nullable":true,"properties":{"bans":{"items":{"$ref":"#/components/schemas/BanResponse"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["bans","duration"],"type":"object"},"QueryChannelsRequest":{"nullable":true,"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"011.003"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"description":"Number of channels to limit","format":"int32","title":"Limit","type":"integer","x-stream-index":"008"},"member_limit":{"description":"Number of members to limit","format":"int32","maximum":100,"minimum":0,"title":"Member limit","type":"integer","x-stream-index":"007"},"message_limit":{"description":"Number of messages to limit","format":"int32","minimum":0,"title":"Message limit","type":"integer","x-stream-index":"006"},"offset":{"description":"Channel pagination offset","format":"int32","title":"Offset","type":"integer","x-stream-index":"009"},"presence":{"title":"Presence","type":"boolean","x-stream-index":"005"},"sort":{"description":"List of sort parameters","items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"state":{"description":"Whether to update channel state or not","title":"State","type":"boolean","x-stream-index":"004"},"watch":{"description":"Whether to start watching found channels or not","title":"Watch","type":"boolean","x-stream-index":"003"}},"title":"Query Channels Request","type":"object","x-stream-docs-page-id":"query_channels"},"QueryMembersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"006.010"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.009"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"006.012"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.011"},"filter_conditions":{"description":"Filter to apply to members","title":"Filter conditions","type":"object","x-stream-index":"004"},"id":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","x-stream-index":"002"},"limit":{"description":"Number of records to return","format":"int32","maximum":300,"minimum":0,"title":"Limit","type":"integer","x-stream-index":"006.003"},"members":{"description":"List of members to search in distinct channels","items":{"$ref":"#/components/schemas/ChannelMember"},"maximum":100,"title":"Members","type":"array","x-stream-index":"003"},"offset":{"description":"Number of records to offset","format":"int32","maximum":10000,"title":"Offset","type":"integer","x-stream-index":"006.004"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"title":"Sort","type":"array","x-stream-index":"005"},"type":{"description":"Channel type to interact with","maxLength":64,"title":"Channel type","type":"string","x-stream-index":"001"},"user_id_gt":{"type":"string","x-stream-index":"006.006"},"user_id_gte":{"type":"string","x-stream-index":"006.005"},"user_id_lt":{"type":"string","x-stream-index":"006.008"},"user_id_lte":{"type":"string","x-stream-index":"006.007"}},"required":["type","filter_conditions"],"type":"object"},"QueryMessageFlagsRequest":{"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"minimum":0,"type":"integer","x-stream-index":"003.003"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"003.004"},"show_deleted_messages":{"type":"boolean","x-stream-index":"002"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"type":"array","x-stream-index":"003.005"}},"type":"object"},"QueryMessageFlagsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flags":{"items":{"$ref":"#/components/schemas/MessageFlag"},"type":"array","x-stream-index":"001"}},"required":["flags","duration"],"type":"object"},"QueryPollVotesRequest":{"nullable":true,"properties":{"filter":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"002"},"prev":{"type":"string","x-stream-index":"005.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"type":"array","x-stream-index":"004"}},"required":["poll_id"],"type":"object"},"QueryPollsRequest":{"nullable":true,"properties":{"filter":{"type":"object","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"prev":{"type":"string","x-stream-index":"005.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"type":"array","x-stream-index":"003"}},"type":"object"},"QueryPollsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"polls":{"items":{"$ref":"#/components/schemas/PollResponseData"},"type":"array","x-stream-index":"001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["polls","duration"],"type":"object"},"QueryThreadsRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"participant_limit":{"description":"Limit the number of participants returned per each thread","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","x-stream-index":"004"},"prev":{"type":"string","x-stream-index":"005.003"},"reply_limit":{"description":"Limit the number of replies returned per each thread","format":"int32","maximum":10,"minimum":0,"title":"Reply limit","type":"integer","x-stream-index":"003"},"watch":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryThreadsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"threads":{"description":"List of enriched thread states","items":{"$ref":"#/components/schemas/ThreadStateResponse"},"title":"Threads","type":"array","x-stream-index":"001"}},"required":["threads","duration"],"type":"object"},"QueryUsersRequest":{"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"007.003"},"filter_conditions":{"description":"User filters","title":"Filter conditions","type":"object","x-stream-docs-page-id":"query_users","x-stream-index":"001"},"id_gt":{"type":"string","x-stream-index":"005.006"},"id_gte":{"type":"string","x-stream-index":"005.005"},"id_lt":{"type":"string","x-stream-index":"005.008"},"id_lte":{"type":"string","x-stream-index":"005.007"},"include_deactivated_users":{"type":"boolean","x-stream-index":"004"},"limit":{"format":"int32","maximum":100,"minimum":0,"type":"integer","x-stream-index":"005.003"},"offset":{"format":"int32","maximum":1000,"type":"integer","x-stream-index":"005.004"},"presence":{"description":"Request user presence status","title":"Presence","type":"boolean","x-stream-index":"003"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"}},"required":["filter_conditions"],"type":"object"},"Reaction":{"description":"Represents user reaction to a message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"008"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["message_id","type","score","created_at","updated_at","Custom"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionDeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"reaction.deleted","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ReactionDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ReactionNewEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"reaction.new","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ReactionNewEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ReactionRemovalResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionRequest":{"description":"Represents user reaction to a message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["type"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"type":{"default":"reaction.updated","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["message","reaction","cid","channel_id","channel_type","type","created_at"],"title":"ReactionUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Read":{"nullable":true,"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"004"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["last_read","unread_messages"],"type":"object"},"RecordSettings":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"SearchRequest":{"properties":{"filter_conditions":{"description":"Channel filter conditions","maximum":100,"minimum":1,"title":"Channel filter","type":"object","x-stream-docs-page-id":"query_channels","x-stream-index":"002"},"limit":{"description":"Number of messages to return","format":"int32","title":"Limit","type":"integer","x-stream-index":"004"},"message_filter_conditions":{"description":"Message filter conditions","title":"Message filter","type":"object","x-stream-index":"003"},"next":{"description":"Pagination parameter. Cannot be used with non-zero offset.","title":"Next","type":"string","x-stream-index":"007"},"offset":{"description":"Pagination offset. Cannot be used with sort or next.","format":"int32","title":"Offset","type":"integer","x-stream-index":"005"},"query":{"description":"Search phrase","title":"Query","type":"string","x-stream-index":"001"},"sort":{"description":"Sort parameters. Cannot be used with non-zero offset","items":{"$ref":"#/components/schemas/SortParam"},"title":"Sort","type":"array","x-stream-index":"006"}},"required":["filter_conditions"],"type":"object"},"SearchResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"next":{"description":"Value to pass to the next search query in order to paginate","title":"Next","type":"string","x-stream-index":"003"},"previous":{"description":"Value that points to the previous page. Pass as the next value in a search query to paginate backwards","title":"Previous","type":"string","x-stream-index":"004"},"results":{"description":"Search results","items":{"$ref":"#/components/schemas/SearchResult"},"title":"Results","type":"array","x-stream-index":"001"},"results_warning":{"$ref":"#/components/schemas/SearchWarning","description":"Warning about the search results","title":"Results Warning","x-stream-index":"002"}},"required":["results","duration"],"type":"object"},"SearchResult":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/SearchResultMessage","description":"Found message","title":"Message","x-stream-index":"001"}},"type":"object"},"SearchResultMessage":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.031"},"attachments":{"items":{"$ref":"#/components/schemas/Attachment"},"type":"array","x-stream-index":"001.011"},"before_message_send_failed":{"type":"boolean","x-stream-index":"001.043"},"channel":{"$ref":"#/components/schemas/ChannelResponse","description":"Channel object","title":"Channel","x-stream-index":"002"},"cid":{"type":"string","x-stream-index":"001.026"},"command":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.028"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"001.021"},"html":{"type":"string","x-stream-index":"001.007"},"i18n":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"001.041"},"id":{"type":"string","x-stream-index":"001.002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.037"},"latest_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.012"},"mentioned_users":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"001.049"},"mml":{"type":"string","x-stream-index":"001.005"},"own_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.013"},"parent_id":{"type":"string","x-stream-index":"001.017"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"001.048"},"pinned":{"type":"boolean","x-stream-index":"001.044"},"pinned_at":{"format":"date-time","type":"string","x-stream-index":"001.045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.047"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001.051"},"poll_id":{"type":"string","x-stream-index":"001.050"},"quoted_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.023"},"quoted_message_id":{"type":"string","x-stream-index":"001.022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.015"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.020"},"shadowed":{"type":"boolean","x-stream-index":"001.033"},"show_in_channel":{"type":"boolean","x-stream-index":"001.019"},"silent":{"type":"boolean","x-stream-index":"001.042"},"text":{"type":"string","x-stream-index":"001.004"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.025"},"type":{"type":"string","x-stream-index":"001.008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.029"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned","poll_id"],"type":"object"},"SearchWarning":{"properties":{"channel_search_cids":{"description":"Channel CIDs for the searched channels","items":{"type":"string"},"title":"Channel Search CIDs","type":"array","x-stream-index":"004"},"channel_search_count":{"description":"Number of channels searched","format":"int32","title":"Channel Search Count","type":"integer","x-stream-index":"003"},"warning_code":{"description":"Code corresponding to the warning","format":"int32","title":"Warning Code","type":"integer","x-stream-index":"002"},"warning_description":{"description":"Description of the warning","title":"Warning Description","type":"string","x-stream-index":"001"}},"required":["warning_description","warning_code"],"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/EventRequest","x-stream-index":"001"}},"required":["event"],"type":"object"},"SendMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"SendMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"enforce_unique":{"description":"Whether to replace all existing user reactions","title":"Enforce unique","type":"boolean","x-stream-index":"003"},"reaction":{"$ref":"#/components/schemas/ReactionRequest","x-stream-index":"002"},"skip_push":{"description":"Skips any mobile push notifications","title":"Skip push","type":"boolean","x-stream-index":"004"}},"required":["reaction"],"type":"object"},"ShowChannelRequest":{"nullable":true,"type":"object"},"ShowChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParam":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StopWatchingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SyncRequest":{"nullable":true,"properties":{"channel_cids":{"description":"List of channel CIDs to sync","items":{"type":"string"},"maximum":255,"minimum":1,"title":"Channel CIDs","type":"array","x-stream-index":"001"},"connection_id":{"type":"string","x-stream-index":"006.003"},"last_sync_at":{"description":"Date from which synchronization should happen","format":"date-time","title":"Last sync at","type":"string","x-stream-index":"002"},"watch":{"description":"If set to true this will start watching requested and newly added channels that user has access to. If error occurred with this option enabled and it is not an input error - channels will still be watched.","title":"Watch synced channels","type":"boolean","x-stream-index":"004"},"with_inaccessible_cids":{"description":"If set to true this will add 'inaccessible_cids' to response type","title":"With inaccessible CIDs","type":"boolean","x-stream-index":"003"}},"required":["last_sync_at"],"type":"object"},"SyncResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"events":{"description":"List of events","items":{"$ref":"#/components/schemas/WSEvent"},"title":"Events","type":"array","x-stream-index":"001"},"inaccessible_cids":{"description":"List of CIDs that user can't access","items":{"type":"string"},"title":"Inaccessible CIDs","type":"array","x-stream-index":"002"}},"required":["events","duration"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"Thread":{"description":"Represents a conversation thread linked to a specific message in a channel.","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"012"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"010"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom"],"title":"Thread","type":"object"},"ThreadParticipant":{"description":"Represents a user that is participating in a thread.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"app_pk":{"format":"int32","readOnly":true,"type":"integer","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"007"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"009"},"left_thread_at":{"description":"Left Thread At is the time when the user left the thread","format":"date-time","title":"Left Thread At","type":"string","x-stream-index":"008"},"thread_id":{"description":"Thead ID is unique string identifier of the thread","title":"ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserObject","description":"User is the user object","title":"User","x-stream-index":"006"},"user_id":{"description":"User ID is unique string identifier of the user","title":"User ID","type":"string","x-stream-index":"005"}},"required":["app_pk","channel_cid","created_at","last_read_at","Custom"],"title":"ThreadParticipant","type":"object"},"ThreadResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"created_by_user_id":{"type":"string","x-stream-index":"005"},"custom":{"type":"object","x-stream-index":"015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"010"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"004"},"parent_message_id":{"type":"string","x-stream-index":"003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"008"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"009"},"title":{"type":"string","x-stream-index":"014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom"],"type":"object"},"ThreadState":{"description":"Represents a conversation thread linked to a specific message in a channel.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"001.004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"001.003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"001.013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"001.008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"001.015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"001.012"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"001.006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"001.005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"001.010"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"001.009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"001.016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"001.014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom","latest_replies"],"title":"Thread","type":"object"},"ThreadStateResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.002"},"channel_cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.006"},"created_by_user_id":{"type":"string","x-stream-index":"001.005"},"custom":{"type":"object","x-stream-index":"001.015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"001.010"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.004"},"parent_message_id":{"type":"string","x-stream-index":"001.003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"001.008"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.009"},"title":{"type":"string","x-stream-index":"001.014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom","latest_replies"],"type":"object"},"ThreadUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"default":"thread.updated","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ThreadUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Thresholds":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranslateMessageRequest":{"nullable":true,"properties":{"language":{"description":"Language to translate message to","enum":["af","sq","am","ar","az","bn","bs","bg","zh","zh-TW","hr","cs","da","fa-AF","nl","en","et","fi","fr","fr-CA","ka","de","el","ha","he","hi","hu","id","it","ja","ko","lv","ms","no","fa","ps","pl","pt","ro","ru","sr","sk","sl","so","es","es-MX","sw","sv","tl","ta","th","tr","uk","ur","vi"],"title":"Language","type":"string","x-stream-index":"002"}},"required":["language"],"type":"object"},"TruncateChannelRequest":{"nullable":true,"properties":{"hard_delete":{"description":"Permanently delete channel data (messages, reactions, etc.)","title":"Hard delete","type":"boolean","x-stream-index":"002"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"004"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"005"},"truncated_at":{"description":"Truncate channel data up to `truncated_at`. The system message (if provided) creation time is always greater than `truncated_at`","format":"date-time","title":"Truncated at","type":"string","x-stream-index":"006"}},"type":"object"},"TruncateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"003"}},"required":["duration"],"type":"object"},"TypingStartEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"parent_id":{"type":"string","x-stream-index":"001"},"type":{"default":"typing.start","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"TypingStartEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"TypingStopEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"parent_id":{"type":"string","x-stream-index":"001"},"type":{"default":"typing.stop","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"TypingStopEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UnmuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"001.002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"001.003"}},"required":["channel_cids"],"type":"object"},"UnmuteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["duration"],"type":"object"},"UnmuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"001.002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"001.003"}},"required":["target_ids"],"type":"object"},"UnreadCountsChannel":{"properties":{"channel_id":{"type":"string","x-stream-index":"001"},"last_read":{"format":"date-time","type":"string","x-stream-index":"003"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["channel_id","unread_count","last_read"],"type":"object"},"UnreadCountsChannelType":{"properties":{"channel_count":{"format":"int32","type":"integer","x-stream-index":"002"},"channel_type":{"type":"string","x-stream-index":"001"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"003"}},"required":["channel_type","channel_count","unread_count"],"type":"object"},"UnreadCountsThread":{"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"003"},"parent_message_id":{"type":"string","x-stream-index":"004"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["unread_count","last_read","last_read_message_id","parent_message_id"],"type":"object"},"UpdateChannelPartialRequest":{"nullable":true,"properties":{"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["set","unset"],"type":"object"},"UpdateChannelPartialResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelRequest":{"nullable":true,"properties":{"accept_invite":{"description":"Set to `true` to accept the invite","title":"Accept invite","type":"boolean","x-stream-index":"008"},"add_members":{"description":"List of user IDs to add to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Add members","type":"array","x-stream-index":"001"},"add_moderators":{"description":"List of user IDs to make channel moderators","items":{"type":"string"},"maximum":100,"title":"Add moderators","type":"array","x-stream-index":"003"},"assign_roles":{"description":"List of channel member role assignments. If any specified user is not part of the channel, the request will fail","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Assign roles","type":"array","x-stream-index":"006"},"cooldown":{"description":"Sets cool down period for the channel in seconds","format":"int32","maximum":120,"minimum":0,"title":"Cool down","type":"integer","x-stream-index":"007"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"013.001"},"demote_moderators":{"description":"List of user IDs to take away moderators status from","items":{"type":"string"},"maximum":100,"title":"Demote moderators","type":"array","x-stream-index":"004"},"hide_history":{"description":"Set to `true` to hide channel's history when adding new members","title":"Hide history","type":"boolean","x-stream-index":"012"},"invites":{"description":"List of user IDs to invite to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Invites","type":"array","x-stream-index":"005"},"message":{"$ref":"#/components/schemas/MessageRequest","description":"Message to send to the chat when channel is successfully updated","title":"Message","x-stream-index":"010"},"reject_invite":{"description":"Set to `true` to reject the invite","title":"Reject invite","type":"boolean","x-stream-index":"009"},"remove_members":{"description":"List of user IDs to remove from the channel","items":{"type":"string"},"maximum":100,"title":"Remove members","type":"array","x-stream-index":"002"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"011"}},"required":["remove_members","add_moderators","demote_moderators"],"title":"Channel update request","type":"object","x-stream-docs-page-id":"channel_update"},"UpdateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"003"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateMessagePartialRequest":{"nullable":true,"properties":{"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"skip_enrich_url":{"type":"boolean","x-stream-index":"001"},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"}},"required":["set","unset"],"type":"object"},"UpdateMessagePartialResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"UpdateMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdatePollOptionRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"id":{"maxLength":255,"type":"string","x-stream-index":"002"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"003"}},"required":["poll_id","id","text"],"type":"object"},"UpdatePollPartialRequest":{"nullable":true,"properties":{"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"}},"required":["poll_id","set","unset"],"type":"object"},"UpdatePollRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"011"},"allow_answers":{"type":"boolean","x-stream-index":"009"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"008"},"description":{"type":"string","x-stream-index":"003"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"005"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"is_closed":{"type":"boolean","x-stream-index":"010"},"max_votes_allowed":{"format":"int32","maximum":10,"type":"integer","x-stream-index":"007"},"name":{"type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest"},"maximum":100,"type":"array","x-stream-index":"004"},"voting_visibility":{"enum":["anonymous","public"],"type":"string","x-stream-index":"006"}},"required":["id","name"],"type":"object"},"UpdateThreadPartialRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"set":{"type":"object","x-stream-index":"004.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"004.002"}},"required":["set","unset"],"type":"object"},"UpdateThreadPartialResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadResponse","description":"Updated thread (not enriched)","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"UpdateUserPartialRequest":{"nullable":true,"properties":{"id":{"description":"User ID to update","title":"ID","type":"string","x-stream-index":"001"},"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["id","set","unset"],"type":"object"},"UpdateUsersRequest":{"nullable":true,"properties":{"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObjectRequest"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users"],"type":"object"},"UpdateUsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"membership_deletion_task_id":{"type":"string","x-stream-index":"002"},"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObject"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users","membership_deletion_task_id","duration"],"type":"object"},"UserBannedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"006.002"},"channel_type":{"type":"string","x-stream-index":"006.003"},"cid":{"type":"string","x-stream-index":"006.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008.002"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"},"expiration":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"type":{"default":"user.banned","type":"string","x-stream-index":"008.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"007.001"}},"required":["created_by","shadow","cid","channel_id","channel_type","type","created_at"],"title":"UserBannedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserDeactivatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"},"type":{"default":"user.deactivated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["created_by","type","created_at"],"title":"UserDeactivatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserDeletedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"delete_conversation_channels":{"type":"boolean","x-stream-index":"005"},"hard_delete":{"type":"boolean","x-stream-index":"003.001"},"mark_messages_deleted":{"type":"boolean","x-stream-index":"004"},"type":{"default":"user.deleted","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["type","created_at","hard_delete","mark_messages_deleted","delete_conversation_channels"],"title":"UserDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserMute":{"nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"target":{"$ref":"#/components/schemas/UserObject","description":"User who's muted","title":"Target","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"UserMutedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"target_user":{"type":"string","x-stream-index":"001"},"target_users":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"type":{"default":"user.muted","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at"],"title":"UserMutedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserObject":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"007"},"deactivated_at":{"description":"Date of deactivation","format":"date-time","readOnly":true,"title":"Deactivated at","type":"string","x-stream-index":"012"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","readOnly":true,"title":"Deleted at","type":"string","x-stream-index":"011"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"last_active":{"description":"Date of last activity","format":"date-time","readOnly":true,"title":"Last active","type":"string","x-stream-index":"010"},"online":{"description":"Whether a user online or not","readOnly":true,"title":"Online","type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","banned","online"],"title":"User object","type":"object"},"UserObjectRequest":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettingsRequest","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"}},"required":["id"],"title":"User object","type":"object"},"UserPresenceChangedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.presence.changed","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"UserPresenceChangedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserReactivatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.reactivated","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["type","created_at"],"title":"UserReactivatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"UserResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.005"},"ban_expires":{"format":"date-time","type":"string","x-stream-index":"001.015"},"banned":{"type":"boolean","x-stream-index":"001.014"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.007"},"deactivated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.012"},"deleted_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.011"},"id":{"type":"string","x-stream-index":"001.003"},"invisible":{"type":"boolean","x-stream-index":"001.021"},"language":{"type":"string","x-stream-index":"001.031"},"last_active":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.010"},"online":{"readOnly":true,"type":"boolean","x-stream-index":"001.020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"001.023"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.038"},"role":{"type":"string","x-stream-index":"001.004"},"shadow_banned":{"description":"Whether user is shadow banned or not","title":"Shadow banned","type":"boolean","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.032"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.008"}},"required":["id","role","Custom","banned","online","shadow_banned"],"type":"object"},"UserUnbannedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"shadow":{"type":"boolean","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"004.001"},"type":{"default":"user.unbanned","type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["shadow","cid","channel_id","channel_type","type","created_at"],"title":"UserUnbannedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.updated","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["type","created_at"],"title":"UserUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserWatchingStartEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"user.watching.start","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"UserWatchingStartEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserWatchingStopEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.watching.stop","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"UserWatchingStopEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"users":{"description":"List of found users","items":{"$ref":"#/components/schemas/UserResponse"},"title":"Users","type":"array","x-stream-index":"001"}},"required":["users","duration"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VoteDataRequest":{"properties":{"Option":{"$ref":"#/components/schemas/PollOptionRequest","x-stream-index":"003"},"answer_text":{"type":"string","x-stream-index":"002"},"option_id":{"maxLength":255,"type":"string","x-stream-index":"001"}},"type":"object"},"WSEvent":{"description":"The discriminator object for all websocket events, it maps events' payload to the final type","discriminator":{"mapping":{"channel.created":"#/components/schemas/ChannelCreatedEvent","channel.deleted":"#/components/schemas/ChannelDeletedEvent","channel.frozen":"#/components/schemas/ChannelFrozenEvent","channel.hidden":"#/components/schemas/ChannelHiddenEvent","channel.kicked":"#/components/schemas/ChannelKickedEvent","channel.truncated":"#/components/schemas/ChannelTruncatedEvent","channel.unfrozen":"#/components/schemas/ChannelUnFrozenEvent","channel.updated":"#/components/schemas/ChannelUpdatedEvent","channel.visible":"#/components/schemas/ChannelVisibleEvent","custom":"#/components/schemas/AnyEvent","health.check":"#/components/schemas/HealthCheckEvent","member.added":"#/components/schemas/MemberAddedEvent","member.removed":"#/components/schemas/MemberRemovedEvent","member.updated":"#/components/schemas/MemberUpdatedEvent","message.deleted":"#/components/schemas/MessageDeletedEvent","message.new":"#/components/schemas/MessageNewEvent","message.read":"#/components/schemas/MessageReadEvent","message.undeleted":"#/components/schemas/MessageUndeletedEvent","message.updated":"#/components/schemas/MessageUpdatedEvent","notification.added_to_channel":"#/components/schemas/NotificationAddedToChannelEvent","notification.channel_deleted":"#/components/schemas/NotificationChannelDeletedEvent","notification.channel_mutes_updated":"#/components/schemas/NotificationChannelMutesUpdatedEvent","notification.channel_truncated":"#/components/schemas/NotificationChannelTruncatedEvent","notification.invite_accepted":"#/components/schemas/NotificationInviteAcceptedEvent","notification.invite_rejected":"#/components/schemas/NotificationInviteRejectedEvent","notification.invited":"#/components/schemas/NotificationInvitedEvent","notification.mark_read":"#/components/schemas/NotificationMarkReadEvent","notification.mark_unread":"#/components/schemas/NotificationMarkUnreadEvent","notification.message_new":"#/components/schemas/NotificationNewMessageEvent","notification.mutes_updated":"#/components/schemas/NotificationMutesUpdatedEvent","notification.removed_from_channel":"#/components/schemas/NotificationRemovedFromChannelEvent","notification.thread_message_new":"#/components/schemas/MessageNewEvent","poll.closed":"#/components/schemas/PollClosedEvent","poll.created":"#/components/schemas/PollCreatedEvent","poll.deleted":"#/components/schemas/PollDeletedEvent","poll.updated":"#/components/schemas/PollUpdatedEvent","poll.vote_casted":"#/components/schemas/PollVoteCastedEvent","poll.vote_changed":"#/components/schemas/PollVoteChangedEvent","poll.vote_removed":"#/components/schemas/PollVoteRemovedEvent","reaction.deleted":"#/components/schemas/ReactionDeletedEvent","reaction.new":"#/components/schemas/ReactionNewEvent","reaction.updated":"#/components/schemas/ReactionUpdatedEvent","thread.updated":"#/components/schemas/ThreadUpdatedEvent","typing.start":"#/components/schemas/TypingStartEvent","typing.stop":"#/components/schemas/TypingStopEvent","user.banned":"#/components/schemas/UserBannedEvent","user.deactivated":"#/components/schemas/UserDeactivatedEvent","user.deleted":"#/components/schemas/UserDeletedEvent","user.muted":"#/components/schemas/UserMutedEvent","user.presence.changed":"#/components/schemas/UserPresenceChangedEvent","user.reactivated":"#/components/schemas/UserReactivatedEvent","user.unbanned":"#/components/schemas/UserUnbannedEvent","user.updated":"#/components/schemas/UserUpdatedEvent","user.watching.start":"#/components/schemas/UserWatchingStartEvent","user.watching.stop":"#/components/schemas/UserWatchingStopEvent"},"propertyName":"type"},"oneOf":[{"$ref":"#/components/schemas/AnyEvent"},{"$ref":"#/components/schemas/ChannelCreatedEvent"},{"$ref":"#/components/schemas/ChannelDeletedEvent"},{"$ref":"#/components/schemas/ChannelFrozenEvent"},{"$ref":"#/components/schemas/ChannelHiddenEvent"},{"$ref":"#/components/schemas/ChannelKickedEvent"},{"$ref":"#/components/schemas/ChannelTruncatedEvent"},{"$ref":"#/components/schemas/ChannelUnFrozenEvent"},{"$ref":"#/components/schemas/ChannelUpdatedEvent"},{"$ref":"#/components/schemas/ChannelVisibleEvent"},{"$ref":"#/components/schemas/HealthCheckEvent"},{"$ref":"#/components/schemas/MemberAddedEvent"},{"$ref":"#/components/schemas/MemberRemovedEvent"},{"$ref":"#/components/schemas/MemberUpdatedEvent"},{"$ref":"#/components/schemas/MessageDeletedEvent"},{"$ref":"#/components/schemas/MessageNewEvent"},{"$ref":"#/components/schemas/MessageNewEvent"},{"$ref":"#/components/schemas/MessageReadEvent"},{"$ref":"#/components/schemas/MessageUndeletedEvent"},{"$ref":"#/components/schemas/MessageUpdatedEvent"},{"$ref":"#/components/schemas/NotificationAddedToChannelEvent"},{"$ref":"#/components/schemas/NotificationChannelDeletedEvent"},{"$ref":"#/components/schemas/NotificationChannelMutesUpdatedEvent"},{"$ref":"#/components/schemas/NotificationChannelTruncatedEvent"},{"$ref":"#/components/schemas/NotificationInviteAcceptedEvent"},{"$ref":"#/components/schemas/NotificationInviteRejectedEvent"},{"$ref":"#/components/schemas/NotificationInvitedEvent"},{"$ref":"#/components/schemas/NotificationMarkReadEvent"},{"$ref":"#/components/schemas/NotificationMarkUnreadEvent"},{"$ref":"#/components/schemas/NotificationMutesUpdatedEvent"},{"$ref":"#/components/schemas/NotificationNewMessageEvent"},{"$ref":"#/components/schemas/NotificationRemovedFromChannelEvent"},{"$ref":"#/components/schemas/PollClosedEvent"},{"$ref":"#/components/schemas/PollCreatedEvent"},{"$ref":"#/components/schemas/PollDeletedEvent"},{"$ref":"#/components/schemas/PollUpdatedEvent"},{"$ref":"#/components/schemas/PollVoteCastedEvent"},{"$ref":"#/components/schemas/PollVoteChangedEvent"},{"$ref":"#/components/schemas/PollVoteRemovedEvent"},{"$ref":"#/components/schemas/ReactionDeletedEvent"},{"$ref":"#/components/schemas/ReactionNewEvent"},{"$ref":"#/components/schemas/ReactionUpdatedEvent"},{"$ref":"#/components/schemas/ThreadUpdatedEvent"},{"$ref":"#/components/schemas/TypingStartEvent"},{"$ref":"#/components/schemas/TypingStopEvent"},{"$ref":"#/components/schemas/UserBannedEvent"},{"$ref":"#/components/schemas/UserDeactivatedEvent"},{"$ref":"#/components/schemas/UserDeletedEvent"},{"$ref":"#/components/schemas/UserMutedEvent"},{"$ref":"#/components/schemas/UserPresenceChangedEvent"},{"$ref":"#/components/schemas/UserReactivatedEvent"},{"$ref":"#/components/schemas/UserUnbannedEvent"},{"$ref":"#/components/schemas/UserUpdatedEvent"},{"$ref":"#/components/schemas/UserWatchingStartEvent"},{"$ref":"#/components/schemas/UserWatchingStopEvent"}]},"WrappedUnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"001.004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"001.005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001.001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"001.002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads","duration"],"type":"object"},"XiaomiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"package_name":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"connectRequestQueryRequest":{"nullable":true,"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v105.1.0"},"openapi":"3.0.3","paths":{"/app":{"get":{"description":"This Method returns the application settings\n","operationId":"GetApp","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetApplicationResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get App Settings","tags":["Settings"]}},"/calls":{"post":{"description":"Retrieves the token to join a call\n\nRequired permissions:\n- JoinCall\n- ReadChannel\n","operationId":"GetCallToken","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Token"}},"/calls/{call_id}":{"post":{"description":"Retrieves the token to join a call\n\nRequired permissions:\n- JoinCall\n- ReadChannel\n","operationId":"GetCallToken","parameters":[{"in":"path","name":"call_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Token"}},"/channels":{"post":{"description":"Query channels with filter query\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryChannels","parameters":[{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"011.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryChannelsRequest"}}},"description":"Query Channels Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelsResponse"}}},"description":"Channels list"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query channels","tags":["Channels"]}},"/channels/delete":{"post":{"description":"Allows to delete several channels at once asynchronously\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deletes channels asynchronously","tags":["Channels","GDPR"]}},"/channels/read":{"post":{"description":"Marks channels as read up to the specific message. If no channels is given, mark all channel as read\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkChannelsRead","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChannelsReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark channels as read","tags":["Channels","Messages"]}},"/channels/{type}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/channels/{type}/{id}":{"delete":{"description":"Deletes channel\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"hard_delete","schema":{"type":"boolean","x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel","tags":["Channels"]},"patch":{"description":"Updates certain fields of the channel\n\nSends events:\n- channel.updated\n\nRequired permissions:\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n","operationId":"UpdateChannelPartial","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update channel","tags":["Channels"]},"post":{"description":"Change channel data\n\nSends events:\n- channel.updated\n- member.added\n- member.removed\n- member.updated\n- message.new\n\nRequired permissions:\n- AddOwnChannelMembership\n- RemoveOwnChannelMembership\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n- UpdateChannelMembers\n","operationId":"UpdateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelRequest"}}},"description":"Channel update request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel","tags":["Channels"]}},"/channels/{type}/{id}/call":{"post":{"description":"Creates a call\n\nRequired permissions:\n- CreateCall\n- ReadChannel\n","operationId":"CreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create a call"}},"/channels/{type}/{id}/event":{"post":{"description":"Sends event to the channel\n\nRequired permissions:\n- SendCustomEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send event","tags":["Events"]}},"/channels/{type}/{id}/file":{"delete":{"description":"Deletes previously uploaded file\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete file","tags":["Messages","Files"]},"post":{"description":"Uploads file\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload file","tags":["Messages","Files"]}},"/channels/{type}/{id}/hide":{"post":{"description":"Marks channel as hidden for current user\n\nSends events:\n- channel.hidden\n\nRequired permissions:\n- ReadChannel\n","operationId":"HideChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Hide channel","tags":["Channels"]}},"/channels/{type}/{id}/image":{"delete":{"description":"Deletes previously uploaded image\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete image","tags":["Messages","Files"]},"post":{"description":"Uploads image\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ImageUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload image","tags":["Messages","Files"]}},"/channels/{type}/{id}/message":{"post":{"description":"Sends new message to the specified channel\n\nSends events:\n- message.new\n- message.updated\n\nRequired permissions:\n- AddLinks\n- CreateMessage\n- PinMessage\n- SkipChannelCooldown\n- SkipMessageModeration\n- UseFrozenChannel\n","operationId":"SendMessage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"009.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"009.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send new message","tags":["Messages"]}},"/channels/{type}/{id}/messages":{"get":{"description":"Returns list messages found by IDs\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetManyMessages","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"ids","schema":{"description":"List of comma-separated IDs","items":{"type":"string"},"maximum":50,"minimum":1,"title":"IDs","type":"array","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetManyMessagesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get many messages","tags":["Messages"]}},"/channels/{type}/{id}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID (maximum length of 64 characters)","title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/channels/{type}/{id}/read":{"post":{"description":"Marks channel as read up to the specific message\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkRead","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark read","tags":["Channels","Messages"]}},"/channels/{type}/{id}/show":{"post":{"description":"Shows previously hidden channel\n\nSends events:\n- channel.visible\n","operationId":"ShowChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Show channel","tags":["Channels"]}},"/channels/{type}/{id}/stop-watching":{"post":{"description":"Call this Method to stop receiving channel events\n\nSends events:\n- user.watching.stop\n","operationId":"StopWatchingChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStopWatchingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopWatchingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop watching channel","tags":["Channels"]}},"/channels/{type}/{id}/truncate":{"post":{"description":"Truncates channel\n\nSends events:\n- channel.truncated\n\nRequired permissions:\n- DeleteChannel\n- TruncateChannel\n","operationId":"TruncateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Truncate channel","tags":["Channels"]}},"/channels/{type}/{id}/unread":{"post":{"description":"Marks channel as unread from a specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkUnread","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkUnreadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark unread","tags":["Channels","Messages"]}},"/connect":{"get":{"description":"Establishes WebSocket connection for user\n\nSends events:\n- user.updated\n","operationId":"Connect","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Connect (WebSocket)","tags":["Users"]}},"/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device","tags":["Devices"]},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices","tags":["Devices"]},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device","tags":["Devices","Push"]}},"/guest":{"post":{"description":"Creates guest user\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create guest","tags":["Users"]}},"/longpoll":{"get":{"description":"WebSocket fallback transport endpoint\n\nSends events:\n- user.updated\n","operationId":"LongPoll","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"},{"in":"query","name":"connection_id","schema":{"maxLength":36,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Long Poll (Transport)","tags":["Users"]}},"/members":{"get":{"description":"Find and filter channel members\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryMembers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query members","tags":["Channels"]}},"/messages/{id}":{"delete":{"description":"Deletes message\n\nSends events:\n- message.deleted\n\nRequired permissions:\n- DeleteMessage\n","operationId":"DeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"hard","schema":{"description":"Delete all message reactions and replies as well","title":"Hard","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"deleted_by","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete message","tags":["Messages"]},"get":{"description":"Returns message by ID\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"show_deleted_message","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageWithPendingMetadataResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get message","tags":["Messages"]},"post":{"description":"Updates message with new data\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update message","tags":["Messages"]},"put":{"description":"Updates certain fields of the message\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessagePartial","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially message update","tags":["Messages"]}},"/messages/{id}/action":{"post":{"description":"Executes message command action with given parameters\n\nSends events:\n- message.new\n\nRequired permissions:\n- RunMessageAction\n","operationId":"RunMessageAction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageActionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Run message command action","tags":["Messages"]}},"/messages/{id}/reaction":{"post":{"description":"Sends reaction to specified message\n\nSends events:\n- reaction.new\n- reaction.updated\n\nRequired permissions:\n- CreateReaction\n- UseFrozenChannel\n","operationId":"SendReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to send reaction for","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction","tags":["Messages","Reactions"]}},"/messages/{id}/reaction/{type}":{"delete":{"description":"Removes user reaction from the message\n\nSends events:\n- reaction.deleted\n\nRequired permissions:\n- DeleteReaction\n","operationId":"DeleteReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to remove reaction from","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"type","required":true,"schema":{"description":"Reaction type to remove","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionRemovalResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete reaction","tags":["Messages","Reactions"]}},"/messages/{id}/reactions":{"get":{"description":"Returns list of reactions of specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReactions","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"limit","schema":{"description":"Number of records to return","format":"int32","title":"Limit","type":"integer","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"offset","schema":{"description":"Number of records to offset","format":"int32","title":"Offset","type":"integer","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetReactionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get reactions","tags":["Messages","Reactions"]}},"/messages/{id}/translate":{"post":{"description":"Translates message to a given language using automated translation software\n\nSends events:\n- message.updated\n\nRequired permissions:\n- ReadChannel\n","operationId":"TranslateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Translate message","tags":["Messages"]}},"/messages/{message_id}/polls/{poll_id}/vote":{"post":{"description":"Cast a vote on a poll\n\nSends events:\n- poll.vote_casted\n\nRequired permissions:\n- CastVote\n","operationId":"CastPollVote","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CastPollVoteRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVoteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Cast vote","tags":["Polls"]}},"/messages/{message_id}/polls/{poll_id}/vote/{vote_id}":{"delete":{"description":"Delete a vote from a poll\n\nSends events:\n- poll.vote_removed\n\nRequired permissions:\n- CastVote\n","operationId":"RemovePollVote","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"path","name":"vote_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"004"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVoteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete vote","tags":["Polls"]}},"/messages/{parent_id}/replies":{"get":{"description":"Returns replies (thread) of the message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReplies","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"description":"ID of a message which replies to return","title":"Parent ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"id_gte","schema":{"type":"string","x-stream-index":"002.001.003"}},{"in":"query","name":"id_gt","schema":{"type":"string","x-stream-index":"002.001.004"}},{"in":"query","name":"id_lte","schema":{"type":"string","x-stream-index":"002.001.005"}},{"in":"query","name":"id_lt","schema":{"type":"string","x-stream-index":"002.001.006"}},{"in":"query","name":"created_at_after_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.007"}},{"in":"query","name":"created_at_after","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.008"}},{"in":"query","name":"created_at_before_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.009"}},{"in":"query","name":"created_at_before","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.010"}},{"in":"query","name":"id_around","schema":{"type":"string","x-stream-index":"002.001.011"}},{"in":"query","name":"created_at_around","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.012"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get replies","tags":["Messages"]}},"/moderation/ban":{"delete":{"description":"Removes previously applied ban\n\nSends events:\n- user.unbanned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Unban","parameters":[{"in":"query","name":"target_user_id","schema":{"type":"string","x-stream-index":"001"}},{"in":"query","name":"type","schema":{"type":"string","x-stream-index":"002"}},{"in":"query","name":"id","schema":{"type":"string","x-stream-index":"003"}},{"in":"query","name":"created_by","schema":{"type":"string","x-stream-index":"004"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unban user","tags":["Users","Moderation"]},"post":{"description":"Restricts user activity either in specific channel or globally\n\nSends events:\n- user.banned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Ban","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BanRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Ban user","tags":["Users","Moderation"]}},"/moderation/flag":{"post":{"description":"Reports message or user for review by moderators\n\nSends events:\n- message.flagged\n- user.flagged\n\nRequired permissions:\n- FlagMessage\n- FlagUser\n","operationId":"Flag","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Flag","tags":["Moderation","Messages","Users"]}},"/moderation/flags/message":{"get":{"description":"Find and filter message flags\n\nRequired permissions:\n- ReadMessageFlags\n","operationId":"QueryMessageFlags","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Message Flags","tags":["Messages","Moderation"]}},"/moderation/mute":{"post":{"description":"Mutes one or several users\n\nSends events:\n- user.muted\n\nRequired permissions:\n- MuteUser\n","operationId":"MuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute user","tags":["Users","Moderation"]}},"/moderation/mute/channel":{"post":{"description":"Mutes channel for user\n\nSends events:\n- channel.muted\n\nRequired permissions:\n- MuteChannel\n","operationId":"MuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute channel","tags":["Channels"]}},"/moderation/unmute":{"post":{"description":"Unmutes previously muted user\n\nSends events:\n- user.unmuted\n\nRequired permissions:\n- MuteUser\n","operationId":"UnmuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute user","tags":["Users","Moderation"]}},"/moderation/unmute/channel":{"post":{"description":"Unmutes channel for user\n\nSends events:\n- channel.unmuted\n\nRequired permissions:\n- MuteChannel\n","operationId":"UnmuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute channel","tags":["Channels"]}},"/og":{"get":{"description":"Get an OpenGraph attachment for a link\n","operationId":"GetOG","parameters":[{"in":"query","name":"url","schema":{"description":"URL to be scraped","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOGResponse"}}},"description":"Get OG Attachment"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get OG","tags":["Messages"]}},"/polls":{"post":{"description":"Creates a new poll\n\nSends events:\n- poll.created\n\nRequired permissions:\n- CreatePoll\n","operationId":"CreatePoll","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePollRequest"}}},"description":"Create Poll Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create poll","tags":["Polls"]},"put":{"description":"Updates a poll\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePoll","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update poll","tags":["Polls"]}},"/polls/query":{"post":{"description":"Queries polls\n","operationId":"QueryPolls","parameters":[{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query polls","tags":["Polls"]}},"/polls/{poll_id}":{"delete":{"description":"Deletes a poll\n\nSends events:\n- poll.deleted\n\nRequired permissions:\n- DeletePoll\n","operationId":"DeletePoll","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete poll","tags":["Polls"]},"get":{"description":"Retrieves a poll\n","operationId":"GetPoll","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get poll","tags":["Polls"]},"patch":{"description":"Updates a poll partially\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePollPartial","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partial update poll","tags":["Polls"]}},"/polls/{poll_id}/options":{"post":{"description":"Creates a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- CastVote\n- UpdatePoll\n","operationId":"CreatePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePollOptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create poll option","tags":["Polls"]},"put":{"description":"Updates a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollOptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update poll option","tags":["Polls"]}},"/polls/{poll_id}/options/{option_id}":{"delete":{"description":"Deletes a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"DeletePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"path","name":"option_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete poll option","tags":["Polls"]},"get":{"description":"Retrieves a poll option\n","operationId":"GetPollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"path","name":"option_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get poll option","tags":["Polls"]}},"/polls/{poll_id}/votes":{"post":{"description":"Queries votes\n","operationId":"QueryPollVotes","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollVotesRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVotesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query votes","tags":["Polls"]}},"/query_banned_users":{"get":{"description":"Find and filter channel scoped or global user bans\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryBannedUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Banned Users","tags":["Users","Moderation"]}},"/search":{"get":{"description":"Search messages across channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Search","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest","description":"JSON object with search payload","title":"Payload","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Search messages","tags":["Channels","Messages"]}},"/sync":{"post":{"description":"Returns all events happened since client disconnect in specified channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Sync","parameters":[{"in":"query","name":"with_inaccessible_cids","schema":{"description":"If set to true this will add 'inaccessible_cids' to response type","title":"With inaccessible CIDs","type":"boolean","x-stream-index":"003"}},{"in":"query","name":"watch","schema":{"description":"If set to true this will start watching requested and newly added channels that user has access to. If error occurred with this option enabled and it is not an input error - channels will still be watched.","title":"Watch synced channels","type":"boolean","x-stream-index":"004"}},{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"006.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Sync","tags":["Channels","Events"]}},"/threads":{"post":{"description":"Returns the list of threads for specific user\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryThreads","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Threads","tags":["Threads"]}},"/threads/{message_id}":{"get":{"description":"Return a specific thread\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetThread","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"watch","schema":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"reply_limit","schema":{"description":"Limit the number of replies returned","format":"int32","minimum":0,"title":"Reply limit","type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"participant_limit","schema":{"description":"Limit the number of participants returned","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetThreadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Thread","tags":["Threads"]},"patch":{"description":"Updates certain fields of the thread\n\nSends events:\n- thread.updated\n\nRequired permissions:\n- ReadChannel\n- UpdateThread\n","operationId":"UpdateThreadPartial","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update thread","tags":["Threads","Channels"]}},"/unread":{"get":{"description":"Fetch unread counts for a single user\n","operationId":"UnreadCounts","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WrappedUnreadCountsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unread counts","tags":["Channels"]}},"/users":{"get":{"description":"Find and filter users\n\nRequired permissions:\n- SearchUser\n","operationId":"QueryUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query users","tags":["Users"]},"patch":{"description":"Updates certain fields of the user\n\nSends events:\n- user.presence.changed\n- user.updated\n","operationId":"UpdateUsersPartial","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update user","tags":["Users"]},"post":{"description":"Update or create users in bulk\n\nSends events:\n- user.updated\n","operationId":"UpdateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert users","tags":["Users"]}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file diff --git a/openapi/chat-openapi-clientside.yaml b/openapi/chat-openapi-clientside.yaml index 0da3eb33..69db3b23 100644 --- a/openapi/chat-openapi-clientside.yaml +++ b/openapi/chat-openapi-clientside.yaml @@ -174,7 +174,7 @@ components: properties: agora_options: $ref: '#/components/schemas/Config' - x-stream-index: "001.038" + x-stream-index: "001.039" allowed_flag_reasons: items: type: string @@ -200,7 +200,7 @@ components: cdn_expiration_seconds: format: int32 type: integer - x-stream-index: "001.036" + x-stream-index: "001.037" channel_configs: additionalProperties: $ref: '#/components/schemas/ChannelConfig' @@ -215,7 +215,7 @@ components: x-stream-index: "001.021" datadog_info: $ref: '#/components/schemas/DataDogInfo' - x-stream-index: "001.041" + x-stream-index: "001.042" disable_auth_checks: type: boolean x-stream-index: "001.010" @@ -232,7 +232,7 @@ components: items: $ref: '#/components/schemas/GeofenceResponse' type: array - x-stream-index: "001.040" + x-stream-index: "001.041" grants: additionalProperties: items: @@ -242,7 +242,7 @@ components: x-stream-index: "001.032" hms_options: $ref: '#/components/schemas/Config' - x-stream-index: "001.039" + x-stream-index: "001.040" image_moderation_enabled: type: boolean x-stream-index: "001.015" @@ -273,13 +273,16 @@ components: type: array type: object x-stream-index: "001.007" + polls_enabled: + type: boolean + x-stream-index: "001.034" push_notifications: $ref: '#/components/schemas/PushNotificationFields' x-stream-index: "001.003" reminders_interval: format: int32 type: integer - x-stream-index: "001.035" + x-stream-index: "001.036" revoke_tokens_issued_before: format: date-time type: string @@ -315,12 +318,12 @@ components: x-stream-index: "001.013" video_provider: type: string - x-stream-index: "001.037" + x-stream-index: "001.038" webhook_events: items: type: string type: array - x-stream-index: "001.034" + x-stream-index: "001.035" webhook_url: type: string x-stream-index: "001.004" @@ -353,6 +356,7 @@ components: - image_upload_config - grants - campaign_enabled + - polls_enabled - webhook_events - reminders_interval - cdn_expiration_seconds @@ -364,7 +368,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "018" + x-stream-index: "020" actions: items: $ref: '#/components/schemas/Action' @@ -401,21 +405,27 @@ components: x-stream-index: "014" giphy: $ref: '#/components/schemas/Images' - x-stream-index: "019" + x-stream-index: "021" image_url: type: string x-stream-index: "011" og_scrape_url: type: string - x-stream-index: "020" + x-stream-index: "022" original_height: format: int32 type: integer - x-stream-index: "022" + x-stream-index: "024" original_width: format: int32 type: integer - x-stream-index: "021" + x-stream-index: "023" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "019" + poll_id: + type: string + x-stream-index: "018" pretext: type: string x-stream-index: "004" @@ -432,7 +442,7 @@ components: type: string x-stream-index: "009" type: - description: Attachment type (e.g. image, video, url) + description: Attachment type (e.g. image, video, url, poll) title: Type type: string x-stream-index: "001" @@ -447,7 +457,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "018" + x-stream-index: "020" actions: items: $ref: '#/components/schemas/ActionRequest' @@ -484,21 +494,27 @@ components: x-stream-index: "014" giphy: $ref: '#/components/schemas/ImagesRequest' - x-stream-index: "019" + x-stream-index: "021" image_url: type: string x-stream-index: "011" og_scrape_url: type: string - x-stream-index: "020" + x-stream-index: "022" original_height: format: int32 type: integer - x-stream-index: "022" + x-stream-index: "024" original_width: format: int32 type: integer - x-stream-index: "021" + x-stream-index: "023" + poll: + $ref: '#/components/schemas/PollRequest' + x-stream-index: "019" + poll_id: + type: string + x-stream-index: "018" pretext: type: string x-stream-index: "004" @@ -515,7 +531,7 @@ components: type: string x-stream-index: "009" type: - description: Attachment type (e.g. image, video, url) + description: Attachment type (e.g. image, video, url, poll) title: Type type: string x-stream-index: "001" @@ -536,6 +552,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettings' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -790,6 +809,19 @@ components: - UpdatedAt - ExternalStorage type: object + CastPollVoteRequest: + nullable: true + properties: + poll_id: + maxLength: 255 + type: string + x-stream-index: "002" + vote: + $ref: '#/components/schemas/VoteDataRequest' + x-stream-index: "003" + required: + - poll_id + type: object Channel: properties: Custom: @@ -883,39 +915,39 @@ components: items: type: string type: array - x-stream-index: "001.023" + x-stream-index: "001.024" automod: enum: - disabled - simple - AI type: string - x-stream-index: "001.018" + x-stream-index: "001.019" automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: "001.019" + x-stream-index: "001.020" automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: "001.024" + x-stream-index: "001.025" blocklist: type: string - x-stream-index: "001.020" + x-stream-index: "001.021" blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: "001.021" + x-stream-index: "001.022" blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: "001.022" + x-stream-index: "001.023" commands: description: List of commands that channel supports items: @@ -940,16 +972,19 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: "001.017" + x-stream-index: "001.018" message_retention: type: string - x-stream-index: "001.016" + x-stream-index: "001.017" mutes: type: boolean x-stream-index: "001.009" name: type: string x-stream-index: "001.001" + polls: + type: boolean + x-stream-index: "001.016" push_notifications: type: boolean x-stream-index: "001.013" @@ -1000,6 +1035,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -1081,39 +1117,39 @@ components: items: type: string type: array - x-stream-index: 001.002.023 + x-stream-index: 001.002.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 001.002.018 + x-stream-index: 001.002.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.002.019 + x-stream-index: 001.002.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 001.002.024 + x-stream-index: 001.002.025 blocklist: type: string - x-stream-index: 001.002.020 + x-stream-index: 001.002.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.002.021 + x-stream-index: 001.002.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 001.002.022 + x-stream-index: 001.002.023 commands: items: $ref: '#/components/schemas/Command' @@ -1148,16 +1184,19 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 001.002.017 + x-stream-index: 001.002.018 message_retention: type: string - x-stream-index: 001.002.016 + x-stream-index: 001.002.017 mutes: type: boolean x-stream-index: 001.002.009 name: type: string x-stream-index: 001.002.001 + polls: + type: boolean + x-stream-index: 001.002.016 push_notifications: type: boolean x-stream-index: 001.002.013 @@ -1210,6 +1249,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -2280,6 +2320,91 @@ components: type: boolean x-stream-index: "004" type: object + CreatePollOptionRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "004" + poll_id: + maxLength: 255 + type: string + x-stream-index: "001" + position: + format: int32 + type: integer + x-stream-index: "003" + text: + type: string + x-stream-index: "002" + required: + - poll_id + - text + type: object + CreatePollRequest: + description: Contains all information needed to create a new poll + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "011" + allow_answers: + description: Indicates whether users can suggest user defined answers + title: Allow answers + type: boolean + x-stream-index: "009" + allow_user_suggested_options: + type: boolean + x-stream-index: "008" + description: + description: A description of the poll + title: Description + type: string + x-stream-index: "003" + enforce_unique_vote: + description: Indicates whether users can cast multiple votes + title: Multiple choice + type: boolean + x-stream-index: "006" + id: + maxLength: 255 + type: string + x-stream-index: "001" + is_closed: + description: Indicates whether the poll is open for voting + title: Is closed + type: boolean + x-stream-index: "010" + max_votes_allowed: + description: Indicates the maximum amount of votes a user can cast + format: int32 + maximum: 10 + title: Maximum votes allowed + type: integer + x-stream-index: "007" + name: + description: The name of the poll + title: Name + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionRequest_1' + maximum: 100 + type: array + x-stream-index: "004" + voting_visibility: + enum: + - anonymous + - public + type: string + x-stream-index: "005" + required: + - name + title: Create Poll Request + type: object DataDogInfo: properties: api_key: @@ -2851,7 +2976,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "001.018" + x-stream-index: "001.020" actions: items: $ref: '#/components/schemas/Action' @@ -2897,7 +3022,7 @@ components: x-stream-index: "001.014" giphy: $ref: '#/components/schemas/Images' - x-stream-index: "001.019" + x-stream-index: "001.021" image_url: description: URL of detected image title: Image URL @@ -2907,15 +3032,21 @@ components: description: extracted url from the text title: OG Scrape URL type: string - x-stream-index: "001.020" + x-stream-index: "001.022" original_height: format: int32 type: integer - x-stream-index: "001.022" + x-stream-index: "001.024" original_width: format: int32 type: integer - x-stream-index: "001.021" + x-stream-index: "001.023" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001.019" + poll_id: + type: string + x-stream-index: "001.018" pretext: type: string x-stream-index: "001.004" @@ -3741,6 +3872,14 @@ components: title: Pinned by x-stream-docs-page-id: pinned_messages x-stream-index: "047" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "051" + poll_id: + description: Identifier of the poll to include in the message + title: Poll ID + type: string + x-stream-index: "050" quoted_message: $ref: '#/components/schemas/Message' description: Contains quoted message @@ -3850,6 +3989,7 @@ components: - mentioned_users - silent - pinned + - poll_id title: Message type: object x-stream-docs-page-id: send_message @@ -4233,6 +4373,9 @@ components: nullable: true type: string x-stream-index: "014" + poll_id: + type: string + x-stream-index: "038" quoted_message_id: type: string x-stream-index: "009" @@ -4504,6 +4647,18 @@ components: required: - duration type: object + NoiseCancellationSettings: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + required: + - mode + type: object NotificationAddedToChannelEvent: properties: channel: @@ -5215,385 +5370,334 @@ components: - created_at - updated_at type: object - PushNotificationFields: - properties: - apn: - $ref: '#/components/schemas/APNConfigFields' - x-stream-index: "002" - firebase: - $ref: '#/components/schemas/FirebaseConfigFields' - x-stream-index: "003" - huawei: - $ref: '#/components/schemas/HuaweiConfigFields' - x-stream-index: "004" - offline_only: - type: boolean - x-stream-index: "001.002" - providers: - items: - $ref: '#/components/schemas/PushProvider' - type: array - x-stream-index: "006" - version: - type: string - x-stream-index: "001.001" - xiaomi: - $ref: '#/components/schemas/XiaomiConfigFields' - x-stream-index: "005" - required: - - version - - offline_only - - apn - - firebase - - huawei - - xiaomi - type: object - PushNotificationSettings: + Poll: properties: - disabled: + Custom: + type: object + writeOnly: true + x-stream-index: "023" + allow_answers: type: boolean - x-stream-index: "001" - disabled_until: - format: date-time - type: string - x-stream-index: "002" - type: object - PushNotificationSettingsRequest: - properties: - disabled: + x-stream-index: "010" + allow_user_suggested_options: type: boolean - x-stream-index: "001" - disabled_until: + x-stream-index: "009" + answers_count: + format: int32 + type: integer + x-stream-index: "015" + created_at: format: date-time type: string - x-stream-index: "002" - type: object - PushProvider: - nullable: true - properties: - apn_auth_key: + x-stream-index: "021" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "020" + created_by_id: type: string - x-stream-index: "012" - apn_auth_type: + x-stream-index: "019" + description: type: string - x-stream-index: "017" - apn_development: + x-stream-index: "005" + enforce_unique_vote: type: boolean - x-stream-index: "018" - apn_host: - type: string - x-stream-index: "019" - apn_key_id: - type: string - x-stream-index: "013" - apn_notification_template: - type: string - x-stream-index: "020" - apn_p12_cert: - type: string - x-stream-index: "014" - apn_team_id: - type: string - x-stream-index: "015" - apn_topic: + x-stream-index: "007" + id: type: string + x-stream-index: "003" + is_closed: + type: boolean + x-stream-index: "011" + latest_answers: + items: + $ref: '#/components/schemas/PollVote' + type: array + x-stream-index: "017" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVote' + type: array + type: object x-stream-index: "016" - created_at: - format: date-time - type: string + max_votes_allowed: + format: int32 + type: integer x-stream-index: "008" - description: - maxLength: 128 + name: type: string - x-stream-index: "007" - disabled_at: + x-stream-index: "004" + options: + items: + $ref: '#/components/schemas/PollOption' + type: array + x-stream-index: "013" + own_votes: + items: + $ref: '#/components/schemas/PollVote' + type: array + x-stream-index: "018" + updated_at: format: date-time - type: string - x-stream-index: "010" - disabled_reason: - maxLength: 255 - type: string - x-stream-index: "011" - firebase_apn_template: - type: string - x-stream-index: "025" - firebase_credentials: type: string x-stream-index: "022" - firebase_data_template: - type: string - x-stream-index: "023" - firebase_host: - type: string - x-stream-index: "026" - firebase_notification_template: - type: string - x-stream-index: "024" - firebase_server_key: - type: string - x-stream-index: "021" - huawei_app_id: - type: string - x-stream-index: "027" - huawei_app_secret: - type: string - x-stream-index: "028" - name: - maxLength: 36 - minLength: 1 - type: string - x-stream-index: "005" - type: + vote_count: + format: int32 type: integer + x-stream-index: "012" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "014" + voting_visibility: + type: string x-stream-index: "006" - updated_at: + required: + - id + - name + - description + - enforce_unique_vote + - allow_user_suggested_options + - allow_answers + - vote_count + - options + - vote_counts_by_option + - answers_count + - latest_votes_by_option + - latest_answers + - own_votes + - created_by_id + - created_at + - updated_at + - Custom + type: object + PollClosedEvent: + properties: + created_at: format: date-time type: string - x-stream-index: "009" - xiaomi_app_secret: - type: string - x-stream-index: "030" - xiaomi_package_name: + x-stream-index: "002.002" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001" + type: + default: poll.closed type: string - x-stream-index: "029" + x-stream-index: "002.001" required: - - name - type - created_at - - updated_at + title: PollClosedEvent type: object - QueryBannedUsersRequest: + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollCreatedEvent: properties: - created_at_after: + created_at: format: date-time type: string - x-stream-index: "003.006" - created_at_after_or_equal: - format: date-time + x-stream-index: "002.002" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001" + type: + default: poll.created type: string - x-stream-index: "003.005" - created_at_before: + x-stream-index: "002.001" + required: + - type + - created_at + title: PollCreatedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollDeletedEvent: + properties: + created_at: format: date-time type: string - x-stream-index: "003.008" - created_at_before_or_equal: - format: date-time + x-stream-index: "002.002" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001" + type: + default: poll.deleted type: string - x-stream-index: "003.007" - exclude_expired_bans: - type: boolean - x-stream-index: "006" - filter_conditions: + x-stream-index: "002.001" + required: + - type + - created_at + title: PollDeletedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollOption: + nullable: true + properties: + custom: type: object + x-stream-index: "003" + id: + maxLength: 255 + type: string x-stream-index: "001" - limit: - format: int32 - maximum: 300 - type: integer - x-stream-index: "004" - offset: - format: int32 - maximum: 10000 - type: integer - x-stream-index: "005" - sort: - items: - $ref: '#/components/schemas/SortParam' - maximum: 1 - type: array + text: + type: string x-stream-index: "002" required: - - filter_conditions + - id + - text + - custom type: object - QueryBannedUsersResponse: + PollOptionRequest: nullable: true properties: - bans: - items: - $ref: '#/components/schemas/BanResponse' - type: array + custom: + type: object + x-stream-index: "003" + id: + maxLength: 255 + type: string x-stream-index: "001" + text: + type: string + x-stream-index: "002" + required: + - id + type: object + PollOptionRequest_1: + nullable: true + properties: + custom: + type: object + x-stream-index: "003" + text: + type: string + x-stream-index: "002" + type: object + PollOptionResponse: + nullable: true + properties: duration: description: Duration of the request in human-readable format title: Duration type: string x-stream-index: "002.001" + poll_option: + $ref: '#/components/schemas/PollOptionResponseData' + x-stream-index: "001" required: - - bans + - poll_option - duration type: object - QueryChannelsRequest: + PollOptionResponseData: nullable: true properties: - connection_id: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID - type: string - x-stream-index: "011.003" - filter_conditions: + custom: type: object + x-stream-index: "003" + id: + type: string x-stream-index: "001" - limit: - description: Number of channels to limit - format: int32 - title: Limit - type: integer - x-stream-index: "008" - member_limit: - description: Number of members to limit - format: int32 - maximum: 100 - minimum: 0 - title: Member limit - type: integer - x-stream-index: "007" - message_limit: - description: Number of messages to limit + text: + type: string + x-stream-index: "002" + required: + - id + - text + - custom + type: object + PollRequest: + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "023" + allow_answers: + type: boolean + x-stream-index: "010" + allow_user_suggested_options: + type: boolean + x-stream-index: "009" + answers_count: format: int32 - minimum: 0 - title: Message limit type: integer - x-stream-index: "006" - offset: - description: Channel pagination offset - format: int32 - title: Offset - type: integer - x-stream-index: "009" - presence: - title: Presence - type: boolean - x-stream-index: "005" - sort: - description: List of sort parameters - items: - $ref: '#/components/schemas/SortParamRequest' - maximum: 5 - title: Sort - type: array - x-stream-index: "002" - state: - description: Whether to update channel state or not - title: State - type: boolean - x-stream-index: "004" - watch: - description: Whether to start watching found channels or not - title: Watch - type: boolean - x-stream-index: "003" - title: Query Channels Request - type: object - x-stream-docs-page-id: query_channels - QueryMembersRequest: - properties: - created_at_after: - format: date-time - type: string - x-stream-index: "006.010" - created_at_after_or_equal: + x-stream-index: "015" + created_at: format: date-time type: string - x-stream-index: "006.009" - created_at_before: - format: date-time + x-stream-index: "021" + created_by: + $ref: '#/components/schemas/UserObjectRequest' + x-stream-index: "020" + created_by_id: type: string - x-stream-index: "006.012" - created_at_before_or_equal: - format: date-time + x-stream-index: "019" + description: type: string - x-stream-index: "006.011" - filter_conditions: - description: Filter to apply to members - title: Filter conditions - type: object - x-stream-index: "004" + x-stream-index: "005" + enforce_unique_vote: + type: boolean + x-stream-index: "007" id: - description: Channel ID to interact with - title: Channel ID type: string - x-stream-index: "002" - limit: - description: Number of records to return - format: int32 - maximum: 300 - minimum: 0 - title: Limit - type: integer - x-stream-index: "006.003" - members: - description: List of members to search in distinct channels + x-stream-index: "003" + is_closed: + type: boolean + x-stream-index: "011" + latest_answers: items: - $ref: '#/components/schemas/ChannelMember' - maximum: 100 - title: Members + $ref: '#/components/schemas/PollVoteRequest' type: array - x-stream-index: "003" - offset: - description: Number of records to offset + x-stream-index: "017" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + type: object + x-stream-index: "016" + max_votes_allowed: format: int32 - maximum: 10000 - title: Offset type: integer - x-stream-index: "006.004" - sort: - description: Array of sort parameters + x-stream-index: "008" + name: + type: string + x-stream-index: "004" + options: items: - $ref: '#/components/schemas/SortParam' - maximum: 1 - title: Sort + $ref: '#/components/schemas/PollOptionRequest' type: array - x-stream-index: "005" - type: - description: Channel type to interact with - maxLength: 64 - title: Channel type - type: string - x-stream-index: "001" - user_id_gt: - type: string - x-stream-index: "006.006" - user_id_gte: - type: string - x-stream-index: "006.005" - user_id_lt: - type: string - x-stream-index: "006.008" - user_id_lte: + x-stream-index: "013" + own_votes: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + x-stream-index: "018" + updated_at: + format: date-time type: string - x-stream-index: "006.007" - required: - - type - - filter_conditions - type: object - QueryMessageFlagsRequest: - properties: - filter_conditions: - type: object - x-stream-index: "001" - limit: - format: int32 - maximum: 300 - minimum: 0 - type: integer - x-stream-index: "003.003" - offset: + x-stream-index: "022" + vote_count: format: int32 - maximum: 10000 type: integer - x-stream-index: "003.004" - show_deleted_messages: - type: boolean - x-stream-index: "002" - sort: - items: - $ref: '#/components/schemas/SortParam' - maximum: 5 - type: array - x-stream-index: "003.005" + x-stream-index: "012" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "014" + voting_visibility: + type: string + x-stream-index: "006" type: object - QueryMessageFlagsResponse: + PollResponse: nullable: true properties: duration: @@ -5601,2925 +5705,4726 @@ components: title: Duration type: string x-stream-index: "002.001" - flags: - items: - $ref: '#/components/schemas/MessageFlag' - type: array + poll: + $ref: '#/components/schemas/PollResponseData' x-stream-index: "001" required: - - flags + - poll - duration type: object - QueryThreadsRequest: - nullable: true + PollResponseData: properties: - connection_id: - type: string - x-stream-index: "002" - limit: + Custom: + type: object + writeOnly: true + x-stream-index: "020" + allow_answers: + type: boolean + x-stream-index: "008" + allow_user_suggested_options: + type: boolean + x-stream-index: "007" + answers_count: format: int32 - maximum: 25 - minimum: 0 type: integer - x-stream-index: "005.001" - next: + x-stream-index: "012" + created_at: + format: date-time type: string - x-stream-index: "005.002" - participant_limit: - description: Limit the number of participants returned per each thread - format: int32 - maximum: 100 - minimum: 0 - title: Participant limit - type: integer - x-stream-index: "004" - prev: + x-stream-index: "018" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "017" + created_by_id: + type: string + x-stream-index: "016" + description: type: string - x-stream-index: "005.003" - reply_limit: - description: Limit the number of replies returned per each thread - format: int32 - maximum: 10 - minimum: 0 - title: Reply limit - type: integer x-stream-index: "003" - watch: - description: Start watching the channel this thread belongs to - title: Watch + enforce_unique_vote: type: boolean - x-stream-index: "001" - type: object - QueryThreadsResponse: - nullable: true - properties: - duration: - type: string - x-stream-index: "003.001" - next: + x-stream-index: "005" + id: type: string - x-stream-index: "002.001" - prev: + x-stream-index: "001" + is_closed: + type: boolean + x-stream-index: "009" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array + type: object + x-stream-index: "014" + max_votes_allowed: + format: int32 + type: integer + x-stream-index: "006" + name: type: string - x-stream-index: "002.002" - threads: - description: List of enriched thread states + x-stream-index: "002" + options: items: - $ref: '#/components/schemas/ThreadStateResponse' - title: Threads + $ref: '#/components/schemas/PollOptionResponseData' type: array - x-stream-index: "001" - required: - - threads - - duration - type: object - QueryUsersRequest: - properties: - connection_id: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID + x-stream-index: "011" + own_votes: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array + x-stream-index: "015" + updated_at: + format: date-time type: string - x-stream-index: "007.003" - filter_conditions: - description: User filters - title: Filter conditions + x-stream-index: "019" + vote_count: + format: int32 + type: integer + x-stream-index: "010" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer type: object - x-stream-docs-page-id: query_users - x-stream-index: "001" - id_gt: - type: string - x-stream-index: "005.006" - id_gte: - type: string - x-stream-index: "005.005" - id_lt: - type: string - x-stream-index: "005.008" - id_lte: + x-stream-index: "013" + voting_visibility: type: string - x-stream-index: "005.007" - include_deactivated_users: - type: boolean x-stream-index: "004" - limit: - format: int32 - maximum: 100 - minimum: 0 - type: integer - x-stream-index: "005.003" - offset: - format: int32 - maximum: 1000 - type: integer - x-stream-index: "005.004" - presence: - description: Request user presence status - title: Presence - type: boolean - x-stream-index: "003" - sort: - description: Array of sort parameters - items: - $ref: '#/components/schemas/SortParam' - maximum: 5 - title: Sort - type: array - x-stream-index: "002" required: - - filter_conditions + - id + - name + - description + - voting_visibility + - enforce_unique_vote + - allow_user_suggested_options + - allow_answers + - vote_count + - options + - answers_count + - vote_counts_by_option + - latest_votes_by_option + - own_votes + - created_by_id + - created_at + - updated_at + - Custom type: object - Reaction: - description: Represents user reaction to a message - nullable: true + PollUpdatedEvent: properties: - Custom: - type: object - writeOnly: true - x-stream-index: "010" created_at: - description: Date/time of creation format: date-time - readOnly: true - title: Created at type: string - x-stream-index: "008" - message_id: - description: ID of a message user reacted to - title: Message ID + x-stream-index: "002.002" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001" + type: + default: poll.updated + type: string + x-stream-index: "002.001" + required: + - type + - created_at + title: PollUpdatedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollVote: + nullable: true + properties: + answer_text: type: string - x-stream-index: "003" - score: - description: Reaction score. If not specified reaction has score of 1 - format: int32 - title: Score - type: integer x-stream-index: "007" - type: - description: The type of reaction (e.g. 'like', 'laugh', 'wow') - maxLength: 30 - title: Type + created_at: + format: date-time type: string + x-stream-index: "010" + id: + type: string + x-stream-index: "004" + is_answer: + type: boolean x-stream-index: "006" + option_id: + type: string + x-stream-index: "005" + poll_id: + type: string + x-stream-index: "003" updated_at: - description: Date/time of the last update format: date-time - readOnly: true - title: Updated at type: string - x-stream-index: "009" + x-stream-index: "011" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "005" + x-stream-index: "009" user_id: - description: ID of a user who reacted to a message - title: User ID type: string - x-stream-index: "004" + x-stream-index: "008" required: - - message_id - - type - - score + - poll_id + - id + - option_id - created_at - updated_at - - Custom - title: Reaction type: object - x-stream-docs-page-id: send_reaction - ReactionDeletedEvent: + PollVoteCastedEvent: properties: - channel_id: - type: string - x-stream-index: "003.002" - channel_type: - type: string - x-stream-index: "003.003" - cid: - type: string - x-stream-index: "003.001" created_at: format: date-time type: string - x-stream-index: "006.002" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "001.001" - reaction: - $ref: '#/components/schemas/Reaction' - x-stream-index: "002" - team: - type: string - x-stream-index: "005.001" - thread_participants: - items: - $ref: '#/components/schemas/UserObject' - type: array - x-stream-index: "001.002" + x-stream-index: "002.002" type: - default: reaction.deleted + default: poll.vote_casted type: string - x-stream-index: "006.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "004.001" + x-stream-index: "002.001" + vote: + $ref: '#/components/schemas/PollVote' + x-stream-index: "001" required: - - cid - - channel_id - - channel_type - type - created_at - title: ReactionDeletedEvent + title: PollVoteCastedEvent type: object x-stream-event-client-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent - ReactionNewEvent: + PollVoteChangedEvent: properties: - channel_id: - type: string - x-stream-index: "004.002" - channel_type: - type: string - x-stream-index: "004.003" - cid: - type: string - x-stream-index: "004.001" created_at: format: date-time type: string - x-stream-index: "006.002" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "001.001" - reaction: - $ref: '#/components/schemas/Reaction' - x-stream-index: "002" - team: - type: string - x-stream-index: "005.001" - thread_participants: - items: - $ref: '#/components/schemas/UserObject' - type: array - x-stream-index: "001.002" + x-stream-index: "002.002" type: - default: reaction.new + default: poll.vote_changed type: string - x-stream-index: "006.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" + x-stream-index: "002.001" + vote: + $ref: '#/components/schemas/PollVote' + x-stream-index: "001" required: - - cid - - channel_id - - channel_type - type - created_at - title: ReactionNewEvent + title: PollVoteChangedEvent type: object x-stream-event-client-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent - ReactionRemovalResponse: - nullable: true + PollVoteRemovedEvent: properties: - duration: - description: Duration of the request in human-readable format - title: Duration + created_at: + format: date-time type: string - x-stream-index: "003.001" - message: - $ref: '#/components/schemas/Message' + x-stream-index: "002.002" + type: + default: poll.vote_removed + type: string + x-stream-index: "002.001" + vote: + $ref: '#/components/schemas/PollVote' x-stream-index: "001" - reaction: - $ref: '#/components/schemas/Reaction' - x-stream-index: "002" required: - - duration + - type + - created_at + title: PollVoteRemovedEvent type: object - ReactionRequest: - description: Represents user reaction to a message + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollVoteRequest: + nullable: true properties: - Custom: - type: object - writeOnly: true - x-stream-index: "010" - message_id: - description: ID of a message user reacted to - title: Message ID + answer_text: type: string - x-stream-index: "003" - score: - description: Reaction score. If not specified reaction has score of 1 - format: int32 - title: Score - type: integer x-stream-index: "007" - type: - description: The type of reaction (e.g. 'like', 'laugh', 'wow') - maxLength: 30 - title: Type + created_at: + format: date-time + type: string + x-stream-index: "010" + id: + type: string + x-stream-index: "004" + is_answer: + type: boolean + x-stream-index: "006" + option_id: type: string - x-stream-index: "006" - user: - $ref: '#/components/schemas/UserObjectRequest' x-stream-index: "005" + poll_id: + type: string + x-stream-index: "003" + updated_at: + format: date-time + type: string + x-stream-index: "011" + user: + $ref: '#/components/schemas/UserObjectRequest' + x-stream-index: "009" user_id: - description: ID of a user who reacted to a message - title: User ID type: string - x-stream-index: "004" - required: - - type - title: Reaction + x-stream-index: "008" type: object - x-stream-docs-page-id: send_reaction - ReactionResponse: + PollVoteResponse: nullable: true properties: duration: description: Duration of the request in human-readable format title: Duration type: string - x-stream-index: "003.001" - message: - $ref: '#/components/schemas/Message' + x-stream-index: "002.001" + vote: + $ref: '#/components/schemas/PollVoteResponseData' x-stream-index: "001" - reaction: - $ref: '#/components/schemas/Reaction' - x-stream-index: "002" required: - duration type: object - ReactionUpdatedEvent: + PollVoteResponseData: + nullable: true properties: - channel_id: - type: string - x-stream-index: "004.002" - channel_type: - type: string - x-stream-index: "004.003" - cid: + answer_text: type: string - x-stream-index: "004.001" + x-stream-index: "005" created_at: format: date-time type: string - x-stream-index: "006.002" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "001" - reaction: - $ref: '#/components/schemas/Reaction' + x-stream-index: "008" + id: + type: string x-stream-index: "002" - team: + is_answer: + type: boolean + x-stream-index: "004" + option_id: type: string - x-stream-index: "005.001" - type: - default: reaction.updated + x-stream-index: "003" + poll_id: type: string - x-stream-index: "006.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" - required: - - message - - reaction - - cid - - channel_id - - channel_type - - type - - created_at - title: ReactionUpdatedEvent - type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - Read: - nullable: true - properties: - last_read: + x-stream-index: "001" + updated_at: format: date-time type: string - x-stream-index: "002" - last_read_message_id: - type: string - x-stream-index: "004" - unread_messages: - format: int32 - type: integer - x-stream-index: "003" + x-stream-index: "009" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "001" - required: - - last_read - - unread_messages - type: object - RecordSettings: - properties: - audio_only: - type: boolean - x-stream-index: "001" - layout: - $ref: '#/components/schemas/LayoutSettings' - x-stream-index: "004" - mode: - type: string - x-stream-index: "002" - quality: + x-stream-index: "007" + user_id: type: string - x-stream-index: "003" + x-stream-index: "006" required: - - audio_only - - mode - - quality + - poll_id + - id + - option_id + - created_at + - updated_at type: object - Response: + PollVotesResponse: nullable: true properties: duration: description: Duration of the request in human-readable format title: Duration type: string + x-stream-index: "003.001" + next: + type: string + x-stream-index: "002.001" + prev: + type: string + x-stream-index: "002.002" + votes: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array x-stream-index: "001" required: + - votes - duration type: object - RingSettings: + PushNotificationFields: properties: - auto_cancel_timeout_ms: - format: int32 - type: integer + apn: + $ref: '#/components/schemas/APNConfigFields' x-stream-index: "002" - incoming_call_timeout_ms: - format: int32 - type: integer - x-stream-index: "001" + firebase: + $ref: '#/components/schemas/FirebaseConfigFields' + x-stream-index: "003" + huawei: + $ref: '#/components/schemas/HuaweiConfigFields' + x-stream-index: "004" + offline_only: + type: boolean + x-stream-index: "001.002" + providers: + items: + $ref: '#/components/schemas/PushProvider' + type: array + x-stream-index: "006" + version: + type: string + x-stream-index: "001.001" + xiaomi: + $ref: '#/components/schemas/XiaomiConfigFields' + x-stream-index: "005" required: - - incoming_call_timeout_ms - - auto_cancel_timeout_ms + - version + - offline_only + - apn + - firebase + - huawei + - xiaomi type: object - ScreensharingSettings: + PushNotificationSettings: properties: - access_request_enabled: - type: boolean - x-stream-index: "002" - enabled: + disabled: type: boolean x-stream-index: "001" - required: - - enabled - - access_request_enabled + disabled_until: + format: date-time + type: string + x-stream-index: "002" type: object - SearchRequest: + PushNotificationSettingsRequest: properties: - filter_conditions: - description: Channel filter conditions - maximum: 100 - minimum: 1 - title: Channel filter - type: object - x-stream-docs-page-id: query_channels - x-stream-index: "002" - limit: - description: Number of messages to return - format: int32 - title: Limit - type: integer - x-stream-index: "004" - message_filter_conditions: - description: Message filter conditions - title: Message filter - type: object - x-stream-index: "003" - next: - description: Pagination parameter. Cannot be used with non-zero offset. - title: Next - type: string - x-stream-index: "007" - offset: - description: Pagination offset. Cannot be used with sort or next. - format: int32 - title: Offset - type: integer - x-stream-index: "005" - query: - description: Search phrase - title: Query - type: string + disabled: + type: boolean x-stream-index: "001" - sort: - description: Sort parameters. Cannot be used with non-zero offset - items: - $ref: '#/components/schemas/SortParam' - title: Sort - type: array - x-stream-index: "006" - required: - - filter_conditions + disabled_until: + format: date-time + type: string + x-stream-index: "002" type: object - SearchResponse: + PushProvider: nullable: true properties: - duration: + apn_auth_key: type: string - x-stream-index: "005.001" - next: - description: Value to pass to the next search query in order to paginate - title: Next + x-stream-index: "012" + apn_auth_type: type: string - x-stream-index: "003" - previous: - description: Value that points to the previous page. Pass as the next value - in a search query to paginate backwards - title: Previous + x-stream-index: "017" + apn_development: + type: boolean + x-stream-index: "018" + apn_host: type: string - x-stream-index: "004" - results: - description: Search results - items: - $ref: '#/components/schemas/SearchResult' - title: Results - type: array - x-stream-index: "001" - results_warning: - $ref: '#/components/schemas/SearchWarning' - description: Warning about the search results - title: Results Warning - x-stream-index: "002" - required: - - results - - duration - type: object - SearchResult: - nullable: true - properties: - message: - $ref: '#/components/schemas/SearchResultMessage' - description: Found message - title: Message - x-stream-index: "001" - type: object - SearchResultMessage: - properties: - Custom: - type: object - writeOnly: true - x-stream-index: "001.031" - attachments: - items: - $ref: '#/components/schemas/Attachment' - type: array - x-stream-index: "001.011" - before_message_send_failed: - type: boolean - x-stream-index: "001.043" - channel: - $ref: '#/components/schemas/ChannelResponse' - description: Channel object - title: Channel - x-stream-index: "002" - cid: + x-stream-index: "019" + apn_key_id: type: string - x-stream-index: "001.026" - command: + x-stream-index: "013" + apn_notification_template: type: string - x-stream-index: "001.006" + x-stream-index: "020" + apn_p12_cert: + type: string + x-stream-index: "014" + apn_team_id: + type: string + x-stream-index: "015" + apn_topic: + type: string + x-stream-index: "016" created_at: format: date-time type: string - x-stream-index: "001.028" - deleted_at: + x-stream-index: "008" + description: + maxLength: 128 + type: string + x-stream-index: "007" + disabled_at: format: date-time type: string - x-stream-index: "001.030" - deleted_reply_count: - format: int32 - type: integer - x-stream-index: "001.021" - html: + x-stream-index: "010" + disabled_reason: + maxLength: 255 type: string - x-stream-index: "001.007" - i18n: - additionalProperties: - type: string - type: object - x-stream-index: "001.041" - id: + x-stream-index: "011" + firebase_apn_template: type: string - x-stream-index: "001.002" - image_labels: - additionalProperties: - items: - type: string - type: array - type: object - x-stream-index: "001.037" - latest_reactions: - items: - $ref: '#/components/schemas/Reaction' - type: array - x-stream-index: "001.012" - mentioned_users: - items: - $ref: '#/components/schemas/UserObject' - type: array - x-stream-index: "001.040" - message_text_updated_at: - format: date-time + x-stream-index: "025" + firebase_credentials: type: string - x-stream-index: "001.049" - mml: + x-stream-index: "022" + firebase_data_template: type: string - x-stream-index: "001.005" - own_reactions: - items: - $ref: '#/components/schemas/Reaction' - type: array - x-stream-index: "001.013" - parent_id: + x-stream-index: "023" + firebase_host: type: string - x-stream-index: "001.017" - pin_expires: - format: date-time + x-stream-index: "026" + firebase_notification_template: type: string - x-stream-index: "001.048" - pinned: - type: boolean - x-stream-index: "001.044" - pinned_at: - format: date-time + x-stream-index: "024" + firebase_server_key: type: string - x-stream-index: "001.045" - pinned_by: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001.047" - quoted_message: - $ref: '#/components/schemas/Message' - x-stream-index: "001.023" - quoted_message_id: + x-stream-index: "021" + huawei_app_id: type: string - x-stream-index: "001.022" - reaction_counts: - additionalProperties: - format: int32 - type: integer - type: object - x-stream-index: "001.014" - reaction_scores: - additionalProperties: - format: int32 - type: integer - type: object - x-stream-index: "001.015" - reply_count: - format: int32 - type: integer - x-stream-index: "001.020" - shadowed: - type: boolean - x-stream-index: "001.033" - show_in_channel: - type: boolean - x-stream-index: "001.019" - silent: - type: boolean - x-stream-index: "001.042" - text: + x-stream-index: "027" + huawei_app_secret: type: string - x-stream-index: "001.004" - thread_participants: - items: - $ref: '#/components/schemas/UserObject' - type: array - x-stream-index: "001.025" - type: + x-stream-index: "028" + name: + maxLength: 36 + minLength: 1 type: string - x-stream-index: "001.008" + x-stream-index: "005" + type: + type: integer + x-stream-index: "006" updated_at: format: date-time type: string - x-stream-index: "001.029" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001.010" + x-stream-index: "009" + xiaomi_app_secret: + type: string + x-stream-index: "030" + xiaomi_package_name: + type: string + x-stream-index: "029" required: - - id - - text - - html + - name - type - - attachments - - latest_reactions - - own_reactions - - reaction_counts - - reaction_scores - - reply_count - - deleted_reply_count - - cid - created_at - updated_at - - Custom - - shadowed - - mentioned_users - - silent - - pinned type: object - SearchWarning: + QueryBannedUsersRequest: properties: - channel_search_cids: - description: Channel CIDs for the searched channels - items: - type: string - title: Channel Search CIDs - type: array + created_at_after: + format: date-time + type: string + x-stream-index: "003.006" + created_at_after_or_equal: + format: date-time + type: string + x-stream-index: "003.005" + created_at_before: + format: date-time + type: string + x-stream-index: "003.008" + created_at_before_or_equal: + format: date-time + type: string + x-stream-index: "003.007" + exclude_expired_bans: + type: boolean + x-stream-index: "006" + filter_conditions: + type: object + x-stream-index: "001" + limit: + format: int32 + maximum: 300 + type: integer x-stream-index: "004" - channel_search_count: - description: Number of channels searched + offset: format: int32 - title: Channel Search Count - type: integer - x-stream-index: "003" - warning_code: - description: Code corresponding to the warning - format: int32 - title: Warning Code + maximum: 10000 type: integer + x-stream-index: "005" + sort: + items: + $ref: '#/components/schemas/SortParam' + maximum: 1 + type: array x-stream-index: "002" - warning_description: - description: Description of the warning - title: Warning Description - type: string - x-stream-index: "001" required: - - warning_description - - warning_code + - filter_conditions type: object - SendEventRequest: + QueryBannedUsersResponse: nullable: true properties: - event: - $ref: '#/components/schemas/EventRequest' + bans: + items: + $ref: '#/components/schemas/BanResponse' + type: array x-stream-index: "001" + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "002.001" required: - - event + - bans + - duration type: object - SendMessageRequest: + QueryChannelsRequest: nullable: true properties: - message: - $ref: '#/components/schemas/MessageRequest' + connection_id: + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID + type: string + x-stream-index: "011.003" + filter_conditions: + type: object x-stream-index: "001" - skip_enrich_url: - type: boolean - x-stream-index: "003" - skip_push: + limit: + description: Number of channels to limit + format: int32 + title: Limit + type: integer + x-stream-index: "008" + member_limit: + description: Number of members to limit + format: int32 + maximum: 100 + minimum: 0 + title: Member limit + type: integer + x-stream-index: "007" + message_limit: + description: Number of messages to limit + format: int32 + minimum: 0 + title: Message limit + type: integer + x-stream-index: "006" + offset: + description: Channel pagination offset + format: int32 + title: Offset + type: integer + x-stream-index: "009" + presence: + title: Presence type: boolean + x-stream-index: "005" + sort: + description: List of sort parameters + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 + title: Sort + type: array x-stream-index: "002" - required: - - message + state: + description: Whether to update channel state or not + title: State + type: boolean + x-stream-index: "004" + watch: + description: Whether to start watching found channels or not + title: Watch + type: boolean + x-stream-index: "003" + title: Query Channels Request type: object - SendMessageResponse: - nullable: true + x-stream-docs-page-id: query_channels + QueryMembersRequest: properties: - duration: - description: Duration of the request in human-readable format - title: Duration + created_at_after: + format: date-time type: string - x-stream-index: "003.001" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "001" - pending_message_metadata: - additionalProperties: - type: string + x-stream-index: "006.010" + created_at_after_or_equal: + format: date-time + type: string + x-stream-index: "006.009" + created_at_before: + format: date-time + type: string + x-stream-index: "006.012" + created_at_before_or_equal: + format: date-time + type: string + x-stream-index: "006.011" + filter_conditions: + description: Filter to apply to members + title: Filter conditions type: object + x-stream-index: "004" + id: + description: Channel ID to interact with + title: Channel ID + type: string x-stream-index: "002" + limit: + description: Number of records to return + format: int32 + maximum: 300 + minimum: 0 + title: Limit + type: integer + x-stream-index: "006.003" + members: + description: List of members to search in distinct channels + items: + $ref: '#/components/schemas/ChannelMember' + maximum: 100 + title: Members + type: array + x-stream-index: "003" + offset: + description: Number of records to offset + format: int32 + maximum: 10000 + title: Offset + type: integer + x-stream-index: "006.004" + sort: + description: Array of sort parameters + items: + $ref: '#/components/schemas/SortParam' + maximum: 1 + title: Sort + type: array + x-stream-index: "005" + type: + description: Channel type to interact with + maxLength: 64 + title: Channel type + type: string + x-stream-index: "001" + user_id_gt: + type: string + x-stream-index: "006.006" + user_id_gte: + type: string + x-stream-index: "006.005" + user_id_lt: + type: string + x-stream-index: "006.008" + user_id_lte: + type: string + x-stream-index: "006.007" required: - - message - - duration + - type + - filter_conditions type: object - SendReactionRequest: - nullable: true + QueryMessageFlagsRequest: properties: - ID: - type: string - writeOnly: true + filter_conditions: + type: object x-stream-index: "001" - enforce_unique: - description: Whether to replace all existing user reactions - title: Enforce unique + limit: + format: int32 + maximum: 300 + minimum: 0 + type: integer + x-stream-index: "003.003" + offset: + format: int32 + maximum: 10000 + type: integer + x-stream-index: "003.004" + show_deleted_messages: type: boolean - x-stream-index: "003" - reaction: - $ref: '#/components/schemas/ReactionRequest' x-stream-index: "002" - skip_push: - description: Skips any mobile push notifications - title: Skip push - type: boolean - x-stream-index: "004" - required: - - reaction - type: object - ShowChannelRequest: - nullable: true + sort: + items: + $ref: '#/components/schemas/SortParam' + maximum: 5 + type: array + x-stream-index: "003.005" type: object - ShowChannelResponse: + QueryMessageFlagsResponse: nullable: true properties: duration: description: Duration of the request in human-readable format title: Duration type: string - x-stream-index: "001.001" + x-stream-index: "002.001" + flags: + items: + $ref: '#/components/schemas/MessageFlag' + type: array + x-stream-index: "001" required: + - flags - duration type: object - SortParam: + QueryPollVotesRequest: nullable: true properties: - direction: - description: Direction of sorting, -1 for descending, 1 for ascending + filter: + type: object + x-stream-index: "003" + limit: format: int32 - title: Direction + maximum: 25 + minimum: 0 type: integer - x-stream-index: "002" - field: - description: Name of field to sort by - title: Field + x-stream-index: "005.001" + next: type: string - x-stream-index: "001" + x-stream-index: "005.002" + poll_id: + maxLength: 255 + type: string + x-stream-index: "002" + prev: + type: string + x-stream-index: "005.003" + sort: + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 + type: array + x-stream-index: "004" + required: + - poll_id type: object - SortParamRequest: + QueryPollsRequest: nullable: true properties: - direction: - description: Direction of sorting, -1 for descending, 1 for ascending + filter: + type: object + x-stream-index: "002" + limit: format: int32 - title: Direction + maximum: 25 + minimum: 0 type: integer - x-stream-index: "002" - field: - description: Name of field to sort by - title: Field + x-stream-index: "005.001" + next: type: string - x-stream-index: "001" + x-stream-index: "005.002" + prev: + type: string + x-stream-index: "005.003" + sort: + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 + type: array + x-stream-index: "003" type: object - StopWatchingResponse: + QueryPollsResponse: nullable: true properties: duration: description: Duration of the request in human-readable format title: Duration type: string - x-stream-index: "001.001" + x-stream-index: "003.001" + next: + type: string + x-stream-index: "002.001" + polls: + items: + $ref: '#/components/schemas/PollResponseData' + type: array + x-stream-index: "001" + prev: + type: string + x-stream-index: "002.002" required: + - polls - duration type: object - SyncRequest: + QueryThreadsRequest: nullable: true properties: - channel_cids: - description: List of channel CIDs to sync - items: - type: string - maximum: 255 - minimum: 1 - title: Channel CIDs - type: array - x-stream-index: "001" connection_id: - type: string - x-stream-index: "006.003" - last_sync_at: - description: Date from which synchronization should happen - format: date-time - title: Last sync at type: string x-stream-index: "002" - watch: - description: If set to true this will start watching requested and newly - added channels that user has access to. If error occurred with this option - enabled and it is not an input error - channels will still be watched. - title: Watch synced channels - type: boolean + limit: + format: int32 + maximum: 25 + minimum: 0 + type: integer + x-stream-index: "005.001" + next: + type: string + x-stream-index: "005.002" + participant_limit: + description: Limit the number of participants returned per each thread + format: int32 + maximum: 100 + minimum: 0 + title: Participant limit + type: integer x-stream-index: "004" - with_inaccessible_cids: - description: If set to true this will add 'inaccessible_cids' to response - type - title: With inaccessible CIDs - type: boolean + prev: + type: string + x-stream-index: "005.003" + reply_limit: + description: Limit the number of replies returned per each thread + format: int32 + maximum: 10 + minimum: 0 + title: Reply limit + type: integer x-stream-index: "003" - required: - - last_sync_at + watch: + description: Start watching the channel this thread belongs to + title: Watch + type: boolean + x-stream-index: "001" type: object - SyncResponse: + QueryThreadsResponse: nullable: true properties: duration: type: string x-stream-index: "003.001" - events: - description: List of events + next: + type: string + x-stream-index: "002.001" + prev: + type: string + x-stream-index: "002.002" + threads: + description: List of enriched thread states items: - $ref: '#/components/schemas/WSEvent' - title: Events + $ref: '#/components/schemas/ThreadStateResponse' + title: Threads type: array x-stream-index: "001" - inaccessible_cids: - description: List of CIDs that user can't access - items: - type: string - title: Inaccessible CIDs - type: array - x-stream-index: "002" required: - - events + - threads - duration type: object - TargetResolution: + QueryUsersRequest: properties: - bitrate: + connection_id: + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID + type: string + x-stream-index: "007.003" + filter_conditions: + description: User filters + title: Filter conditions + type: object + x-stream-docs-page-id: query_users + x-stream-index: "001" + id_gt: + type: string + x-stream-index: "005.006" + id_gte: + type: string + x-stream-index: "005.005" + id_lt: + type: string + x-stream-index: "005.008" + id_lte: + type: string + x-stream-index: "005.007" + include_deactivated_users: + type: boolean + x-stream-index: "004" + limit: format: int32 - maximum: 6000000 + maximum: 100 + minimum: 0 type: integer - x-stream-index: "003" - height: + x-stream-index: "005.003" + offset: format: int32 - maximum: 2560 - minimum: 240 + maximum: 1000 type: integer + x-stream-index: "005.004" + presence: + description: Request user presence status + title: Presence + type: boolean + x-stream-index: "003" + sort: + description: Array of sort parameters + items: + $ref: '#/components/schemas/SortParam' + maximum: 5 + title: Sort + type: array x-stream-index: "002" - width: - format: int32 - maximum: 2560 - minimum: 240 - type: integer - x-stream-index: "001" required: - - width - - height - - bitrate + - filter_conditions type: object - Thread: - description: Represents a conversation thread linked to a specific message in - a channel. + Reaction: + description: Represents user reaction to a message + nullable: true properties: Custom: type: object writeOnly: true - x-stream-index: "017" - channel: - $ref: '#/components/schemas/Channel' - description: Channel is the channel the thread belongs to - title: Channel - x-stream-index: "004" - channel_cid: - description: Channel CID is unique string identifier of the channel - title: Channel CID - type: string - x-stream-index: "003" + x-stream-index: "010" created_at: description: Date/time of creation format: date-time + readOnly: true title: Created at type: string - x-stream-index: "013" - created_by: - $ref: '#/components/schemas/UserObject' - description: Created By is the user who created the thread - title: Created By x-stream-index: "008" - deleted_at: - description: Date/time of deletion - format: date-time - title: Deleted at + message_id: + description: ID of a message user reacted to + title: Message ID type: string - x-stream-index: "015" - last_message_at: - description: Last Message At is the time of the last message in the thread - format: date-time - title: Last Message At + x-stream-index: "003" + score: + description: Reaction score. If not specified reaction has score of 1 + format: int32 + title: Score + type: integer + x-stream-index: "007" + type: + description: The type of reaction (e.g. 'like', 'laugh', 'wow') + maxLength: 30 + title: Type type: string - x-stream-index: "012" - parent_message: - $ref: '#/components/schemas/Message' - description: Parent Message is the message the thread is replying to - title: Parent Message x-stream-index: "006" - parent_message_id: - description: Parent Message ID is unique string identifier of the parent - message - title: Parent Message ID - type: string - x-stream-index: "005" - participant_count: - description: The number of participants in the thread - format: int32 - title: Participant Count - type: integer - x-stream-index: "010" - reply_count: - description: The number of replies in the thread - format: int32 - title: Reply Count - type: integer - x-stream-index: "009" - thread_participants: - items: - $ref: '#/components/schemas/ThreadParticipant' - type: array - x-stream-index: "011" - title: - description: Title is the title of the thread - title: Title - type: string - x-stream-index: "016" updated_at: description: Date/time of the last update format: date-time + readOnly: true title: Updated at type: string - x-stream-index: "014" + x-stream-index: "009" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "005" + user_id: + description: ID of a user who reacted to a message + title: User ID + type: string + x-stream-index: "004" required: - - channel_cid - - parent_message_id + - message_id + - type + - score - created_at - updated_at - - title - Custom - title: Thread + title: Reaction type: object - ThreadParticipant: - description: Represents a user that is participating in a thread. - nullable: true + x-stream-docs-page-id: send_reaction + ReactionDeletedEvent: properties: - Custom: - type: object - writeOnly: true - x-stream-index: "010" - app_pk: - format: int32 - readOnly: true - type: integer - x-stream-index: "002" - channel_cid: + channel_id: type: string - x-stream-index: "003" - created_at: - description: Date/time of creation - format: date-time - title: Created at + x-stream-index: "003.002" + channel_type: type: string - x-stream-index: "007" - last_read_at: - format: date-time + x-stream-index: "003.003" + cid: type: string - x-stream-index: "009" - left_thread_at: - description: Left Thread At is the time when the user left the thread + x-stream-index: "003.001" + created_at: format: date-time - title: Left Thread At type: string - x-stream-index: "008" - thread_id: - description: Thead ID is unique string identifier of the thread - title: ID + x-stream-index: "006.002" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "001.001" + reaction: + $ref: '#/components/schemas/Reaction' + x-stream-index: "002" + team: type: string - x-stream-index: "004" + x-stream-index: "005.001" + thread_participants: + items: + $ref: '#/components/schemas/UserObject' + type: array + x-stream-index: "001.002" + type: + default: reaction.deleted + type: string + x-stream-index: "006.001" user: $ref: '#/components/schemas/UserObject' - description: User is the user object - title: User - x-stream-index: "006" - user_id: - description: User ID is unique string identifier of the user - title: User ID - type: string - x-stream-index: "005" + x-stream-index: "004.001" required: - - app_pk - - channel_cid + - cid + - channel_id + - channel_type + - type - created_at - - last_read_at - - Custom - title: ThreadParticipant + title: ReactionDeletedEvent type: object - ThreadResponse: + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + ReactionNewEvent: properties: - channel: - $ref: '#/components/schemas/ChannelResponse' - x-stream-index: "002" - channel_cid: - type: string - x-stream-index: "001" - created_at: - format: date-time + channel_id: type: string - x-stream-index: "011" - created_by: - $ref: '#/components/schemas/UserObject' - x-stream-index: "006" - created_by_user_id: + x-stream-index: "004.002" + channel_type: type: string - x-stream-index: "005" - custom: - type: object - x-stream-index: "015" - deleted_at: - format: date-time + x-stream-index: "004.003" + cid: type: string - x-stream-index: "013" - last_message_at: + x-stream-index: "004.001" + created_at: format: date-time type: string - x-stream-index: "010" - parent_message: + x-stream-index: "006.002" + message: $ref: '#/components/schemas/Message' - x-stream-index: "004" - parent_message_id: + x-stream-index: "001.001" + reaction: + $ref: '#/components/schemas/Reaction' + x-stream-index: "002" + team: type: string - x-stream-index: "003" - participant_count: - format: int32 - type: integer - x-stream-index: "008" - reply_count: - format: int32 - type: integer - x-stream-index: "007" + x-stream-index: "005.001" thread_participants: items: - $ref: '#/components/schemas/ThreadParticipant' + $ref: '#/components/schemas/UserObject' type: array - x-stream-index: "009" - title: - type: string - x-stream-index: "014" - updated_at: - format: date-time + x-stream-index: "001.002" + type: + default: reaction.new type: string - x-stream-index: "012" + x-stream-index: "006.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "003.001" required: - - channel_cid - - parent_message_id - - created_by_user_id + - cid + - channel_id + - channel_type + - type - created_at - - updated_at - - title - - custom + title: ReactionNewEvent type: object - ThreadState: - description: Represents a conversation thread linked to a specific message in - a channel. + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + ReactionRemovalResponse: nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "003.001" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "001" + reaction: + $ref: '#/components/schemas/Reaction' + x-stream-index: "002" + required: + - duration + type: object + ReactionRequest: + description: Represents user reaction to a message properties: Custom: type: object writeOnly: true - x-stream-index: "001.017" - channel: - $ref: '#/components/schemas/Channel' - description: Channel is the channel the thread belongs to - title: Channel - x-stream-index: "001.004" - channel_cid: - description: Channel CID is unique string identifier of the channel - title: Channel CID - type: string - x-stream-index: "001.003" - created_at: - description: Date/time of creation - format: date-time - title: Created at + x-stream-index: "010" + message_id: + description: ID of a message user reacted to + title: Message ID type: string - x-stream-index: "001.013" - created_by: - $ref: '#/components/schemas/UserObject' - description: Created By is the user who created the thread - title: Created By - x-stream-index: "001.008" - deleted_at: - description: Date/time of deletion - format: date-time - title: Deleted at - type: string - x-stream-index: "001.015" - last_message_at: - description: Last Message At is the time of the last message in the thread - format: date-time - title: Last Message At - type: string - x-stream-index: "001.012" - latest_replies: - items: - $ref: '#/components/schemas/Message' - type: array - x-stream-index: "002" - parent_message: - $ref: '#/components/schemas/Message' - description: Parent Message is the message the thread is replying to - title: Parent Message - x-stream-index: "001.006" - parent_message_id: - description: Parent Message ID is unique string identifier of the parent - message - title: Parent Message ID - type: string - x-stream-index: "001.005" - participant_count: - description: The number of participants in the thread - format: int32 - title: Participant Count - type: integer - x-stream-index: "001.010" - read: - items: - $ref: '#/components/schemas/Read' - type: array x-stream-index: "003" - reply_count: - description: The number of replies in the thread + score: + description: Reaction score. If not specified reaction has score of 1 format: int32 - title: Reply Count + title: Score type: integer - x-stream-index: "001.009" - thread_participants: - items: - $ref: '#/components/schemas/ThreadParticipant' - type: array - x-stream-index: "001.011" - title: - description: Title is the title of the thread - title: Title + x-stream-index: "007" + type: + description: The type of reaction (e.g. 'like', 'laugh', 'wow') + maxLength: 30 + title: Type type: string - x-stream-index: "001.016" - updated_at: - description: Date/time of the last update - format: date-time - title: Updated at + x-stream-index: "006" + user: + $ref: '#/components/schemas/UserObjectRequest' + x-stream-index: "005" + user_id: + description: ID of a user who reacted to a message + title: User ID type: string - x-stream-index: "001.014" + x-stream-index: "004" required: - - channel_cid - - parent_message_id - - created_at - - updated_at - - title - - Custom - - latest_replies - title: Thread + - type + title: Reaction type: object - ThreadStateResponse: + x-stream-docs-page-id: send_reaction + ReactionResponse: + nullable: true properties: - channel: - $ref: '#/components/schemas/ChannelResponse' - x-stream-index: "001.002" - channel_cid: - type: string - x-stream-index: "001.001" - created_at: - format: date-time - type: string - x-stream-index: "001.011" - created_by: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001.006" - created_by_user_id: - type: string - x-stream-index: "001.005" - custom: - type: object - x-stream-index: "001.015" - deleted_at: - format: date-time - type: string - x-stream-index: "001.013" - last_message_at: - format: date-time + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "001.010" - latest_replies: - items: - $ref: '#/components/schemas/Message' - type: array - x-stream-index: "002" - parent_message: + x-stream-index: "003.001" + message: $ref: '#/components/schemas/Message' - x-stream-index: "001.004" - parent_message_id: - type: string - x-stream-index: "001.003" - participant_count: - format: int32 - type: integer - x-stream-index: "001.008" - read: - items: - $ref: '#/components/schemas/Read' - type: array - x-stream-index: "003" - reply_count: - format: int32 - type: integer - x-stream-index: "001.007" - thread_participants: - items: - $ref: '#/components/schemas/ThreadParticipant' - type: array - x-stream-index: "001.009" - title: - type: string - x-stream-index: "001.014" - updated_at: - format: date-time - type: string - x-stream-index: "001.012" + x-stream-index: "001" + reaction: + $ref: '#/components/schemas/Reaction' + x-stream-index: "002" required: - - channel_cid - - parent_message_id - - created_by_user_id - - created_at - - updated_at - - title - - custom - - latest_replies + - duration type: object - ThreadUpdatedEvent: + ReactionUpdatedEvent: properties: channel_id: type: string - x-stream-index: "001.002" + x-stream-index: "004.002" channel_type: type: string - x-stream-index: "001.003" + x-stream-index: "004.003" cid: type: string - x-stream-index: "001.001" + x-stream-index: "004.001" created_at: format: date-time type: string - x-stream-index: "004.002" - thread: - $ref: '#/components/schemas/Thread' - x-stream-index: "003.001" + x-stream-index: "006.002" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "001" + reaction: + $ref: '#/components/schemas/Reaction' + x-stream-index: "002" + team: + type: string + x-stream-index: "005.001" type: - default: thread.updated + default: reaction.updated type: string - x-stream-index: "004.001" + x-stream-index: "006.001" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "002.001" + x-stream-index: "003.001" required: + - message + - reaction - cid - channel_id - channel_type - type - created_at - title: ThreadUpdatedEvent + title: ReactionUpdatedEvent type: object x-stream-event-client-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent - Thresholds: - description: Sets thresholds for AI moderation + Read: + nullable: true properties: - explicit: - $ref: '#/components/schemas/LabelThresholds' - description: Thresholds for explicit messages - title: Explicit - x-stream-index: "001" - spam: - $ref: '#/components/schemas/LabelThresholds' - description: Thresholds for spam - title: Spam + last_read: + format: date-time + type: string x-stream-index: "002" - toxic: - $ref: '#/components/schemas/LabelThresholds' - description: Thresholds for toxic messages - title: Toxic + last_read_message_id: + type: string + x-stream-index: "004" + unread_messages: + format: int32 + type: integer x-stream-index: "003" - title: Auto moderation thresholds - type: object - ThumbnailsSettings: - properties: - enabled: - type: boolean + user: + $ref: '#/components/schemas/UserObject' x-stream-index: "001" required: - - enabled + - last_read + - unread_messages type: object - TranscriptionSettings: + RecordSettings: properties: - closed_caption_mode: + audio_only: + type: boolean + x-stream-index: "001" + layout: + $ref: '#/components/schemas/LayoutSettings' + x-stream-index: "004" + mode: type: string x-stream-index: "002" - mode: - enum: - - available - - disabled - - auto-on + quality: type: string - x-stream-index: "001" + x-stream-index: "003" required: + - audio_only - mode - - closed_caption_mode + - quality type: object - TranslateMessageRequest: + Response: nullable: true properties: - language: - description: Language to translate message to - enum: - - af - - sq - - am - - ar - - az - - bn - - bs - - bg - - zh - - zh-TW - - hr - - cs - - da - - fa-AF - - nl - - en - - et - - fi - - fr - - fr-CA - - ka - - de - - el - - ha - - he - - hi - - hu - - id - - it - - ja - - ko - - lv - - ms - - "no" - - fa - - ps - - pl - - pt - - ro - - ru - - sr - - sk - - sl - - so - - es - - es-MX - - sw - - sv - - tl - - ta - - th - - tr - - uk - - ur - - vi - title: Language + duration: + description: Duration of the request in human-readable format + title: Duration type: string + x-stream-index: "001" + required: + - duration + type: object + RingSettings: + properties: + auto_cancel_timeout_ms: + format: int32 + type: integer x-stream-index: "002" + incoming_call_timeout_ms: + format: int32 + type: integer + x-stream-index: "001" required: - - language + - incoming_call_timeout_ms + - auto_cancel_timeout_ms type: object - TruncateChannelRequest: - nullable: true + ScreensharingSettings: properties: - hard_delete: - description: Permanently delete channel data (messages, reactions, etc.) - title: Hard delete + access_request_enabled: type: boolean x-stream-index: "002" - message: - $ref: '#/components/schemas/MessageRequest' - x-stream-index: "004" - skip_push: - description: When `message` is set disables all push notifications for it - title: Skip push + enabled: type: boolean + x-stream-index: "001" + required: + - enabled + - access_request_enabled + type: object + SearchRequest: + properties: + filter_conditions: + description: Channel filter conditions + maximum: 100 + minimum: 1 + title: Channel filter + type: object + x-stream-docs-page-id: query_channels + x-stream-index: "002" + limit: + description: Number of messages to return + format: int32 + title: Limit + type: integer + x-stream-index: "004" + message_filter_conditions: + description: Message filter conditions + title: Message filter + type: object + x-stream-index: "003" + next: + description: Pagination parameter. Cannot be used with non-zero offset. + title: Next + type: string + x-stream-index: "007" + offset: + description: Pagination offset. Cannot be used with sort or next. + format: int32 + title: Offset + type: integer x-stream-index: "005" - truncated_at: - description: Truncate channel data up to `truncated_at`. The system message - (if provided) creation time is always greater than `truncated_at` - format: date-time - title: Truncated at + query: + description: Search phrase + title: Query type: string + x-stream-index: "001" + sort: + description: Sort parameters. Cannot be used with non-zero offset + items: + $ref: '#/components/schemas/SortParam' + title: Sort + type: array x-stream-index: "006" + required: + - filter_conditions type: object - TruncateChannelResponse: + SearchResponse: nullable: true properties: - channel: - $ref: '#/components/schemas/ChannelResponse' - x-stream-index: "002" duration: - description: Duration of the request in human-readable format - title: Duration type: string - x-stream-index: "001.001" - message: - $ref: '#/components/schemas/Message' + x-stream-index: "005.001" + next: + description: Value to pass to the next search query in order to paginate + title: Next + type: string x-stream-index: "003" + previous: + description: Value that points to the previous page. Pass as the next value + in a search query to paginate backwards + title: Previous + type: string + x-stream-index: "004" + results: + description: Search results + items: + $ref: '#/components/schemas/SearchResult' + title: Results + type: array + x-stream-index: "001" + results_warning: + $ref: '#/components/schemas/SearchWarning' + description: Warning about the search results + title: Results Warning + x-stream-index: "002" required: + - results - duration type: object - TypingStartEvent: + SearchResult: + nullable: true properties: - channel_id: - type: string - x-stream-index: "003.002" - channel_type: - type: string - x-stream-index: "003.003" - cid: - type: string - x-stream-index: "003.001" - created_at: - format: date-time - type: string - x-stream-index: "004.002" - parent_id: - type: string + message: + $ref: '#/components/schemas/SearchResultMessage' + description: Found message + title: Message x-stream-index: "001" - type: - default: typing.start - type: string - x-stream-index: "004.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "002.001" - required: - - cid - - channel_id - - channel_type - - type - - created_at - title: TypingStartEvent type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - TypingStopEvent: + SearchResultMessage: properties: - channel_id: - type: string - x-stream-index: "002.002" - channel_type: - type: string - x-stream-index: "002.003" + Custom: + type: object + writeOnly: true + x-stream-index: "001.031" + attachments: + items: + $ref: '#/components/schemas/Attachment' + type: array + x-stream-index: "001.011" + before_message_send_failed: + type: boolean + x-stream-index: "001.043" + channel: + $ref: '#/components/schemas/ChannelResponse' + description: Channel object + title: Channel + x-stream-index: "002" cid: type: string - x-stream-index: "002.001" + x-stream-index: "001.026" + command: + type: string + x-stream-index: "001.006" created_at: format: date-time type: string - x-stream-index: "004.002" - parent_id: + x-stream-index: "001.028" + deleted_at: + format: date-time type: string - x-stream-index: "001" - type: - default: typing.stop + x-stream-index: "001.030" + deleted_reply_count: + format: int32 + type: integer + x-stream-index: "001.021" + html: type: string - x-stream-index: "004.001" + x-stream-index: "001.007" + i18n: + additionalProperties: + type: string + type: object + x-stream-index: "001.041" + id: + type: string + x-stream-index: "001.002" + image_labels: + additionalProperties: + items: + type: string + type: array + type: object + x-stream-index: "001.037" + latest_reactions: + items: + $ref: '#/components/schemas/Reaction' + type: array + x-stream-index: "001.012" + mentioned_users: + items: + $ref: '#/components/schemas/UserObject' + type: array + x-stream-index: "001.040" + message_text_updated_at: + format: date-time + type: string + x-stream-index: "001.049" + mml: + type: string + x-stream-index: "001.005" + own_reactions: + items: + $ref: '#/components/schemas/Reaction' + type: array + x-stream-index: "001.013" + parent_id: + type: string + x-stream-index: "001.017" + pin_expires: + format: date-time + type: string + x-stream-index: "001.048" + pinned: + type: boolean + x-stream-index: "001.044" + pinned_at: + format: date-time + type: string + x-stream-index: "001.045" + pinned_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001.047" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001.051" + poll_id: + type: string + x-stream-index: "001.050" + quoted_message: + $ref: '#/components/schemas/Message' + x-stream-index: "001.023" + quoted_message_id: + type: string + x-stream-index: "001.022" + reaction_counts: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "001.014" + reaction_scores: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "001.015" + reply_count: + format: int32 + type: integer + x-stream-index: "001.020" + shadowed: + type: boolean + x-stream-index: "001.033" + show_in_channel: + type: boolean + x-stream-index: "001.019" + silent: + type: boolean + x-stream-index: "001.042" + text: + type: string + x-stream-index: "001.004" + thread_participants: + items: + $ref: '#/components/schemas/UserObject' + type: array + x-stream-index: "001.025" + type: + type: string + x-stream-index: "001.008" + updated_at: + format: date-time + type: string + x-stream-index: "001.029" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" + x-stream-index: "001.010" required: - - cid - - channel_id - - channel_type + - id + - text + - html - type + - attachments + - latest_reactions + - own_reactions + - reaction_counts + - reaction_scores + - reply_count + - deleted_reply_count + - cid - created_at - title: TypingStopEvent + - updated_at + - Custom + - shadowed + - mentioned_users + - silent + - pinned + - poll_id type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UnmuteChannelRequest: - nullable: true + SearchWarning: properties: - channel_cids: - description: Channel CIDs to mute (if multiple channels) + channel_search_cids: + description: Channel CIDs for the searched channels items: type: string - maximum: 25 - title: Channel CIDs + title: Channel Search CIDs type: array - x-stream-index: "001.002" - expiration: - description: Duration of mute in milliseconds - title: Expiration + x-stream-index: "004" + channel_search_count: + description: Number of channels searched + format: int32 + title: Channel Search Count type: integer - x-stream-index: "001.003" + x-stream-index: "003" + warning_code: + description: Code corresponding to the warning + format: int32 + title: Warning Code + type: integer + x-stream-index: "002" + warning_description: + description: Description of the warning + title: Warning Description + type: string + x-stream-index: "001" required: - - channel_cids + - warning_description + - warning_code type: object - UnmuteResponse: + SendEventRequest: nullable: true properties: - duration: - description: Duration of the request in human-readable format - title: Duration - type: string - x-stream-index: "002.001" - non_existing_users: - items: - type: string - type: array + event: + $ref: '#/components/schemas/EventRequest' x-stream-index: "001" required: - - duration + - event type: object - UnmuteUserRequest: + SendMessageRequest: nullable: true properties: - target_ids: - description: User IDs to mute (if multiple users) - items: - type: string - maximum: 1000 - title: Target IDs - type: array - x-stream-index: "001.002" - timeout: - description: Duration of mute in minutes - minimum: 0 - title: Timeout - type: integer - x-stream-index: "001.003" + message: + $ref: '#/components/schemas/MessageRequest' + x-stream-index: "001" + skip_enrich_url: + type: boolean + x-stream-index: "003" + skip_push: + type: boolean + x-stream-index: "002" required: - - target_ids + - message type: object - UnreadCountsChannel: + SendMessageResponse: + nullable: true properties: - channel_id: + duration: + description: Duration of the request in human-readable format + title: Duration type: string + x-stream-index: "003.001" + message: + $ref: '#/components/schemas/Message' x-stream-index: "001" - last_read: - format: date-time - type: string - x-stream-index: "003" - unread_count: - format: int32 - type: integer + pending_message_metadata: + additionalProperties: + type: string + type: object x-stream-index: "002" required: - - channel_id - - unread_count - - last_read + - message + - duration type: object - UnreadCountsChannelType: + SendReactionRequest: + nullable: true properties: - channel_count: - format: int32 - type: integer - x-stream-index: "002" - channel_type: + ID: type: string + writeOnly: true x-stream-index: "001" - unread_count: - format: int32 - type: integer + enforce_unique: + description: Whether to replace all existing user reactions + title: Enforce unique + type: boolean x-stream-index: "003" - required: - - channel_type - - channel_count - - unread_count - type: object - UnreadCountsThread: - properties: - last_read: - format: date-time - type: string + reaction: + $ref: '#/components/schemas/ReactionRequest' x-stream-index: "002" - last_read_message_id: - type: string - x-stream-index: "003" - parent_message_id: - type: string + skip_push: + description: Skips any mobile push notifications + title: Skip push + type: boolean x-stream-index: "004" - unread_count: - format: int32 - type: integer - x-stream-index: "001" required: - - unread_count - - last_read - - last_read_message_id - - parent_message_id + - reaction type: object - UpdateChannelPartialRequest: + ShowChannelRequest: nullable: true - properties: - set: - type: object - x-stream-index: "002.001" - unset: - items: - type: string - type: array - x-stream-index: "002.002" - required: - - set - - unset type: object - UpdateChannelPartialResponse: + ShowChannelResponse: nullable: true properties: - channel: - $ref: '#/components/schemas/ChannelResponse' - x-stream-index: "001" duration: description: Duration of the request in human-readable format title: Duration type: string - x-stream-index: "003.001" - members: - items: - $ref: '#/components/schemas/ChannelMember' - type: array - x-stream-index: "002" + x-stream-index: "001.001" required: - - members - duration type: object - UpdateChannelRequest: + SortParam: nullable: true properties: - accept_invite: - description: Set to `true` to accept the invite - title: Accept invite - type: boolean - x-stream-index: "008" - add_members: - description: List of user IDs to add to the channel - items: - $ref: '#/components/schemas/ChannelMemberRequest' - maximum: 100 - title: Add members - type: array - x-stream-index: "001" - add_moderators: - description: List of user IDs to make channel moderators - items: - type: string - maximum: 100 - title: Add moderators - type: array - x-stream-index: "003" - assign_roles: - description: List of channel member role assignments. If any specified user - is not part of the channel, the request will fail - items: - $ref: '#/components/schemas/ChannelMemberRequest' - maximum: 100 - title: Assign roles - type: array - x-stream-index: "006" - cooldown: - description: Sets cool down period for the channel in seconds + direction: + description: Direction of sorting, -1 for descending, 1 for ascending format: int32 - maximum: 120 - minimum: 0 - title: Cool down + title: Direction type: integer - x-stream-index: "007" - data: - $ref: '#/components/schemas/ChannelRequest' - x-stream-index: "013.001" - demote_moderators: - description: List of user IDs to take away moderators status from - items: - type: string - maximum: 100 - title: Demote moderators - type: array - x-stream-index: "004" - hide_history: - description: Set to `true` to hide channel's history when adding new members - title: Hide history - type: boolean - x-stream-index: "012" - invites: - description: List of user IDs to invite to the channel - items: - $ref: '#/components/schemas/ChannelMemberRequest' - maximum: 100 - title: Invites - type: array - x-stream-index: "005" - message: - $ref: '#/components/schemas/MessageRequest' - description: Message to send to the chat when channel is successfully updated - title: Message - x-stream-index: "010" - reject_invite: - description: Set to `true` to reject the invite - title: Reject invite - type: boolean - x-stream-index: "009" - remove_members: - description: List of user IDs to remove from the channel - items: - type: string - maximum: 100 - title: Remove members - type: array x-stream-index: "002" - skip_push: - description: When `message` is set disables all push notifications for it - title: Skip push - type: boolean - x-stream-index: "011" - required: - - remove_members - - add_moderators - - demote_moderators - title: Channel update request + field: + description: Name of field to sort by + title: Field + type: string + x-stream-index: "001" type: object - x-stream-docs-page-id: channel_update - UpdateChannelResponse: + SortParamRequest: nullable: true properties: - channel: - $ref: '#/components/schemas/ChannelResponse' + direction: + description: Direction of sorting, -1 for descending, 1 for ascending + format: int32 + title: Direction + type: integer + x-stream-index: "002" + field: + description: Name of field to sort by + title: Field + type: string x-stream-index: "001" + type: object + StopWatchingResponse: + nullable: true + properties: duration: description: Duration of the request in human-readable format title: Duration type: string - x-stream-index: "004.001" - members: - items: - $ref: '#/components/schemas/ChannelMember' - type: array - x-stream-index: "003" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "002" + x-stream-index: "001.001" required: - - members - duration type: object - UpdateMessagePartialRequest: + SyncRequest: nullable: true properties: - set: - description: Sets new field values - title: Set - type: object - x-stream-index: "002.001" - x-stream-map: - description: New value to set - key: field - title: Value - skip_enrich_url: - type: boolean - x-stream-index: "001" - unset: - description: Array of field names to unset + channel_cids: + description: List of channel CIDs to sync items: type: string - title: Unset + maximum: 255 + minimum: 1 + title: Channel CIDs type: array - x-stream-index: "002.002" + x-stream-index: "001" + connection_id: + type: string + x-stream-index: "006.003" + last_sync_at: + description: Date from which synchronization should happen + format: date-time + title: Last sync at + type: string + x-stream-index: "002" + watch: + description: If set to true this will start watching requested and newly + added channels that user has access to. If error occurred with this option + enabled and it is not an input error - channels will still be watched. + title: Watch synced channels + type: boolean + x-stream-index: "004" + with_inaccessible_cids: + description: If set to true this will add 'inaccessible_cids' to response + type + title: With inaccessible CIDs + type: boolean + x-stream-index: "003" required: - - set - - unset + - last_sync_at type: object - UpdateMessagePartialResponse: + SyncResponse: nullable: true properties: duration: - description: Duration of the request in human-readable format - title: Duration type: string x-stream-index: "003.001" - message: - $ref: '#/components/schemas/Message' + events: + description: List of events + items: + $ref: '#/components/schemas/WSEvent' + title: Events + type: array x-stream-index: "001" - pending_message_metadata: - additionalProperties: + inaccessible_cids: + description: List of CIDs that user can't access + items: type: string - type: object + title: Inaccessible CIDs + type: array x-stream-index: "002" required: - - message + - events - duration type: object - UpdateMessageRequest: - nullable: true + TargetResolution: properties: - message: - $ref: '#/components/schemas/MessageRequest' - x-stream-index: "001" - skip_enrich_url: - type: boolean + bitrate: + format: int32 + maximum: 6000000 + type: integer + x-stream-index: "003" + height: + format: int32 + maximum: 2560 + minimum: 240 + type: integer x-stream-index: "002" + width: + format: int32 + maximum: 2560 + minimum: 240 + type: integer + x-stream-index: "001" required: - - message + - width + - height + - bitrate type: object - UpdateMessageResponse: - nullable: true + Thread: + description: Represents a conversation thread linked to a specific message in + a channel. properties: - duration: - description: Duration of the request in human-readable format - title: Duration + Custom: + type: object + writeOnly: true + x-stream-index: "017" + channel: + $ref: '#/components/schemas/Channel' + description: Channel is the channel the thread belongs to + title: Channel + x-stream-index: "004" + channel_cid: + description: Channel CID is unique string identifier of the channel + title: Channel CID type: string - x-stream-index: "003.001" - message: + x-stream-index: "003" + created_at: + description: Date/time of creation + format: date-time + title: Created at + type: string + x-stream-index: "013" + created_by: + $ref: '#/components/schemas/UserObject' + description: Created By is the user who created the thread + title: Created By + x-stream-index: "008" + deleted_at: + description: Date/time of deletion + format: date-time + title: Deleted at + type: string + x-stream-index: "015" + last_message_at: + description: Last Message At is the time of the last message in the thread + format: date-time + title: Last Message At + type: string + x-stream-index: "012" + parent_message: $ref: '#/components/schemas/Message' - x-stream-index: "001" - pending_message_metadata: - additionalProperties: - type: string - type: object - x-stream-index: "002" - required: - - message - - duration - type: object - UpdateThreadPartialRequest: - nullable: true - properties: - ID: + description: Parent Message is the message the thread is replying to + title: Parent Message + x-stream-index: "006" + parent_message_id: + description: Parent Message ID is unique string identifier of the parent + message + title: Parent Message ID type: string - writeOnly: true - x-stream-index: "001" - set: - type: object - x-stream-index: "004.001" - unset: + x-stream-index: "005" + participant_count: + description: The number of participants in the thread + format: int32 + title: Participant Count + type: integer + x-stream-index: "010" + reply_count: + description: The number of replies in the thread + format: int32 + title: Reply Count + type: integer + x-stream-index: "009" + thread_participants: items: - type: string + $ref: '#/components/schemas/ThreadParticipant' type: array - x-stream-index: "004.002" - required: - - set - - unset - type: object - UpdateThreadPartialResponse: - nullable: true - properties: - duration: + x-stream-index: "011" + title: + description: Title is the title of the thread + title: Title type: string - x-stream-index: "002.001" - thread: - $ref: '#/components/schemas/ThreadResponse' - description: Updated thread (not enriched) - title: Thread - x-stream-index: "001" - required: - - thread - - duration - type: object - UpdateUserPartialRequest: - nullable: true - properties: - id: - description: User ID to update - title: ID + x-stream-index: "016" + updated_at: + description: Date/time of the last update + format: date-time + title: Updated at type: string - x-stream-index: "001" - set: - type: object - x-stream-index: "002.001" - unset: - items: - type: string - type: array - x-stream-index: "002.002" + x-stream-index: "014" required: - - id - - set - - unset + - channel_cid + - parent_message_id + - created_at + - updated_at + - title + - Custom + title: Thread type: object - UpdateUsersRequest: + ThreadParticipant: + description: Represents a user that is participating in a thread. nullable: true properties: - users: - additionalProperties: - $ref: '#/components/schemas/UserObjectRequest' - description: Object containing users - title: Users + Custom: type: object - x-stream-index: "001" - x-stream-map: - key: user_id - required: - - users - type: object - UpdateUsersResponse: - nullable: true - properties: - duration: - type: string - x-stream-index: "003.001" - membership_deletion_task_id: - type: string + writeOnly: true + x-stream-index: "010" + app_pk: + format: int32 + readOnly: true + type: integer x-stream-index: "002" - users: - additionalProperties: - $ref: '#/components/schemas/UserObject' - description: Object containing users - title: Users - type: object - x-stream-index: "001" - x-stream-map: - key: user_id - required: - - users - - membership_deletion_task_id - - duration - type: object - UserBannedEvent: - properties: - channel_id: - type: string - x-stream-index: "006.002" - channel_type: - type: string - x-stream-index: "006.003" - cid: + channel_cid: type: string - x-stream-index: "006.001" + x-stream-index: "003" created_at: + description: Date/time of creation format: date-time + title: Created at type: string - x-stream-index: "008.002" - created_by: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001" - expiration: + x-stream-index: "007" + last_read_at: format: date-time type: string - x-stream-index: "003" - reason: - type: string - x-stream-index: "004" - shadow: - type: boolean - x-stream-index: "002" - team: + x-stream-index: "009" + left_thread_at: + description: Left Thread At is the time when the user left the thread + format: date-time + title: Left Thread At type: string - x-stream-index: "005.001" - type: - default: user.banned + x-stream-index: "008" + thread_id: + description: Thead ID is unique string identifier of the thread + title: ID type: string - x-stream-index: "008.001" + x-stream-index: "004" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "007.001" + description: User is the user object + title: User + x-stream-index: "006" + user_id: + description: User ID is unique string identifier of the user + title: User ID + type: string + x-stream-index: "005" required: - - created_by - - shadow - - cid - - channel_id - - channel_type - - type + - app_pk + - channel_cid - created_at - title: UserBannedEvent + - last_read_at + - Custom + title: ThreadParticipant type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserDeactivatedEvent: + ThreadResponse: properties: + channel: + $ref: '#/components/schemas/ChannelResponse' + x-stream-index: "002" + channel_cid: + type: string + x-stream-index: "001" created_at: format: date-time type: string - x-stream-index: "003.002" + x-stream-index: "011" created_by: $ref: '#/components/schemas/UserObject' - x-stream-index: "001" - type: - default: user.deactivated + x-stream-index: "006" + created_by_user_id: type: string - x-stream-index: "003.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "002.001" - required: - - created_by - - type - - created_at - title: UserDeactivatedEvent - type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserDeletedEvent: - properties: - created_at: + x-stream-index: "005" + custom: + type: object + x-stream-index: "015" + deleted_at: format: date-time type: string - x-stream-index: "002.002" - delete_conversation_channels: - type: boolean - x-stream-index: "005" - hard_delete: - type: boolean - x-stream-index: "003.001" - mark_messages_deleted: - type: boolean + x-stream-index: "013" + last_message_at: + format: date-time + type: string + x-stream-index: "010" + parent_message: + $ref: '#/components/schemas/Message' x-stream-index: "004" - type: - default: user.deleted + parent_message_id: type: string - x-stream-index: "002.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001.001" + x-stream-index: "003" + participant_count: + format: int32 + type: integer + x-stream-index: "008" + reply_count: + format: int32 + type: integer + x-stream-index: "007" + thread_participants: + items: + $ref: '#/components/schemas/ThreadParticipant' + type: array + x-stream-index: "009" + title: + type: string + x-stream-index: "014" + updated_at: + format: date-time + type: string + x-stream-index: "012" required: - - type + - channel_cid + - parent_message_id + - created_by_user_id - created_at - - hard_delete - - mark_messages_deleted - - delete_conversation_channels - title: UserDeletedEvent + - updated_at + - title + - custom type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserMute: + ThreadState: + description: Represents a conversation thread linked to a specific message in + a channel. nullable: true properties: + Custom: + type: object + writeOnly: true + x-stream-index: "001.017" + channel: + $ref: '#/components/schemas/Channel' + description: Channel is the channel the thread belongs to + title: Channel + x-stream-index: "001.004" + channel_cid: + description: Channel CID is unique string identifier of the channel + title: Channel CID + type: string + x-stream-index: "001.003" created_at: description: Date/time of creation format: date-time title: Created at type: string - x-stream-index: "009" - expires: - description: Date/time of mute expiration + x-stream-index: "001.013" + created_by: + $ref: '#/components/schemas/UserObject' + description: Created By is the user who created the thread + title: Created By + x-stream-index: "001.008" + deleted_at: + description: Date/time of deletion format: date-time - title: Expires + title: Deleted at type: string - x-stream-index: "008" - target: - $ref: '#/components/schemas/UserObject' - description: User who's muted - title: Target - x-stream-index: "007" + x-stream-index: "001.015" + last_message_at: + description: Last Message At is the time of the last message in the thread + format: date-time + title: Last Message At + type: string + x-stream-index: "001.012" + latest_replies: + items: + $ref: '#/components/schemas/Message' + type: array + x-stream-index: "002" + parent_message: + $ref: '#/components/schemas/Message' + description: Parent Message is the message the thread is replying to + title: Parent Message + x-stream-index: "001.006" + parent_message_id: + description: Parent Message ID is unique string identifier of the parent + message + title: Parent Message ID + type: string + x-stream-index: "001.005" + participant_count: + description: The number of participants in the thread + format: int32 + title: Participant Count + type: integer + x-stream-index: "001.010" + read: + items: + $ref: '#/components/schemas/Read' + type: array + x-stream-index: "003" + reply_count: + description: The number of replies in the thread + format: int32 + title: Reply Count + type: integer + x-stream-index: "001.009" + thread_participants: + items: + $ref: '#/components/schemas/ThreadParticipant' + type: array + x-stream-index: "001.011" + title: + description: Title is the title of the thread + title: Title + type: string + x-stream-index: "001.016" updated_at: description: Date/time of the last update format: date-time title: Updated at type: string - x-stream-index: "010" - user: - $ref: '#/components/schemas/UserObject' - description: Owner of channel mute - title: User - x-stream-index: "005" + x-stream-index: "001.014" required: + - channel_cid + - parent_message_id - created_at - updated_at + - title + - Custom + - latest_replies + title: Thread type: object - UserMutedEvent: + ThreadStateResponse: properties: + channel: + $ref: '#/components/schemas/ChannelResponse' + x-stream-index: "001.002" + channel_cid: + type: string + x-stream-index: "001.001" created_at: format: date-time type: string - x-stream-index: "004.002" - target_user: + x-stream-index: "001.011" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001.006" + created_by_user_id: type: string - x-stream-index: "001" - target_users: + x-stream-index: "001.005" + custom: + type: object + x-stream-index: "001.015" + deleted_at: + format: date-time + type: string + x-stream-index: "001.013" + last_message_at: + format: date-time + type: string + x-stream-index: "001.010" + latest_replies: items: - type: string + $ref: '#/components/schemas/Message' type: array x-stream-index: "002" - type: - default: user.muted - type: string - x-stream-index: "004.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" - required: - - type - - created_at - title: UserMutedEvent - type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserObject: - description: Represents chat user - properties: - Custom: - type: object - writeOnly: true - x-stream-index: "005" - ban_expires: - description: Expiration date of the ban - format: date-time - title: Ban expires - type: string - x-stream-index: "015" - banned: - description: Whether a user is banned or not - title: Banned - type: boolean - x-stream-index: "014" - created_at: - description: Date/time of creation - format: date-time - readOnly: true - title: Created at - type: string - x-stream-index: "007" - deactivated_at: - description: Date of deactivation - format: date-time - readOnly: true - title: Deactivated at - type: string - x-stream-index: "012" - deleted_at: - description: Date/time of deletion - format: date-time - readOnly: true - title: Deleted at - type: string - x-stream-index: "011" - id: - description: Unique user identifier - title: ID + parent_message: + $ref: '#/components/schemas/Message' + x-stream-index: "001.004" + parent_message_id: type: string + x-stream-index: "001.003" + participant_count: + format: int32 + type: integer + x-stream-index: "001.008" + read: + items: + $ref: '#/components/schemas/Read' + type: array x-stream-index: "003" - invisible: - type: boolean - x-stream-index: "021" - language: - description: Preferred language of a user - title: Language - type: string - x-stream-index: "031" - last_active: - description: Date of last activity - format: date-time - readOnly: true - title: Last active - type: string - x-stream-index: "010" - online: - description: Whether a user online or not - readOnly: true - title: Online - type: boolean - x-stream-index: "020" - push_notifications: - $ref: '#/components/schemas/PushNotificationSettings' - x-stream-index: "023" - revoke_tokens_issued_before: - description: Revocation date for tokens - format: date-time - title: Revoke tokens issued before - type: string - x-stream-index: "038" - role: - description: Determines the set of user permissions - title: Role - type: string - x-stream-index: "004" - teams: - description: List of teams user is a part of + reply_count: + format: int32 + type: integer + x-stream-index: "001.007" + thread_participants: items: - type: string - title: Teams + $ref: '#/components/schemas/ThreadParticipant' type: array - x-stream-index: "032" + x-stream-index: "001.009" + title: + type: string + x-stream-index: "001.014" updated_at: - description: Date/time of the last update format: date-time - readOnly: true - title: Updated at type: string - x-stream-index: "008" + x-stream-index: "001.012" required: - - id - - role - - Custom - - banned - - online - title: User object + - channel_cid + - parent_message_id + - created_by_user_id + - created_at + - updated_at + - title + - custom + - latest_replies type: object - UserObjectRequest: - description: Represents chat user + ThreadUpdatedEvent: properties: - Custom: - type: object - writeOnly: true - x-stream-index: "005" - ban_expires: - description: Expiration date of the ban - format: date-time - title: Ban expires - type: string - x-stream-index: "015" - banned: - description: Whether a user is banned or not - title: Banned - type: boolean - x-stream-index: "014" - id: - description: Unique user identifier - title: ID - type: string - x-stream-index: "003" - invisible: - type: boolean - x-stream-index: "021" - language: - description: Preferred language of a user - title: Language + channel_id: type: string - x-stream-index: "031" - push_notifications: - $ref: '#/components/schemas/PushNotificationSettingsRequest' - x-stream-index: "023" - revoke_tokens_issued_before: - description: Revocation date for tokens - format: date-time - title: Revoke tokens issued before + x-stream-index: "001.002" + channel_type: type: string - x-stream-index: "038" - role: - description: Determines the set of user permissions - title: Role + x-stream-index: "001.003" + cid: type: string - x-stream-index: "004" - teams: - description: List of teams user is a part of - items: - type: string - title: Teams - type: array - x-stream-index: "032" - required: - - id - title: User object - type: object - UserPresenceChangedEvent: - properties: + x-stream-index: "001.001" created_at: format: date-time type: string - x-stream-index: "002.002" + x-stream-index: "004.002" + thread: + $ref: '#/components/schemas/Thread' + x-stream-index: "003.001" type: - default: user.presence.changed + default: thread.updated type: string - x-stream-index: "002.001" + x-stream-index: "004.001" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "001.001" + x-stream-index: "002.001" required: + - cid + - channel_id + - channel_type - type - created_at - title: UserPresenceChangedEvent + title: ThreadUpdatedEvent type: object x-stream-event-client-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent - UserReactivatedEvent: + Thresholds: + description: Sets thresholds for AI moderation properties: - created_at: - format: date-time - type: string - x-stream-index: "002.002" - type: - default: user.reactivated - type: string - x-stream-index: "002.001" - user: - $ref: '#/components/schemas/UserObject' + explicit: + $ref: '#/components/schemas/LabelThresholds' + description: Thresholds for explicit messages + title: Explicit + x-stream-index: "001" + spam: + $ref: '#/components/schemas/LabelThresholds' + description: Thresholds for spam + title: Spam + x-stream-index: "002" + toxic: + $ref: '#/components/schemas/LabelThresholds' + description: Thresholds for toxic messages + title: Toxic + x-stream-index: "003" + title: Auto moderation thresholds + type: object + ThumbnailsSettings: + properties: + enabled: + type: boolean x-stream-index: "001" required: - - type - - created_at - title: UserReactivatedEvent + - enabled type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserRequest: + TranscriptionSettings: properties: - custom: - title: Custom - type: object - x-stream-index: "004" - id: - description: User ID - title: ID + closed_caption_mode: type: string - x-stream-index: "001" - image: - title: Image + x-stream-index: "002" + mode: + enum: + - available + - disabled + - auto-on type: string - x-stream-index: "003" + x-stream-index: "001" + required: + - mode + - closed_caption_mode + type: object + TranslateMessageRequest: + nullable: true + properties: language: - type: string - x-stream-index: "005" - name: - description: Optional name of user - title: Name + description: Language to translate message to + enum: + - af + - sq + - am + - ar + - az + - bn + - bs + - bg + - zh + - zh-TW + - hr + - cs + - da + - fa-AF + - nl + - en + - et + - fi + - fr + - fr-CA + - ka + - de + - el + - ha + - he + - hi + - hu + - id + - it + - ja + - ko + - lv + - ms + - "no" + - fa + - ps + - pl + - pt + - ro + - ru + - sr + - sk + - sl + - so + - es + - es-MX + - sw + - sv + - tl + - ta + - th + - tr + - uk + - ur + - vi + title: Language type: string x-stream-index: "002" required: - - id + - language type: object - UserResponse: + TruncateChannelRequest: nullable: true properties: - Custom: - type: object - writeOnly: true - x-stream-index: "001.005" - ban_expires: - format: date-time - type: string - x-stream-index: "001.015" - banned: - type: boolean - x-stream-index: "001.014" - created_at: - format: date-time - readOnly: true - type: string - x-stream-index: "001.007" - deactivated_at: - format: date-time - readOnly: true - type: string - x-stream-index: "001.012" - deleted_at: - format: date-time - readOnly: true - type: string - x-stream-index: "001.011" - id: - type: string - x-stream-index: "001.003" - invisible: + hard_delete: + description: Permanently delete channel data (messages, reactions, etc.) + title: Hard delete type: boolean - x-stream-index: "001.021" - language: - type: string - x-stream-index: "001.031" - last_active: - format: date-time - readOnly: true - type: string - x-stream-index: "001.010" - online: - readOnly: true + x-stream-index: "002" + message: + $ref: '#/components/schemas/MessageRequest' + x-stream-index: "004" + skip_push: + description: When `message` is set disables all push notifications for it + title: Skip push type: boolean - x-stream-index: "001.020" - push_notifications: - $ref: '#/components/schemas/PushNotificationSettings' - x-stream-index: "001.023" - revoke_tokens_issued_before: + x-stream-index: "005" + truncated_at: + description: Truncate channel data up to `truncated_at`. The system message + (if provided) creation time is always greater than `truncated_at` format: date-time + title: Truncated at type: string - x-stream-index: "001.038" - role: - type: string - x-stream-index: "001.004" - shadow_banned: - description: Whether user is shadow banned or not - title: Shadow banned - type: boolean + x-stream-index: "006" + type: object + TruncateChannelResponse: + nullable: true + properties: + channel: + $ref: '#/components/schemas/ChannelResponse' x-stream-index: "002" - teams: - items: - type: string - type: array - x-stream-index: "001.032" - updated_at: - format: date-time - readOnly: true + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "001.008" + x-stream-index: "001.001" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "003" required: - - id - - role - - Custom - - banned - - online - - shadow_banned + - duration type: object - UserUnbannedEvent: + TypingStartEvent: properties: channel_id: type: string - x-stream-index: "002.002" + x-stream-index: "003.002" channel_type: type: string - x-stream-index: "002.003" + x-stream-index: "003.003" cid: type: string - x-stream-index: "002.001" + x-stream-index: "003.001" created_at: format: date-time type: string - x-stream-index: "005.002" - shadow: - type: boolean - x-stream-index: "001" - team: + x-stream-index: "004.002" + parent_id: type: string - x-stream-index: "004.001" + x-stream-index: "001" type: - default: user.unbanned + default: typing.start type: string - x-stream-index: "005.001" + x-stream-index: "004.001" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" + x-stream-index: "002.001" required: - - shadow - cid - channel_id - channel_type - type - created_at - title: UserUnbannedEvent + title: TypingStartEvent type: object x-stream-event-client-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent - UserUpdatedEvent: + TypingStopEvent: properties: + channel_id: + type: string + x-stream-index: "002.002" + channel_type: + type: string + x-stream-index: "002.003" + cid: + type: string + x-stream-index: "002.001" created_at: format: date-time type: string - x-stream-index: "002.002" + x-stream-index: "004.002" + parent_id: + type: string + x-stream-index: "001" type: - default: user.updated + default: typing.stop type: string - x-stream-index: "002.001" + x-stream-index: "004.001" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "001" + x-stream-index: "003.001" required: + - cid + - channel_id + - channel_type - type - created_at - title: UserUpdatedEvent + title: TypingStopEvent type: object x-stream-event-client-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent - UserWatchingStartEvent: + UnmuteChannelRequest: + nullable: true properties: - channel_id: - type: string - x-stream-index: "004.002" - channel_type: - type: string - x-stream-index: "004.003" - cid: - type: string - x-stream-index: "004.001" - created_at: - format: date-time - type: string - x-stream-index: "003.002" - team: + channel_cids: + description: Channel CIDs to mute (if multiple channels) + items: + type: string + maximum: 25 + title: Channel CIDs + type: array + x-stream-index: "001.002" + expiration: + description: Duration of mute in milliseconds + title: Expiration + type: integer + x-stream-index: "001.003" + required: + - channel_cids + type: object + UnmuteResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration type: string x-stream-index: "002.001" - type: - default: user.watching.start + non_existing_users: + items: + type: string + type: array + x-stream-index: "001" + required: + - duration + type: object + UnmuteUserRequest: + nullable: true + properties: + target_ids: + description: User IDs to mute (if multiple users) + items: + type: string + maximum: 1000 + title: Target IDs + type: array + x-stream-index: "001.002" + timeout: + description: Duration of mute in minutes + minimum: 0 + title: Timeout + type: integer + x-stream-index: "001.003" + required: + - target_ids + type: object + UnreadCountsChannel: + properties: + channel_id: type: string - x-stream-index: "003.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "005.001" - watcher_count: + x-stream-index: "001" + last_read: + format: date-time + type: string + x-stream-index: "003" + unread_count: format: int32 type: integer - x-stream-index: "001.001" + x-stream-index: "002" required: - - watcher_count - - type - - created_at - - cid - channel_id - - channel_type - title: UserWatchingStartEvent + - unread_count + - last_read type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserWatchingStopEvent: + UnreadCountsChannelType: properties: - channel_id: - type: string - x-stream-index: "004.002" + channel_count: + format: int32 + type: integer + x-stream-index: "002" channel_type: type: string - x-stream-index: "004.003" - cid: - type: string - x-stream-index: "004.001" - created_at: + x-stream-index: "001" + unread_count: + format: int32 + type: integer + x-stream-index: "003" + required: + - channel_type + - channel_count + - unread_count + type: object + UnreadCountsThread: + properties: + last_read: format: date-time type: string - x-stream-index: "002.002" - type: - default: user.watching.stop + x-stream-index: "002" + last_read_message_id: type: string - x-stream-index: "002.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" - watcher_count: + x-stream-index: "003" + parent_message_id: + type: string + x-stream-index: "004" + unread_count: format: int32 type: integer - x-stream-index: "001.001" + x-stream-index: "001" required: - - watcher_count - - type - - created_at - - cid - - channel_id - - channel_type - title: UserWatchingStopEvent + - unread_count + - last_read + - last_read_message_id + - parent_message_id type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UsersResponse: + UpdateChannelPartialRequest: nullable: true properties: - duration: - type: string + set: + type: object x-stream-index: "002.001" - users: - description: List of found users + unset: items: - $ref: '#/components/schemas/UserResponse' - title: Users + type: string type: array + x-stream-index: "002.002" + required: + - set + - unset + type: object + UpdateChannelPartialResponse: + nullable: true + properties: + channel: + $ref: '#/components/schemas/ChannelResponse' x-stream-index: "001" + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "003.001" + members: + items: + $ref: '#/components/schemas/ChannelMember' + type: array + x-stream-index: "002" required: - - users + - members - duration type: object - VideoSettings: + UpdateChannelRequest: + nullable: true properties: - access_request_enabled: - type: boolean - x-stream-index: "002" - camera_default_on: + accept_invite: + description: Set to `true` to accept the invite + title: Accept invite type: boolean + x-stream-index: "008" + add_members: + description: List of user IDs to add to the channel + items: + $ref: '#/components/schemas/ChannelMemberRequest' + maximum: 100 + title: Add members + type: array + x-stream-index: "001" + add_moderators: + description: List of user IDs to make channel moderators + items: + type: string + maximum: 100 + title: Add moderators + type: array + x-stream-index: "003" + assign_roles: + description: List of channel member role assignments. If any specified user + is not part of the channel, the request will fail + items: + $ref: '#/components/schemas/ChannelMemberRequest' + maximum: 100 + title: Assign roles + type: array + x-stream-index: "006" + cooldown: + description: Sets cool down period for the channel in seconds + format: int32 + maximum: 120 + minimum: 0 + title: Cool down + type: integer + x-stream-index: "007" + data: + $ref: '#/components/schemas/ChannelRequest' + x-stream-index: "013.001" + demote_moderators: + description: List of user IDs to take away moderators status from + items: + type: string + maximum: 100 + title: Demote moderators + type: array x-stream-index: "004" - camera_facing: - enum: - - front - - back - - external - type: string + hide_history: + description: Set to `true` to hide channel's history when adding new members + title: Hide history + type: boolean + x-stream-index: "012" + invites: + description: List of user IDs to invite to the channel + items: + $ref: '#/components/schemas/ChannelMemberRequest' + maximum: 100 + title: Invites + type: array x-stream-index: "005" - enabled: + message: + $ref: '#/components/schemas/MessageRequest' + description: Message to send to the chat when channel is successfully updated + title: Message + x-stream-index: "010" + reject_invite: + description: Set to `true` to reject the invite + title: Reject invite type: boolean - x-stream-index: "001" - target_resolution: - $ref: '#/components/schemas/TargetResolution' - x-stream-index: "003" + x-stream-index: "009" + remove_members: + description: List of user IDs to remove from the channel + items: + type: string + maximum: 100 + title: Remove members + type: array + x-stream-index: "002" + skip_push: + description: When `message` is set disables all push notifications for it + title: Skip push + type: boolean + x-stream-index: "011" required: - - enabled - - access_request_enabled - - target_resolution - - camera_default_on - - camera_facing + - remove_members + - add_moderators + - demote_moderators + title: Channel update request type: object - WSEvent: - description: The discriminator object for all websocket events, it maps events' - payload to the final type - discriminator: - mapping: - channel.created: '#/components/schemas/ChannelCreatedEvent' - channel.deleted: '#/components/schemas/ChannelDeletedEvent' - channel.frozen: '#/components/schemas/ChannelFrozenEvent' - channel.hidden: '#/components/schemas/ChannelHiddenEvent' - channel.kicked: '#/components/schemas/ChannelKickedEvent' - channel.truncated: '#/components/schemas/ChannelTruncatedEvent' - channel.unfrozen: '#/components/schemas/ChannelUnFrozenEvent' - channel.updated: '#/components/schemas/ChannelUpdatedEvent' - channel.visible: '#/components/schemas/ChannelVisibleEvent' - custom: '#/components/schemas/AnyEvent' - health.check: '#/components/schemas/HealthCheckEvent' - member.added: '#/components/schemas/MemberAddedEvent' - member.removed: '#/components/schemas/MemberRemovedEvent' - member.updated: '#/components/schemas/MemberUpdatedEvent' - message.deleted: '#/components/schemas/MessageDeletedEvent' - message.new: '#/components/schemas/MessageNewEvent' - message.read: '#/components/schemas/MessageReadEvent' - message.undeleted: '#/components/schemas/MessageUndeletedEvent' - message.updated: '#/components/schemas/MessageUpdatedEvent' - notification.added_to_channel: '#/components/schemas/NotificationAddedToChannelEvent' - notification.channel_deleted: '#/components/schemas/NotificationChannelDeletedEvent' - notification.channel_mutes_updated: '#/components/schemas/NotificationChannelMutesUpdatedEvent' - notification.channel_truncated: '#/components/schemas/NotificationChannelTruncatedEvent' - notification.invite_accepted: '#/components/schemas/NotificationInviteAcceptedEvent' - notification.invite_rejected: '#/components/schemas/NotificationInviteRejectedEvent' - notification.invited: '#/components/schemas/NotificationInvitedEvent' - notification.mark_read: '#/components/schemas/NotificationMarkReadEvent' - notification.mark_unread: '#/components/schemas/NotificationMarkUnreadEvent' - notification.message_new: '#/components/schemas/NotificationNewMessageEvent' - notification.mutes_updated: '#/components/schemas/NotificationMutesUpdatedEvent' - notification.removed_from_channel: '#/components/schemas/NotificationRemovedFromChannelEvent' - notification.thread_message_new: '#/components/schemas/MessageNewEvent' - reaction.deleted: '#/components/schemas/ReactionDeletedEvent' - reaction.new: '#/components/schemas/ReactionNewEvent' - reaction.updated: '#/components/schemas/ReactionUpdatedEvent' - thread.updated: '#/components/schemas/ThreadUpdatedEvent' - typing.start: '#/components/schemas/TypingStartEvent' - typing.stop: '#/components/schemas/TypingStopEvent' - user.banned: '#/components/schemas/UserBannedEvent' - user.deactivated: '#/components/schemas/UserDeactivatedEvent' - user.deleted: '#/components/schemas/UserDeletedEvent' - user.muted: '#/components/schemas/UserMutedEvent' - user.presence.changed: '#/components/schemas/UserPresenceChangedEvent' - user.reactivated: '#/components/schemas/UserReactivatedEvent' - user.unbanned: '#/components/schemas/UserUnbannedEvent' - user.updated: '#/components/schemas/UserUpdatedEvent' - user.watching.start: '#/components/schemas/UserWatchingStartEvent' - user.watching.stop: '#/components/schemas/UserWatchingStopEvent' - propertyName: type - oneOf: - - $ref: '#/components/schemas/AnyEvent' - - $ref: '#/components/schemas/ChannelCreatedEvent' - - $ref: '#/components/schemas/ChannelDeletedEvent' - - $ref: '#/components/schemas/ChannelFrozenEvent' - - $ref: '#/components/schemas/ChannelHiddenEvent' - - $ref: '#/components/schemas/ChannelKickedEvent' - - $ref: '#/components/schemas/ChannelTruncatedEvent' - - $ref: '#/components/schemas/ChannelUnFrozenEvent' - - $ref: '#/components/schemas/ChannelUpdatedEvent' - - $ref: '#/components/schemas/ChannelVisibleEvent' - - $ref: '#/components/schemas/HealthCheckEvent' - - $ref: '#/components/schemas/MemberAddedEvent' - - $ref: '#/components/schemas/MemberRemovedEvent' - - $ref: '#/components/schemas/MemberUpdatedEvent' - - $ref: '#/components/schemas/MessageDeletedEvent' - - $ref: '#/components/schemas/MessageNewEvent' - - $ref: '#/components/schemas/MessageNewEvent' - - $ref: '#/components/schemas/MessageReadEvent' - - $ref: '#/components/schemas/MessageUndeletedEvent' - - $ref: '#/components/schemas/MessageUpdatedEvent' - - $ref: '#/components/schemas/NotificationAddedToChannelEvent' - - $ref: '#/components/schemas/NotificationChannelDeletedEvent' - - $ref: '#/components/schemas/NotificationChannelMutesUpdatedEvent' - - $ref: '#/components/schemas/NotificationChannelTruncatedEvent' - - $ref: '#/components/schemas/NotificationInviteAcceptedEvent' - - $ref: '#/components/schemas/NotificationInviteRejectedEvent' - - $ref: '#/components/schemas/NotificationInvitedEvent' - - $ref: '#/components/schemas/NotificationMarkReadEvent' - - $ref: '#/components/schemas/NotificationMarkUnreadEvent' - - $ref: '#/components/schemas/NotificationMutesUpdatedEvent' - - $ref: '#/components/schemas/NotificationNewMessageEvent' - - $ref: '#/components/schemas/NotificationRemovedFromChannelEvent' - - $ref: '#/components/schemas/ReactionDeletedEvent' - - $ref: '#/components/schemas/ReactionNewEvent' - - $ref: '#/components/schemas/ReactionUpdatedEvent' - - $ref: '#/components/schemas/ThreadUpdatedEvent' - - $ref: '#/components/schemas/TypingStartEvent' - - $ref: '#/components/schemas/TypingStopEvent' - - $ref: '#/components/schemas/UserBannedEvent' - - $ref: '#/components/schemas/UserDeactivatedEvent' - - $ref: '#/components/schemas/UserDeletedEvent' - - $ref: '#/components/schemas/UserMutedEvent' - - $ref: '#/components/schemas/UserPresenceChangedEvent' - - $ref: '#/components/schemas/UserReactivatedEvent' - - $ref: '#/components/schemas/UserUnbannedEvent' - - $ref: '#/components/schemas/UserUpdatedEvent' - - $ref: '#/components/schemas/UserWatchingStartEvent' - - $ref: '#/components/schemas/UserWatchingStopEvent' - WrappedUnreadCountsResponse: + x-stream-docs-page-id: channel_update + UpdateChannelResponse: nullable: true properties: - channel_type: + channel: + $ref: '#/components/schemas/ChannelResponse' + x-stream-index: "001" + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "004.001" + members: items: - $ref: '#/components/schemas/UnreadCountsChannelType' + $ref: '#/components/schemas/ChannelMember' type: array - x-stream-index: "001.004" - channels: + x-stream-index: "003" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "002" + required: + - members + - duration + type: object + UpdateMessagePartialRequest: + nullable: true + properties: + set: + description: Sets new field values + title: Set + type: object + x-stream-index: "002.001" + x-stream-map: + description: New value to set + key: field + title: Value + skip_enrich_url: + type: boolean + x-stream-index: "001" + unset: + description: Array of field names to unset items: - $ref: '#/components/schemas/UnreadCountsChannel' + type: string + title: Unset type: array - x-stream-index: "001.003" + x-stream-index: "002.002" + required: + - set + - unset + type: object + UpdateMessagePartialResponse: + nullable: true + properties: duration: description: Duration of the request in human-readable format title: Duration type: string - x-stream-index: "002.001" - threads: - items: - $ref: '#/components/schemas/UnreadCountsThread' - type: array - x-stream-index: "001.005" - total_unread_count: - format: int32 - type: integer - x-stream-index: "001.001" - total_unread_threads_count: - format: int32 - type: integer - x-stream-index: "001.002" + x-stream-index: "003.001" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "001" + pending_message_metadata: + additionalProperties: + type: string + type: object + x-stream-index: "002" required: - - total_unread_count - - total_unread_threads_count - - channels - - channel_type - - threads + - message - duration type: object - XiaomiConfigFields: + UpdateMessageRequest: + nullable: true properties: - enabled: + message: + $ref: '#/components/schemas/MessageRequest' + x-stream-index: "001" + skip_enrich_url: type: boolean + x-stream-index: "002" + required: + - message + type: object + UpdateMessageResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "003.001" + message: + $ref: '#/components/schemas/Message' x-stream-index: "001" - package_name: + pending_message_metadata: + additionalProperties: + type: string + type: object + x-stream-index: "002" + required: + - message + - duration + type: object + UpdatePollOptionRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "004" + id: + maxLength: 255 + type: string + x-stream-index: "002" + poll_id: + maxLength: 255 + type: string + x-stream-index: "001" + text: + type: string + x-stream-index: "003" + required: + - poll_id + - id + - text + type: object + UpdatePollPartialRequest: + nullable: true + properties: + poll_id: + maxLength: 255 + type: string + x-stream-index: "001" + set: + description: Sets new field values + title: Set + type: object + x-stream-index: "002.001" + x-stream-map: + description: New value to set + key: field + title: Value + unset: + description: Array of field names to unset + items: + type: string + title: Unset + type: array + x-stream-index: "002.002" + required: + - poll_id + - set + - unset + type: object + UpdatePollRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "011" + allow_answers: + type: boolean + x-stream-index: "009" + allow_user_suggested_options: + type: boolean + x-stream-index: "008" + description: + type: string + x-stream-index: "003" + enforce_unique_vote: + type: boolean + x-stream-index: "005" + id: + maxLength: 255 + type: string + x-stream-index: "001" + is_closed: + type: boolean + x-stream-index: "010" + max_votes_allowed: + format: int32 + maximum: 10 + type: integer + x-stream-index: "007" + name: + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionRequest' + maximum: 100 + type: array + x-stream-index: "004" + voting_visibility: + enum: + - anonymous + - public + type: string + x-stream-index: "006" + required: + - id + - name + type: object + UpdateThreadPartialRequest: + nullable: true + properties: + ID: + type: string + writeOnly: true + x-stream-index: "001" + set: + type: object + x-stream-index: "004.001" + unset: + items: + type: string + type: array + x-stream-index: "004.002" + required: + - set + - unset + type: object + UpdateThreadPartialResponse: + nullable: true + properties: + duration: + type: string + x-stream-index: "002.001" + thread: + $ref: '#/components/schemas/ThreadResponse' + description: Updated thread (not enriched) + title: Thread + x-stream-index: "001" + required: + - thread + - duration + type: object + UpdateUserPartialRequest: + nullable: true + properties: + id: + description: User ID to update + title: ID + type: string + x-stream-index: "001" + set: + type: object + x-stream-index: "002.001" + unset: + items: + type: string + type: array + x-stream-index: "002.002" + required: + - id + - set + - unset + type: object + UpdateUsersRequest: + nullable: true + properties: + users: + additionalProperties: + $ref: '#/components/schemas/UserObjectRequest' + description: Object containing users + title: Users + type: object + x-stream-index: "001" + x-stream-map: + key: user_id + required: + - users + type: object + UpdateUsersResponse: + nullable: true + properties: + duration: + type: string + x-stream-index: "003.001" + membership_deletion_task_id: + type: string + x-stream-index: "002" + users: + additionalProperties: + $ref: '#/components/schemas/UserObject' + description: Object containing users + title: Users + type: object + x-stream-index: "001" + x-stream-map: + key: user_id + required: + - users + - membership_deletion_task_id + - duration + type: object + UserBannedEvent: + properties: + channel_id: + type: string + x-stream-index: "006.002" + channel_type: + type: string + x-stream-index: "006.003" + cid: + type: string + x-stream-index: "006.001" + created_at: + format: date-time + type: string + x-stream-index: "008.002" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001" + expiration: + format: date-time + type: string + x-stream-index: "003" + reason: + type: string + x-stream-index: "004" + shadow: + type: boolean + x-stream-index: "002" + team: + type: string + x-stream-index: "005.001" + type: + default: user.banned + type: string + x-stream-index: "008.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "007.001" + required: + - created_by + - shadow + - cid + - channel_id + - channel_type + - type + - created_at + title: UserBannedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserDeactivatedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "003.002" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001" + type: + default: user.deactivated + type: string + x-stream-index: "003.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "002.001" + required: + - created_by + - type + - created_at + title: UserDeactivatedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserDeletedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "002.002" + delete_conversation_channels: + type: boolean + x-stream-index: "005" + hard_delete: + type: boolean + x-stream-index: "003.001" + mark_messages_deleted: + type: boolean + x-stream-index: "004" + type: + default: user.deleted + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001.001" + required: + - type + - created_at + - hard_delete + - mark_messages_deleted + - delete_conversation_channels + title: UserDeletedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserMute: + nullable: true + properties: + created_at: + description: Date/time of creation + format: date-time + title: Created at + type: string + x-stream-index: "009" + expires: + description: Date/time of mute expiration + format: date-time + title: Expires + type: string + x-stream-index: "008" + target: + $ref: '#/components/schemas/UserObject' + description: User who's muted + title: Target + x-stream-index: "007" + updated_at: + description: Date/time of the last update + format: date-time + title: Updated at + type: string + x-stream-index: "010" + user: + $ref: '#/components/schemas/UserObject' + description: Owner of channel mute + title: User + x-stream-index: "005" + required: + - created_at + - updated_at + type: object + UserMutedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "004.002" + target_user: + type: string + x-stream-index: "001" + target_users: + items: + type: string + type: array + x-stream-index: "002" + type: + default: user.muted + type: string + x-stream-index: "004.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "003.001" + required: + - type + - created_at + title: UserMutedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserObject: + description: Represents chat user + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "005" + ban_expires: + description: Expiration date of the ban + format: date-time + title: Ban expires + type: string + x-stream-index: "015" + banned: + description: Whether a user is banned or not + title: Banned + type: boolean + x-stream-index: "014" + created_at: + description: Date/time of creation + format: date-time + readOnly: true + title: Created at + type: string + x-stream-index: "007" + deactivated_at: + description: Date of deactivation + format: date-time + readOnly: true + title: Deactivated at + type: string + x-stream-index: "012" + deleted_at: + description: Date/time of deletion + format: date-time + readOnly: true + title: Deleted at + type: string + x-stream-index: "011" + id: + description: Unique user identifier + title: ID + type: string + x-stream-index: "003" + invisible: + type: boolean + x-stream-index: "021" + language: + description: Preferred language of a user + title: Language + type: string + x-stream-index: "031" + last_active: + description: Date of last activity + format: date-time + readOnly: true + title: Last active + type: string + x-stream-index: "010" + online: + description: Whether a user online or not + readOnly: true + title: Online + type: boolean + x-stream-index: "020" + push_notifications: + $ref: '#/components/schemas/PushNotificationSettings' + x-stream-index: "023" + revoke_tokens_issued_before: + description: Revocation date for tokens + format: date-time + title: Revoke tokens issued before + type: string + x-stream-index: "038" + role: + description: Determines the set of user permissions + title: Role + type: string + x-stream-index: "004" + teams: + description: List of teams user is a part of + items: + type: string + title: Teams + type: array + x-stream-index: "032" + updated_at: + description: Date/time of the last update + format: date-time + readOnly: true + title: Updated at + type: string + x-stream-index: "008" + required: + - id + - role + - Custom + - banned + - online + title: User object + type: object + UserObjectRequest: + description: Represents chat user + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "005" + ban_expires: + description: Expiration date of the ban + format: date-time + title: Ban expires + type: string + x-stream-index: "015" + banned: + description: Whether a user is banned or not + title: Banned + type: boolean + x-stream-index: "014" + id: + description: Unique user identifier + title: ID + type: string + x-stream-index: "003" + invisible: + type: boolean + x-stream-index: "021" + language: + description: Preferred language of a user + title: Language + type: string + x-stream-index: "031" + push_notifications: + $ref: '#/components/schemas/PushNotificationSettingsRequest' + x-stream-index: "023" + revoke_tokens_issued_before: + description: Revocation date for tokens + format: date-time + title: Revoke tokens issued before + type: string + x-stream-index: "038" + role: + description: Determines the set of user permissions + title: Role + type: string + x-stream-index: "004" + teams: + description: List of teams user is a part of + items: + type: string + title: Teams + type: array + x-stream-index: "032" + required: + - id + title: User object + type: object + UserPresenceChangedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "002.002" + type: + default: user.presence.changed + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001.001" + required: + - type + - created_at + title: UserPresenceChangedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserReactivatedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "002.002" + type: + default: user.reactivated + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001" + required: + - type + - created_at + title: UserReactivatedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserRequest: + properties: + custom: + title: Custom + type: object + x-stream-index: "004" + id: + description: User ID + title: ID + type: string + x-stream-index: "001" + image: + title: Image + type: string + x-stream-index: "003" + language: + type: string + x-stream-index: "005" + name: + description: Optional name of user + title: Name + type: string + x-stream-index: "002" + required: + - id + type: object + UserResponse: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "001.005" + ban_expires: + format: date-time + type: string + x-stream-index: "001.015" + banned: + type: boolean + x-stream-index: "001.014" + created_at: + format: date-time + readOnly: true + type: string + x-stream-index: "001.007" + deactivated_at: + format: date-time + readOnly: true + type: string + x-stream-index: "001.012" + deleted_at: + format: date-time + readOnly: true + type: string + x-stream-index: "001.011" + id: + type: string + x-stream-index: "001.003" + invisible: + type: boolean + x-stream-index: "001.021" + language: + type: string + x-stream-index: "001.031" + last_active: + format: date-time + readOnly: true + type: string + x-stream-index: "001.010" + online: + readOnly: true + type: boolean + x-stream-index: "001.020" + push_notifications: + $ref: '#/components/schemas/PushNotificationSettings' + x-stream-index: "001.023" + revoke_tokens_issued_before: + format: date-time + type: string + x-stream-index: "001.038" + role: + type: string + x-stream-index: "001.004" + shadow_banned: + description: Whether user is shadow banned or not + title: Shadow banned + type: boolean + x-stream-index: "002" + teams: + items: + type: string + type: array + x-stream-index: "001.032" + updated_at: + format: date-time + readOnly: true + type: string + x-stream-index: "001.008" + required: + - id + - role + - Custom + - banned + - online + - shadow_banned + type: object + UserUnbannedEvent: + properties: + channel_id: + type: string + x-stream-index: "002.002" + channel_type: + type: string + x-stream-index: "002.003" + cid: + type: string + x-stream-index: "002.001" + created_at: + format: date-time + type: string + x-stream-index: "005.002" + shadow: + type: boolean + x-stream-index: "001" + team: + type: string + x-stream-index: "004.001" + type: + default: user.unbanned + type: string + x-stream-index: "005.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "003.001" + required: + - shadow + - cid + - channel_id + - channel_type + - type + - created_at + title: UserUnbannedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserUpdatedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "002.002" + type: + default: user.updated + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001" + required: + - type + - created_at + title: UserUpdatedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserWatchingStartEvent: + properties: + channel_id: + type: string + x-stream-index: "004.002" + channel_type: + type: string + x-stream-index: "004.003" + cid: + type: string + x-stream-index: "004.001" + created_at: + format: date-time + type: string + x-stream-index: "003.002" + team: + type: string + x-stream-index: "002.001" + type: + default: user.watching.start + type: string + x-stream-index: "003.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "005.001" + watcher_count: + format: int32 + type: integer + x-stream-index: "001.001" + required: + - watcher_count + - type + - created_at + - cid + - channel_id + - channel_type + title: UserWatchingStartEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserWatchingStopEvent: + properties: + channel_id: + type: string + x-stream-index: "004.002" + channel_type: + type: string + x-stream-index: "004.003" + cid: + type: string + x-stream-index: "004.001" + created_at: + format: date-time + type: string + x-stream-index: "002.002" + type: + default: user.watching.stop + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "003.001" + watcher_count: + format: int32 + type: integer + x-stream-index: "001.001" + required: + - watcher_count + - type + - created_at + - cid + - channel_id + - channel_type + title: UserWatchingStopEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UsersResponse: + nullable: true + properties: + duration: + type: string + x-stream-index: "002.001" + users: + description: List of found users + items: + $ref: '#/components/schemas/UserResponse' + title: Users + type: array + x-stream-index: "001" + required: + - users + - duration + type: object + VideoSettings: + properties: + access_request_enabled: + type: boolean + x-stream-index: "002" + camera_default_on: + type: boolean + x-stream-index: "004" + camera_facing: + enum: + - front + - back + - external + type: string + x-stream-index: "005" + enabled: + type: boolean + x-stream-index: "001" + target_resolution: + $ref: '#/components/schemas/TargetResolution' + x-stream-index: "003" + required: + - enabled + - access_request_enabled + - target_resolution + - camera_default_on + - camera_facing + type: object + VoteDataRequest: + properties: + Option: + $ref: '#/components/schemas/PollOptionRequest' + x-stream-index: "003" + answer_text: + type: string + x-stream-index: "002" + option_id: + maxLength: 255 + type: string + x-stream-index: "001" + type: object + WSEvent: + description: The discriminator object for all websocket events, it maps events' + payload to the final type + discriminator: + mapping: + channel.created: '#/components/schemas/ChannelCreatedEvent' + channel.deleted: '#/components/schemas/ChannelDeletedEvent' + channel.frozen: '#/components/schemas/ChannelFrozenEvent' + channel.hidden: '#/components/schemas/ChannelHiddenEvent' + channel.kicked: '#/components/schemas/ChannelKickedEvent' + channel.truncated: '#/components/schemas/ChannelTruncatedEvent' + channel.unfrozen: '#/components/schemas/ChannelUnFrozenEvent' + channel.updated: '#/components/schemas/ChannelUpdatedEvent' + channel.visible: '#/components/schemas/ChannelVisibleEvent' + custom: '#/components/schemas/AnyEvent' + health.check: '#/components/schemas/HealthCheckEvent' + member.added: '#/components/schemas/MemberAddedEvent' + member.removed: '#/components/schemas/MemberRemovedEvent' + member.updated: '#/components/schemas/MemberUpdatedEvent' + message.deleted: '#/components/schemas/MessageDeletedEvent' + message.new: '#/components/schemas/MessageNewEvent' + message.read: '#/components/schemas/MessageReadEvent' + message.undeleted: '#/components/schemas/MessageUndeletedEvent' + message.updated: '#/components/schemas/MessageUpdatedEvent' + notification.added_to_channel: '#/components/schemas/NotificationAddedToChannelEvent' + notification.channel_deleted: '#/components/schemas/NotificationChannelDeletedEvent' + notification.channel_mutes_updated: '#/components/schemas/NotificationChannelMutesUpdatedEvent' + notification.channel_truncated: '#/components/schemas/NotificationChannelTruncatedEvent' + notification.invite_accepted: '#/components/schemas/NotificationInviteAcceptedEvent' + notification.invite_rejected: '#/components/schemas/NotificationInviteRejectedEvent' + notification.invited: '#/components/schemas/NotificationInvitedEvent' + notification.mark_read: '#/components/schemas/NotificationMarkReadEvent' + notification.mark_unread: '#/components/schemas/NotificationMarkUnreadEvent' + notification.message_new: '#/components/schemas/NotificationNewMessageEvent' + notification.mutes_updated: '#/components/schemas/NotificationMutesUpdatedEvent' + notification.removed_from_channel: '#/components/schemas/NotificationRemovedFromChannelEvent' + notification.thread_message_new: '#/components/schemas/MessageNewEvent' + poll.closed: '#/components/schemas/PollClosedEvent' + poll.created: '#/components/schemas/PollCreatedEvent' + poll.deleted: '#/components/schemas/PollDeletedEvent' + poll.updated: '#/components/schemas/PollUpdatedEvent' + poll.vote_casted: '#/components/schemas/PollVoteCastedEvent' + poll.vote_changed: '#/components/schemas/PollVoteChangedEvent' + poll.vote_removed: '#/components/schemas/PollVoteRemovedEvent' + reaction.deleted: '#/components/schemas/ReactionDeletedEvent' + reaction.new: '#/components/schemas/ReactionNewEvent' + reaction.updated: '#/components/schemas/ReactionUpdatedEvent' + thread.updated: '#/components/schemas/ThreadUpdatedEvent' + typing.start: '#/components/schemas/TypingStartEvent' + typing.stop: '#/components/schemas/TypingStopEvent' + user.banned: '#/components/schemas/UserBannedEvent' + user.deactivated: '#/components/schemas/UserDeactivatedEvent' + user.deleted: '#/components/schemas/UserDeletedEvent' + user.muted: '#/components/schemas/UserMutedEvent' + user.presence.changed: '#/components/schemas/UserPresenceChangedEvent' + user.reactivated: '#/components/schemas/UserReactivatedEvent' + user.unbanned: '#/components/schemas/UserUnbannedEvent' + user.updated: '#/components/schemas/UserUpdatedEvent' + user.watching.start: '#/components/schemas/UserWatchingStartEvent' + user.watching.stop: '#/components/schemas/UserWatchingStopEvent' + propertyName: type + oneOf: + - $ref: '#/components/schemas/AnyEvent' + - $ref: '#/components/schemas/ChannelCreatedEvent' + - $ref: '#/components/schemas/ChannelDeletedEvent' + - $ref: '#/components/schemas/ChannelFrozenEvent' + - $ref: '#/components/schemas/ChannelHiddenEvent' + - $ref: '#/components/schemas/ChannelKickedEvent' + - $ref: '#/components/schemas/ChannelTruncatedEvent' + - $ref: '#/components/schemas/ChannelUnFrozenEvent' + - $ref: '#/components/schemas/ChannelUpdatedEvent' + - $ref: '#/components/schemas/ChannelVisibleEvent' + - $ref: '#/components/schemas/HealthCheckEvent' + - $ref: '#/components/schemas/MemberAddedEvent' + - $ref: '#/components/schemas/MemberRemovedEvent' + - $ref: '#/components/schemas/MemberUpdatedEvent' + - $ref: '#/components/schemas/MessageDeletedEvent' + - $ref: '#/components/schemas/MessageNewEvent' + - $ref: '#/components/schemas/MessageNewEvent' + - $ref: '#/components/schemas/MessageReadEvent' + - $ref: '#/components/schemas/MessageUndeletedEvent' + - $ref: '#/components/schemas/MessageUpdatedEvent' + - $ref: '#/components/schemas/NotificationAddedToChannelEvent' + - $ref: '#/components/schemas/NotificationChannelDeletedEvent' + - $ref: '#/components/schemas/NotificationChannelMutesUpdatedEvent' + - $ref: '#/components/schemas/NotificationChannelTruncatedEvent' + - $ref: '#/components/schemas/NotificationInviteAcceptedEvent' + - $ref: '#/components/schemas/NotificationInviteRejectedEvent' + - $ref: '#/components/schemas/NotificationInvitedEvent' + - $ref: '#/components/schemas/NotificationMarkReadEvent' + - $ref: '#/components/schemas/NotificationMarkUnreadEvent' + - $ref: '#/components/schemas/NotificationMutesUpdatedEvent' + - $ref: '#/components/schemas/NotificationNewMessageEvent' + - $ref: '#/components/schemas/NotificationRemovedFromChannelEvent' + - $ref: '#/components/schemas/PollClosedEvent' + - $ref: '#/components/schemas/PollCreatedEvent' + - $ref: '#/components/schemas/PollDeletedEvent' + - $ref: '#/components/schemas/PollUpdatedEvent' + - $ref: '#/components/schemas/PollVoteCastedEvent' + - $ref: '#/components/schemas/PollVoteChangedEvent' + - $ref: '#/components/schemas/PollVoteRemovedEvent' + - $ref: '#/components/schemas/ReactionDeletedEvent' + - $ref: '#/components/schemas/ReactionNewEvent' + - $ref: '#/components/schemas/ReactionUpdatedEvent' + - $ref: '#/components/schemas/ThreadUpdatedEvent' + - $ref: '#/components/schemas/TypingStartEvent' + - $ref: '#/components/schemas/TypingStopEvent' + - $ref: '#/components/schemas/UserBannedEvent' + - $ref: '#/components/schemas/UserDeactivatedEvent' + - $ref: '#/components/schemas/UserDeletedEvent' + - $ref: '#/components/schemas/UserMutedEvent' + - $ref: '#/components/schemas/UserPresenceChangedEvent' + - $ref: '#/components/schemas/UserReactivatedEvent' + - $ref: '#/components/schemas/UserUnbannedEvent' + - $ref: '#/components/schemas/UserUpdatedEvent' + - $ref: '#/components/schemas/UserWatchingStartEvent' + - $ref: '#/components/schemas/UserWatchingStopEvent' + WrappedUnreadCountsResponse: + nullable: true + properties: + channel_type: + items: + $ref: '#/components/schemas/UnreadCountsChannelType' + type: array + x-stream-index: "001.004" + channels: + items: + $ref: '#/components/schemas/UnreadCountsChannel' + type: array + x-stream-index: "001.003" + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "002.001" + threads: + items: + $ref: '#/components/schemas/UnreadCountsThread' + type: array + x-stream-index: "001.005" + total_unread_count: + format: int32 + type: integer + x-stream-index: "001.001" + total_unread_threads_count: + format: int32 + type: integer + x-stream-index: "001.002" + required: + - total_unread_count + - total_unread_threads_count + - channels + - channel_type + - threads + - duration + type: object + XiaomiConfigFields: + properties: + enabled: + type: boolean + x-stream-index: "001" + package_name: + type: string + x-stream-index: "002" + secret: + type: string + x-stream-index: "003" + required: + - enabled + type: object + connectRequestQueryRequest: + nullable: true + type: object + securitySchemes: + JWT: + description: | + JWT should be always provided when stream-auth-type=jwt. + + Using JWT auth request could be authenticated as user or as server-side. + + When using user authentication permission checking is going to be applied to requests based on the user that is + performing a request. + + The `authorization` header should be a JWT string signed using the secret attached to the API key used to perform + requests. + + **WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not + shared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side. + If you wish, you can configure your application to ignore authentication (see `disable_auth_check`) + The JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well. + in: header + name: Authorization + type: apiKey + api_key: + description: Application API key should be always set in order to authenticate + the request. + in: query + name: api_key + type: apiKey + stream-auth-type: + description: |- + Stream-Auth-Type should be always set in order to authenticate the request. Possible + values: `jwt` or `anonymous`. + + `jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization + header. + + `anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available + to anonymous users. + in: header + name: Stream-Auth-Type + type: apiKey +info: + title: Stream API + version: v105.1.0 +openapi: 3.0.3 +paths: + /app: + get: + description: | + This Method returns the application settings + operationId: GetApp + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/GetApplicationResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get App Settings + tags: + - Settings + /calls: + post: + description: | + Retrieves the token to join a call + + Required permissions: + - JoinCall + - ReadChannel + operationId: GetCallToken + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GetCallTokenRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/GetCallTokenResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get Call Token + /calls/{call_id}: + post: + description: | + Retrieves the token to join a call + + Required permissions: + - JoinCall + - ReadChannel + operationId: GetCallToken + parameters: + - in: path + name: call_id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GetCallTokenRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/GetCallTokenResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get Call Token + /channels: + post: + description: | + Query channels with filter query + + Required permissions: + - ReadChannel + operationId: QueryChannels + parameters: + - in: query + name: connection_id + schema: + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID + type: string + x-stream-index: "011.003" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryChannelsRequest' + description: Query Channels Request + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/ChannelsResponse' + description: Channels list + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Query channels + tags: + - Channels + /channels/{type}/{id}: + delete: + description: | + Deletes channel + + Sends events: + - channel.deleted + + Required permissions: + - DeleteChannel + operationId: DeleteChannel + parameters: + - in: path + name: type + required: true + schema: + description: Channel type to interact with + title: Channel type + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "001.002" + - in: query + name: hard_delete + schema: + type: boolean + x-stream-index: "002" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/DeleteChannelResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete channel + tags: + - Channels + patch: + description: | + Updates certain fields of the channel + + Sends events: + - channel.updated + + Required permissions: + - UpdateChannel + - UpdateChannelCooldown + - UpdateChannelFrozen + operationId: UpdateChannelPartial + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelPartialRequest' + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelPartialResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Partially update channel + tags: + - Channels + post: + description: | + Change channel data + + Sends events: + - channel.updated + - member.added + - member.removed + - member.updated + - message.new + + Required permissions: + - AddOwnChannelMembership + - RemoveOwnChannelMembership + - UpdateChannel + - UpdateChannelCooldown + - UpdateChannelFrozen + - UpdateChannelMembers + operationId: UpdateChannel + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: 013.002.001 + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: 013.002.002 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelRequest' + description: Channel update request + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Update channel + tags: + - Channels + /channels/{type}/{id}/call: + post: + description: | + Creates a call + + Required permissions: + - CreateCall + - ReadChannel + operationId: CreateCall + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateCallRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/CreateCallResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Create a call + /channels/{type}/{id}/event: + post: + description: | + Sends event to the channel + + Required permissions: + - SendCustomEvent + operationId: SendEvent + parameters: + - in: path + name: type + required: true + schema: + description: Channel type to interact with + title: Channel type + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "002.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SendEventRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/EventResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Send event + tags: + - Events + /channels/{type}/{id}/file: + delete: + description: | + Deletes previously uploaded file + + Required permissions: + - DeleteAttachment + operationId: DeleteFile + parameters: + - in: path + name: type + required: true + schema: + description: The type of file + title: Type + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + description: File ID + title: ID + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: url + schema: + description: File URL to delete + title: URL + type: string + writeOnly: true + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/FileDeleteResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete file + tags: + - Messages + - Files + post: + description: | + Uploads file + + Required permissions: + - UploadAttachment + operationId: UploadFile + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.002" + requestBody: + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/FileUploadRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/FileUploadResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Upload file + tags: + - Messages + - Files + /channels/{type}/{id}/hide: + post: + description: | + Marks channel as hidden for current user + + Sends events: + - channel.hidden + + Required permissions: + - ReadChannel + operationId: HideChannel + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/HideChannelRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/HideChannelResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Hide channel + tags: + - Channels + /channels/{type}/{id}/image: + delete: + description: | + Deletes previously uploaded image + + Required permissions: + - DeleteAttachment + operationId: DeleteImage + parameters: + - in: path + name: type + required: true + schema: + description: The type of file + title: Type + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + description: File ID + title: ID + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: url + schema: + description: File URL to delete + title: URL + type: string + writeOnly: true + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/FileDeleteResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete image + tags: + - Messages + - Files + post: + description: | + Uploads image + + Required permissions: + - UploadAttachment + operationId: UploadImage + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: 001.001.001 + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: 001.001.002 + requestBody: + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/ImageUploadRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/ImageUploadResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Upload image + tags: + - Messages + - Files + /channels/{type}/{id}/message: + post: + description: | + Sends new message to the specified channel + + Sends events: + - message.new + - message.updated + + Required permissions: + - AddLinks + - CreateMessage + - PinMessage + - SkipChannelCooldown + - SkipMessageModeration + - UseFrozenChannel + operationId: SendMessage + parameters: + - in: path + name: type + required: true + schema: + description: Channel type to interact with + title: Channel type + type: string + writeOnly: true + x-stream-index: "009.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "009.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SendMessageRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/SendMessageResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Send new message + tags: + - Messages + /channels/{type}/{id}/messages: + get: + description: | + Returns list messages found by IDs + + Required permissions: + - ReadChannel + operationId: GetManyMessages + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: ids + schema: + description: List of comma-separated IDs + items: + type: string + maximum: 50 + minimum: 1 + title: IDs + type: array + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/GetManyMessagesResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get many messages + tags: + - Messages + /channels/{type}/{id}/query: + post: + description: | + This Method creates a channel or returns an existing one with matching attributes + + Sends events: + - channel.created + - member.added + - member.removed + - member.updated + - user.watching.start + operationId: GetOrCreateChannel + parameters: + - in: path + name: type + required: true + schema: + description: Channel type + maxLength: 64 + title: Type type: string + writeOnly: true x-stream-index: "002" - secret: + - in: path + name: id + required: true + schema: + description: Channel ID (maximum length of 64 characters) + title: ID type: string + writeOnly: true x-stream-index: "003" - required: - - enabled - type: object - connectRequestQueryRequest: - nullable: true - type: object - securitySchemes: - JWT: - description: | - JWT should be always provided when stream-auth-type=jwt. - - Using JWT auth request could be authenticated as user or as server-side. - - When using user authentication permission checking is going to be applied to requests based on the user that is - performing a request. - - The `authorization` header should be a JWT string signed using the secret attached to the API key used to perform - requests. - - **WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not - shared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side. - If you wish, you can configure your application to ignore authentication (see `disable_auth_check`) - The JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well. - in: header - name: Authorization - type: apiKey - api_key: - description: Application API key should be always set in order to authenticate - the request. - in: query - name: api_key - type: apiKey - stream-auth-type: - description: |- - Stream-Auth-Type should be always set in order to authenticate the request. Possible - values: `jwt` or `anonymous`. - - `jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization - header. - - `anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available - to anonymous users. - in: header - name: Stream-Auth-Type - type: apiKey -info: - title: Stream API - version: v104.0.1 -openapi: 3.0.3 -paths: - /app: - get: - description: | - This Method returns the application settings - operationId: GetApp + - in: query + name: connection_id + schema: + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID + type: string + x-stream-index: "001.003" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChannelGetOrCreateRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetApplicationResponse' + $ref: '#/components/schemas/ChannelStateResponse' description: Successful response "400": content: @@ -8533,30 +10438,47 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get App Settings + summary: Get or create channel tags: - - Settings - /calls: + - Channels + /channels/{type}/{id}/read: post: description: | - Retrieves the token to join a call + Marks channel as read up to the specific message + + Sends events: + - message.read Required permissions: - - JoinCall - ReadChannel - operationId: GetCallToken + operationId: MarkRead + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/GetCallTokenRequest' + $ref: '#/components/schemas/MarkReadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/GetCallTokenResponse' + $ref: '#/components/schemas/MarkReadResponse' description: Successful response "400": content: @@ -8570,36 +10492,49 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get Call Token - /calls/{call_id}: + summary: Mark read + tags: + - Channels + - Messages + /channels/{type}/{id}/show: post: description: | - Retrieves the token to join a call + Shows previously hidden channel - Required permissions: - - JoinCall - - ReadChannel - operationId: GetCallToken + Sends events: + - channel.visible + operationId: ShowChannel parameters: - in: path - name: call_id + name: type required: true schema: + description: Channel type to interact with + title: Channel type type: string writeOnly: true - x-stream-index: "001" + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "001.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/GetCallTokenRequest' + $ref: '#/components/schemas/ShowChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/GetCallTokenResponse' + $ref: '#/components/schemas/ShowChannelResponse' description: Successful response "400": content: @@ -8613,38 +10548,50 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get Call Token - /channels: + summary: Show channel + tags: + - Channels + /channels/{type}/{id}/stop-watching: post: description: | - Query channels with filter query + Call this Method to stop receiving channel events - Required permissions: - - ReadChannel - operationId: QueryChannels + Sends events: + - user.watching.stop + operationId: StopWatchingChannel parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.002" - in: query name: connection_id schema: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID type: string - x-stream-index: "011.003" + x-stream-index: "001.003" requestBody: content: application/json: schema: - $ref: '#/components/schemas/QueryChannelsRequest' - description: Query Channels Request + $ref: '#/components/schemas/ChannelStopWatchingRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ChannelsResponse' - description: Channels list + $ref: '#/components/schemas/StopWatchingResponse' + description: Successful response "400": content: application/json: @@ -8657,27 +10604,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query channels + summary: Stop watching channel tags: - Channels - /channels/{type}/{id}: - delete: + /channels/{type}/{id}/truncate: + post: description: | - Deletes channel + Truncates channel Sends events: - - channel.deleted + - channel.truncated Required permissions: - DeleteChannel - operationId: DeleteChannel + - TruncateChannel + operationId: TruncateChannel parameters: - in: path name: type required: true schema: - description: Channel type to interact with - title: Channel type type: string writeOnly: true x-stream-index: "001.001" @@ -8685,22 +10631,21 @@ paths: name: id required: true schema: - description: Channel ID to interact with - title: Channel ID type: string writeOnly: true x-stream-index: "001.002" - - in: query - name: hard_delete - schema: - type: boolean - x-stream-index: "002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TruncateChannelRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelResponse' + $ref: '#/components/schemas/TruncateChannelResponse' description: Successful response "400": content: @@ -8714,21 +10659,17 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete channel + summary: Truncate channel tags: - Channels - patch: + /channels/{type}/{id}/unread: + post: description: | - Updates certain fields of the channel - - Sends events: - - channel.updated + Marks channel as unread from a specific message Required permissions: - - UpdateChannel - - UpdateChannelCooldown - - UpdateChannelFrozen - operationId: UpdateChannelPartial + - ReadChannel + operationId: MarkUnread parameters: - in: path name: type @@ -8736,26 +10677,26 @@ paths: schema: type: string writeOnly: true - x-stream-index: "001.001" + x-stream-index: "002.001" - in: path name: id required: true schema: type: string writeOnly: true - x-stream-index: "001.002" + x-stream-index: "002.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelPartialRequest' + $ref: '#/components/schemas/MarkUnreadRequest' required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelPartialResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -8769,56 +10710,53 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Partially update channel + summary: Mark unread tags: - Channels + - Messages + /channels/{type}/query: post: description: | - Change channel data + This Method creates a channel or returns an existing one with matching attributes Sends events: - - channel.updated + - channel.created - member.added - member.removed - member.updated - - message.new - - Required permissions: - - AddOwnChannelMembership - - RemoveOwnChannelMembership - - UpdateChannel - - UpdateChannelCooldown - - UpdateChannelFrozen - - UpdateChannelMembers - operationId: UpdateChannel + - user.watching.start + operationId: GetOrCreateChannel parameters: - in: path name: type required: true schema: + description: Channel type + maxLength: 64 + title: Type type: string writeOnly: true - x-stream-index: 013.002.001 - - in: path - name: id - required: true + x-stream-index: "002" + - in: query + name: connection_id schema: + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID type: string - writeOnly: true - x-stream-index: 013.002.002 + x-stream-index: "001.003" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelRequest' - description: Channel update request + $ref: '#/components/schemas/ChannelGetOrCreateRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelResponse' + $ref: '#/components/schemas/ChannelStateResponse' description: Successful response "400": content: @@ -8832,45 +10770,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update channel + summary: Get or create channel tags: - Channels - /channels/{type}/{id}/call: + /channels/delete: post: description: | - Creates a call + Allows to delete several channels at once asynchronously + + Sends events: + - channel.deleted Required permissions: - - CreateCall - - ReadChannel - operationId: CreateCall - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "001" - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002" + - DeleteChannel + operationId: DeleteChannels requestBody: content: application/json: schema: - $ref: '#/components/schemas/CreateCallRequest' + $ref: '#/components/schemas/DeleteChannelsRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/CreateCallResponse' + $ref: '#/components/schemas/DeleteChannelsResponse' description: Successful response "400": content: @@ -8884,46 +10809,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create a call - /channels/{type}/{id}/event: + summary: Deletes channels asynchronously + tags: + - Channels + - GDPR + /channels/read: post: description: | - Sends event to the channel + Marks channels as read up to the specific message. If no channels is given, mark all channel as read + + Sends events: + - message.read Required permissions: - - SendCustomEvent - operationId: SendEvent - parameters: - - in: path - name: type - required: true - schema: - description: Channel type to interact with - title: Channel type - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true - schema: - description: Channel ID to interact with - title: Channel ID - type: string - writeOnly: true - x-stream-index: "002.002" + - ReadChannel + operationId: MarkChannelsRead requestBody: content: application/json: schema: - $ref: '#/components/schemas/SendEventRequest' + $ref: '#/components/schemas/MarkChannelsReadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/EventResponse' + $ref: '#/components/schemas/MarkReadResponse' description: Successful response "400": content: @@ -8937,51 +10849,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send event + summary: Mark channels as read tags: - - Events - /channels/{type}/{id}/file: - delete: + - Channels + - Messages + /connect: + get: description: | - Deletes previously uploaded file + Establishes WebSocket connection for user - Required permissions: - - DeleteAttachment - operationId: DeleteFile + Sends events: + - user.updated + operationId: Connect parameters: - - in: path - name: type - required: true - schema: - description: The type of file - title: Type - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true - schema: - description: File ID - title: ID - type: string - writeOnly: true - x-stream-index: "002.002" - - in: query - name: url - schema: - description: File URL to delete - title: URL - type: string - writeOnly: true - x-stream-index: "001" + - content: + application/json: + schema: + $ref: '#/components/schemas/ConnectRequest' + x-stream-index: "001" + in: query + name: json responses: - "200": - content: - application/json: - schema: - $ref: '#/components/schemas/FileDeleteResponse' - description: Successful response "400": content: application/json: @@ -8994,44 +10882,37 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete file + summary: Connect (WebSocket) tags: - - Messages - - Files - post: + - Users + /devices: + delete: description: | - Uploads file - - Required permissions: - - UploadAttachment - operationId: UploadFile + Deletes one device + operationId: DeleteDevice parameters: - - in: path - name: type - required: true + - in: query + name: id schema: + description: Device ID to delete + title: ID type: string writeOnly: true - x-stream-index: "001.001" - - in: path - name: id - required: true + x-stream-index: "001" + - in: query + name: user_id schema: + description: '**Server-side only**. User ID which server acts upon' + title: User ID type: string writeOnly: true - x-stream-index: "001.002" - requestBody: - content: - multipart/form-data: - schema: - $ref: '#/components/schemas/FileUploadRequest' - required: true + x-stream-index: "002.001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/FileUploadResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -9045,48 +10926,28 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Upload file + summary: Delete device tags: - - Messages - - Files - /channels/{type}/{id}/hide: - post: + - Devices + get: description: | - Marks channel as hidden for current user - - Sends events: - - channel.hidden - - Required permissions: - - ReadChannel - operationId: HideChannel + Returns all available devices + operationId: ListDevices parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true + - in: query + name: user_id schema: + description: '**Server-side only**. User ID which server acts upon' + title: User ID type: string - writeOnly: true - x-stream-index: "002.002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/HideChannelRequest' - required: true + writeOnly: true + x-stream-index: "001.001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/HideChannelResponse' + $ref: '#/components/schemas/ListDevicesResponse' description: Successful response "400": content: @@ -9100,51 +10961,20 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Hide channel + summary: List devices tags: - - Channels - /channels/{type}/{id}/image: - delete: + - Devices + post: description: | - Deletes previously uploaded image - - Required permissions: - - DeleteAttachment - operationId: DeleteImage - parameters: - - in: path - name: type - required: true - schema: - description: The type of file - title: Type - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id + Adds a new device to a user, if the same device already exists the call will have no effect + operationId: CreateDevice + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateDeviceRequest' required: true - schema: - description: File ID - title: ID - type: string - writeOnly: true - x-stream-index: "002.002" - - in: query - name: url - schema: - description: File URL to delete - title: URL - type: string - writeOnly: true - x-stream-index: "001" responses: - "200": - content: - application/json: - schema: - $ref: '#/components/schemas/FileDeleteResponse' - description: Successful response "400": content: application/json: @@ -9157,44 +10987,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete image + summary: Create device tags: - - Messages - - Files + - Devices + - Push + /guest: post: description: | - Uploads image - - Required permissions: - - UploadAttachment - operationId: UploadImage - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: 001.001.001 - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: 001.001.002 + Creates guest user + operationId: CreateGuest requestBody: content: - multipart/form-data: + application/json: schema: - $ref: '#/components/schemas/ImageUploadRequest' + $ref: '#/components/schemas/GuestRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ImageUploadResponse' + $ref: '#/components/schemas/GuestResponse' description: Successful response "400": content: @@ -9208,58 +11021,70 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Upload image + summary: Create guest tags: - - Messages - - Files - /channels/{type}/{id}/message: - post: + - Users + /longpoll: + get: description: | - Sends new message to the specified channel + WebSocket fallback transport endpoint Sends events: - - message.new - - message.updated - - Required permissions: - - AddLinks - - CreateMessage - - PinMessage - - SkipChannelCooldown - - SkipMessageModeration - - UseFrozenChannel - operationId: SendMessage + - user.updated + operationId: LongPoll parameters: - - in: path - name: type - required: true - schema: - description: Channel type to interact with - title: Channel type - type: string - writeOnly: true - x-stream-index: "009.001" - - in: path - name: id - required: true + - content: + application/json: + schema: + $ref: '#/components/schemas/ConnectRequest' + x-stream-index: "001" + in: query + name: json + - in: query + name: connection_id schema: - description: Channel ID to interact with - title: Channel ID + maxLength: 36 type: string writeOnly: true - x-stream-index: "009.002" - requestBody: - content: + x-stream-index: "002" + responses: + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Long Poll (Transport) + tags: + - Users + /members: + get: + description: | + Find and filter channel members + + Required permissions: + - ReadChannel + operationId: QueryMembers + parameters: + - content: application/json: schema: - $ref: '#/components/schemas/SendMessageRequest' - required: true + $ref: '#/components/schemas/QueryMembersRequest' + x-stream-index: "001" + in: query + name: payload responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/SendMessageResponse' + $ref: '#/components/schemas/MembersResponse' description: Successful response "400": content: @@ -9273,49 +11098,50 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send new message + summary: Query members tags: - - Messages - /channels/{type}/{id}/messages: - get: + - Channels + /messages/{id}: + delete: description: | - Returns list messages found by IDs + Deletes message + + Sends events: + - message.deleted Required permissions: - - ReadChannel - operationId: GetManyMessages + - DeleteMessage + operationId: DeleteMessage parameters: - in: path - name: type + name: id required: true schema: + description: Message ID to delete + title: ID type: string writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true + x-stream-index: "001" + - in: query + name: hard schema: - type: string + description: Delete all message reactions and replies as well + title: Hard + type: boolean writeOnly: true - x-stream-index: "002.002" + x-stream-index: "002" - in: query - name: ids + name: deleted_by schema: - description: List of comma-separated IDs - items: - type: string - maximum: 50 - minimum: 1 - title: IDs - type: array - x-stream-index: "001" + type: string + writeOnly: true + x-stream-index: "003" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/GetManyMessagesResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -9329,61 +11155,38 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get many messages + summary: Delete message tags: - Messages - /channels/{type}/{id}/query: - post: + get: description: | - This Method creates a channel or returns an existing one with matching attributes + Returns message by ID - Sends events: - - channel.created - - member.added - - member.removed - - member.updated - - user.watching.start - operationId: GetOrCreateChannel - parameters: - - in: path - name: type - required: true - schema: - description: Channel type - maxLength: 64 - title: Type - type: string - writeOnly: true - x-stream-index: "002" + Required permissions: + - ReadChannel + operationId: GetMessage + parameters: - in: path name: id required: true schema: - description: Channel ID (maximum length of 64 characters) + description: Message ID title: ID type: string writeOnly: true - x-stream-index: "003" + x-stream-index: "002" - in: query - name: connection_id + name: show_deleted_message schema: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID - type: string - x-stream-index: "001.003" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelGetOrCreateRequest' - required: true + type: boolean + writeOnly: true + x-stream-index: "003" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/ChannelStateResponse' + $ref: '#/components/schemas/MessageWithPendingMetadataResponse' description: Successful response "400": content: @@ -9397,47 +11200,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get or create channel + summary: Get message tags: - - Channels - /channels/{type}/{id}/read: + - Messages post: description: | - Marks channel as read up to the specific message + Updates message with new data Sends events: - - message.read + - message.updated Required permissions: - - ReadChannel - operationId: MarkRead + - AddLinks + - PinMessage + - SkipMessageModeration + - UpdateMessage + operationId: UpdateMessage parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - in: path name: id required: true schema: type: string writeOnly: true - x-stream-index: "002.002" + x-stream-index: "003.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/MarkReadRequest' + $ref: '#/components/schemas/UpdateMessageRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MarkReadResponse' + $ref: '#/components/schemas/UpdateMessageResponse' description: Successful response "400": content: @@ -9451,49 +11249,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark read + summary: Update message tags: - - Channels - Messages - /channels/{type}/{id}/show: - post: + put: description: | - Shows previously hidden channel + Updates certain fields of the message Sends events: - - channel.visible - operationId: ShowChannel + - message.updated + + Required permissions: + - AddLinks + - PinMessage + - SkipMessageModeration + - UpdateMessage + operationId: UpdateMessagePartial parameters: - - in: path - name: type - required: true - schema: - description: Channel type to interact with - title: Channel type - type: string - writeOnly: true - x-stream-index: "001.001" - in: path name: id required: true schema: - description: Channel ID to interact with - title: Channel ID type: string writeOnly: true - x-stream-index: "001.002" + x-stream-index: "003.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/ShowChannelRequest' + $ref: '#/components/schemas/UpdateMessagePartialRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ShowChannelResponse' + $ref: '#/components/schemas/UpdateMessagePartialResponse' description: Successful response "400": content: @@ -9507,49 +11298,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Show channel + summary: Partially message update tags: - - Channels - /channels/{type}/{id}/stop-watching: + - Messages + /messages/{id}/action: post: description: | - Call this Method to stop receiving channel events + Executes message command action with given parameters Sends events: - - user.watching.stop - operationId: StopWatchingChannel + - message.new + + Required permissions: + - RunMessageAction + operationId: RunMessageAction parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - in: path name: id required: true schema: + description: Message ID + title: ID type: string writeOnly: true - x-stream-index: "002.002" - - in: query - name: connection_id - schema: - type: string - x-stream-index: "001.003" + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/ChannelStopWatchingRequest' + $ref: '#/components/schemas/MessageActionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/StopWatchingResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -9563,48 +11347,44 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Stop watching channel + summary: Run message command action tags: - - Channels - /channels/{type}/{id}/truncate: + - Messages + /messages/{id}/reaction: post: description: | - Truncates channel + Sends reaction to specified message Sends events: - - channel.truncated + - reaction.new + - reaction.updated Required permissions: - - DeleteChannel - - TruncateChannel - operationId: TruncateChannel + - CreateReaction + - UseFrozenChannel + operationId: SendReaction parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "001.001" - in: path name: id required: true schema: + description: Message ID to send reaction for + title: ID type: string writeOnly: true - x-stream-index: "001.002" + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/TruncateChannelRequest' + $ref: '#/components/schemas/SendReactionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/TruncateChannelResponse' + $ref: '#/components/schemas/ReactionResponse' description: Successful response "400": content: @@ -9618,44 +11398,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Truncate channel + summary: Send reaction tags: - - Channels - /channels/{type}/{id}/unread: - post: + - Messages + - Reactions + /messages/{id}/reaction/{type}: + delete: description: | - Marks channel as unread from a specific message + Removes user reaction from the message + + Sends events: + - reaction.deleted Required permissions: - - ReadChannel - operationId: MarkUnread + - DeleteReaction + operationId: DeleteReaction parameters: - in: path - name: type + name: id required: true schema: + description: Message ID to remove reaction from + title: ID type: string writeOnly: true - x-stream-index: "002.001" + x-stream-index: "001" - in: path - name: id + name: type required: true schema: + description: Reaction type to remove + title: Type type: string writeOnly: true - x-stream-index: "002.002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MarkUnreadRequest' - required: true + x-stream-index: "002" + - in: query + name: user_id + schema: + description: '**Server-side only**. User ID which server acts upon' + title: User ID + type: string + writeOnly: true + x-stream-index: "003" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/ReactionRemovalResponse' description: Successful response "400": content: @@ -9669,53 +11459,52 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark unread + summary: Delete reaction tags: - - Channels - Messages - /channels/{type}/query: - post: + - Reactions + /messages/{id}/reactions: + get: description: | - This Method creates a channel or returns an existing one with matching attributes + Returns list of reactions of specific message - Sends events: - - channel.created - - member.added - - member.removed - - member.updated - - user.watching.start - operationId: GetOrCreateChannel + Required permissions: + - ReadChannel + operationId: GetReactions parameters: - in: path - name: type + name: id required: true schema: - description: Channel type - maxLength: 64 - title: Type + description: Message ID + title: ID type: string writeOnly: true + x-stream-index: "001" + - in: query + name: limit + schema: + description: Number of records to return + format: int32 + title: Limit + type: integer + writeOnly: true x-stream-index: "002" - in: query - name: connection_id + name: offset schema: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID - type: string - x-stream-index: "001.003" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelGetOrCreateRequest' - required: true + description: Number of records to offset + format: int32 + title: Offset + type: integer + writeOnly: true + x-stream-index: "003" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/ChannelStateResponse' + $ref: '#/components/schemas/GetReactionsResponse' description: Successful response "400": content: @@ -9729,32 +11518,43 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get or create channel + summary: Get reactions tags: - - Channels - /channels/delete: + - Messages + - Reactions + /messages/{id}/translate: post: description: | - Allows to delete several channels at once asynchronously + Translates message to a given language using automated translation software Sends events: - - channel.deleted + - message.updated Required permissions: - - DeleteChannel - operationId: DeleteChannels + - ReadChannel + operationId: TranslateMessage + parameters: + - in: path + name: id + required: true + schema: + description: Message ID + title: ID + type: string + writeOnly: true + x-stream-index: "001.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelsRequest' + $ref: '#/components/schemas/TranslateMessageRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelsResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -9768,33 +11568,47 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Deletes channels asynchronously + summary: Translate message tags: - - Channels - - GDPR - /channels/read: + - Messages + /messages/{message_id}/polls/{poll_id}/vote: post: description: | - Marks channels as read up to the specific message. If no channels is given, mark all channel as read + Cast a vote on a poll Sends events: - - message.read + - poll.vote_casted Required permissions: - - ReadChannel - operationId: MarkChannelsRead + - CastVote + operationId: CastPollVote + parameters: + - in: path + name: message_id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001" + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/MarkChannelsReadRequest' + $ref: '#/components/schemas/CastPollVoteRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MarkReadResponse' + $ref: '#/components/schemas/PollVoteResponse' description: Successful response "400": content: @@ -9808,70 +11622,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark channels as read + summary: Cast vote tags: - - Channels - - Messages - /connect: - get: + - Polls + /messages/{message_id}/polls/{poll_id}/vote/{vote_id}: + delete: description: | - Establishes WebSocket connection for user + Delete a vote from a poll Sends events: - - user.updated - operationId: Connect - parameters: - - content: - application/json: - schema: - $ref: '#/components/schemas/ConnectRequest' - x-stream-index: "001" - in: query - name: json - responses: - "400": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Bad request - "429": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Too many requests - summary: Connect (WebSocket) - tags: - - Users - /devices: - delete: - description: | - Deletes one device - operationId: DeleteDevice + - poll.vote_removed + + Required permissions: + - CastVote + operationId: RemovePollVote parameters: - - in: query - name: id + - in: path + name: message_id + required: true schema: - description: Device ID to delete - title: ID type: string writeOnly: true - x-stream-index: "001" + x-stream-index: "002" + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: path + name: vote_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "004" - in: query name: user_id schema: - description: '**Server-side only**. User ID which server acts upon' - title: User ID type: string writeOnly: true - x-stream-index: "002.001" + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/PollVoteResponse' description: Successful response "400": content: @@ -9885,88 +11683,88 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete device + summary: Delete vote tags: - - Devices + - Polls + /messages/{parent_id}/replies: get: description: | - Returns all available devices - operationId: ListDevices + Returns replies (thread) of the message + + Required permissions: + - ReadChannel + operationId: GetReplies parameters: - - in: query - name: user_id + - in: path + name: parent_id + required: true schema: - description: '**Server-side only**. User ID which server acts upon' - title: User ID + description: ID of a message which replies to return + title: Parent ID type: string writeOnly: true - x-stream-index: "001.001" - responses: - "200": - content: - application/json: - schema: - $ref: '#/components/schemas/ListDevicesResponse' - description: Successful response - "400": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Bad request - "429": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Too many requests - summary: List devices - tags: - - Devices - post: - description: | - Adds a new device to a user, if the same device already exists the call will have no effect - operationId: CreateDevice - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateDeviceRequest' - required: true - responses: - "400": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Bad request - "429": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Too many requests - summary: Create device - tags: - - Devices - - Push - /guest: - post: - description: | - Creates guest user - operationId: CreateGuest - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GuestRequest' - required: true + x-stream-index: "001" + - in: query + name: id_gte + schema: + type: string + x-stream-index: 002.001.003 + - in: query + name: id_gt + schema: + type: string + x-stream-index: 002.001.004 + - in: query + name: id_lte + schema: + type: string + x-stream-index: 002.001.005 + - in: query + name: id_lt + schema: + type: string + x-stream-index: 002.001.006 + - in: query + name: created_at_after_or_equal + schema: + format: date-time + type: string + x-stream-index: 002.001.007 + - in: query + name: created_at_after + schema: + format: date-time + type: string + x-stream-index: 002.001.008 + - in: query + name: created_at_before_or_equal + schema: + format: date-time + type: string + x-stream-index: 002.001.009 + - in: query + name: created_at_before + schema: + format: date-time + type: string + x-stream-index: 002.001.010 + - in: query + name: id_around + schema: + type: string + x-stream-index: 002.001.011 + - in: query + name: created_at_around + schema: + format: date-time + type: string + x-stream-index: 002.001.012 responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/GuestResponse' + $ref: '#/components/schemas/GetRepliesResponse' description: Successful response "400": content: @@ -9980,70 +11778,48 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create guest + summary: Get replies tags: - - Users - /longpoll: - get: + - Messages + /moderation/ban: + delete: description: | - WebSocket fallback transport endpoint + Removes previously applied ban Sends events: - - user.updated - operationId: LongPoll + - user.unbanned + + Required permissions: + - BanChannelMember + - BanUser + operationId: Unban parameters: - - content: - application/json: - schema: - $ref: '#/components/schemas/ConnectRequest' - x-stream-index: "001" - in: query - name: json - in: query - name: connection_id + name: target_user_id + schema: + type: string + x-stream-index: "001" + - in: query + name: type schema: - maxLength: 36 type: string - writeOnly: true x-stream-index: "002" - responses: - "400": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Bad request - "429": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Too many requests - summary: Long Poll (Transport) - tags: - - Users - /members: - get: - description: | - Find and filter channel members - - Required permissions: - - ReadChannel - operationId: QueryMembers - parameters: - - content: - application/json: - schema: - $ref: '#/components/schemas/QueryMembersRequest' - x-stream-index: "001" - in: query - name: payload + - in: query + name: id + schema: + type: string + x-stream-index: "003" + - in: query + name: created_by + schema: + type: string + x-stream-index: "004" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/MembersResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -10057,50 +11833,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query members + summary: Unban user tags: - - Channels - /messages/{id}: - delete: + - Users + - Moderation + post: description: | - Deletes message + Restricts user activity either in specific channel or globally Sends events: - - message.deleted + - user.banned Required permissions: - - DeleteMessage - operationId: DeleteMessage - parameters: - - in: path - name: id + - BanChannelMember + - BanUser + operationId: Ban + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/BanRequest' required: true - schema: - description: Message ID to delete - title: ID - type: string - writeOnly: true - x-stream-index: "001" - - in: query - name: hard - schema: - description: Delete all message reactions and replies as well - title: Hard - type: boolean - writeOnly: true - x-stream-index: "002" - - in: query - name: deleted_by - schema: - type: string - writeOnly: true - x-stream-index: "003" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -10114,38 +11873,35 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete message + summary: Ban user tags: - - Messages - get: + - Users + - Moderation + /moderation/flag: + post: description: | - Returns message by ID + Reports message or user for review by moderators + + Sends events: + - message.flagged + - user.flagged Required permissions: - - ReadChannel - operationId: GetMessage - parameters: - - in: path - name: id + - FlagMessage + - FlagUser + operationId: Flag + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FlagRequest' required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "002" - - in: query - name: show_deleted_message - schema: - type: boolean - writeOnly: true - x-stream-index: "003" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/MessageWithPendingMetadataResponse' + $ref: '#/components/schemas/FlagResponse' description: Successful response "400": content: @@ -10159,42 +11915,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get message + summary: Flag tags: + - Moderation - Messages - post: + - Users + /moderation/flags/message: + get: description: | - Updates message with new data - - Sends events: - - message.updated + Find and filter message flags Required permissions: - - AddLinks - - PinMessage - - SkipMessageModeration - - UpdateMessage - operationId: UpdateMessage + - ReadMessageFlags + operationId: QueryMessageFlags parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "003.001" - requestBody: - content: + - content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageRequest' - required: true + $ref: '#/components/schemas/QueryMessageFlagsRequest' + x-stream-index: "001" + in: query + name: payload responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageResponse' + $ref: '#/components/schemas/QueryMessageFlagsResponse' description: Successful response "400": content: @@ -10208,42 +11955,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update message + summary: Query Message Flags tags: - Messages - put: + - Moderation + /moderation/mute: + post: description: | - Updates certain fields of the message + Mutes one or several users Sends events: - - message.updated + - user.muted Required permissions: - - AddLinks - - PinMessage - - SkipMessageModeration - - UpdateMessage - operationId: UpdateMessagePartial - parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "003.001" + - MuteUser + operationId: MuteUser requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateMessagePartialRequest' + $ref: '#/components/schemas/MuteUserRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessagePartialResponse' + $ref: '#/components/schemas/MuteUserResponse' description: Successful response "400": content: @@ -10257,42 +11995,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Partially message update + summary: Mute user tags: - - Messages - /messages/{id}/action: + - Users + - Moderation + /moderation/mute/channel: post: description: | - Executes message command action with given parameters + Mutes channel for user Sends events: - - message.new + - channel.muted Required permissions: - - RunMessageAction - operationId: RunMessageAction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001" + - MuteChannel + operationId: MuteChannel requestBody: content: application/json: schema: - $ref: '#/components/schemas/MessageActionRequest' + $ref: '#/components/schemas/MuteChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/MuteChannelResponse' description: Successful response "400": content: @@ -10306,44 +12035,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Run message command action + summary: Mute channel tags: - - Messages - /messages/{id}/reaction: + - Channels + /moderation/unmute: post: description: | - Sends reaction to specified message + Unmutes previously muted user Sends events: - - reaction.new - - reaction.updated + - user.unmuted Required permissions: - - CreateReaction - - UseFrozenChannel - operationId: SendReaction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID to send reaction for - title: ID - type: string - writeOnly: true - x-stream-index: "001" + - MuteUser + operationId: UnmuteUser requestBody: content: application/json: schema: - $ref: '#/components/schemas/SendReactionRequest' + $ref: '#/components/schemas/UnmuteUserRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ReactionResponse' + $ref: '#/components/schemas/UnmuteResponse' description: Successful response "400": content: @@ -10357,54 +12074,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send reaction + summary: Unmute user tags: - - Messages - - Reactions - /messages/{id}/reaction/{type}: - delete: + - Users + - Moderation + /moderation/unmute/channel: + post: description: | - Removes user reaction from the message + Unmutes channel for user Sends events: - - reaction.deleted + - channel.unmuted Required permissions: - - DeleteReaction - operationId: DeleteReaction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID to remove reaction from - title: ID - type: string - writeOnly: true - x-stream-index: "001" - - in: path - name: type + - MuteChannel + operationId: UnmuteChannel + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UnmuteChannelRequest' required: true - schema: - description: Reaction type to remove - title: Type - type: string - writeOnly: true - x-stream-index: "002" - - in: query - name: user_id - schema: - description: '**Server-side only**. User ID which server acts upon' - title: User ID - type: string - writeOnly: true - x-stream-index: "003" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/ReactionRemovalResponse' + $ref: '#/components/schemas/UnmuteResponse' description: Successful response "400": content: @@ -10418,53 +12114,30 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete reaction + summary: Unmute channel tags: - - Messages - - Reactions - /messages/{id}/reactions: + - Channels + /og: get: description: | - Returns list of reactions of specific message - - Required permissions: - - ReadChannel - operationId: GetReactions + Get an OpenGraph attachment for a link + operationId: GetOG parameters: - - in: path - name: id - required: true + - in: query + name: url schema: - description: Message ID - title: ID + description: URL to be scraped + title: URL type: string writeOnly: true x-stream-index: "001" - - in: query - name: limit - schema: - description: Number of records to return - format: int32 - title: Limit - type: integer - writeOnly: true - x-stream-index: "002" - - in: query - name: offset - schema: - description: Number of records to offset - format: int32 - title: Offset - type: integer - writeOnly: true - x-stream-index: "003" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/GetReactionsResponse' - description: Successful response + $ref: '#/components/schemas/GetOGResponse' + description: Get OG Attachment "400": content: application/json: @@ -10477,43 +12150,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get reactions + summary: Get OG tags: - Messages - - Reactions - /messages/{id}/translate: + /polls: post: description: | - Translates message to a given language using automated translation software + Creates a new poll Sends events: - - message.updated + - poll.created Required permissions: - - ReadChannel - operationId: TranslateMessage - parameters: - - in: path - name: id - required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001.001" + - CreatePoll + operationId: CreatePoll requestBody: content: application/json: schema: - $ref: '#/components/schemas/TranslateMessageRequest' + $ref: '#/components/schemas/CreatePollRequest' + description: Create Poll Request required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -10527,88 +12190,31 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Translate message + summary: Create poll tags: - - Messages - /messages/{parent_id}/replies: - get: + - Polls + put: description: | - Returns replies (thread) of the message + Updates a poll + + Sends events: + - poll.updated Required permissions: - - ReadChannel - operationId: GetReplies - parameters: - - in: path - name: parent_id + - UpdatePoll + operationId: UpdatePoll + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdatePollRequest' required: true - schema: - description: ID of a message which replies to return - title: Parent ID - type: string - writeOnly: true - x-stream-index: "001" - - in: query - name: id_gte - schema: - type: string - x-stream-index: 002.001.003 - - in: query - name: id_gt - schema: - type: string - x-stream-index: 002.001.004 - - in: query - name: id_lte - schema: - type: string - x-stream-index: 002.001.005 - - in: query - name: id_lt - schema: - type: string - x-stream-index: 002.001.006 - - in: query - name: created_at_after_or_equal - schema: - format: date-time - type: string - x-stream-index: 002.001.007 - - in: query - name: created_at_after - schema: - format: date-time - type: string - x-stream-index: 002.001.008 - - in: query - name: created_at_before_or_equal - schema: - format: date-time - type: string - x-stream-index: 002.001.009 - - in: query - name: created_at_before - schema: - format: date-time - type: string - x-stream-index: 002.001.010 - - in: query - name: id_around - schema: - type: string - x-stream-index: 002.001.011 - - in: query - name: created_at_around - schema: - format: date-time - type: string - x-stream-index: 002.001.012 responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetRepliesResponse' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -10622,42 +12228,34 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get replies + summary: Update poll tags: - - Messages - /moderation/ban: + - Polls + /polls/{poll_id}: delete: description: | - Removes previously applied ban + Deletes a poll Sends events: - - user.unbanned + - poll.deleted Required permissions: - - BanChannelMember - - BanUser - operationId: Unban + - DeletePoll + operationId: DeletePoll parameters: - - in: query - name: target_user_id - schema: - type: string - x-stream-index: "001" - - in: query - name: type + - in: path + name: poll_id + required: true schema: + maxLength: 255 type: string x-stream-index: "002" - in: query - name: id - schema: - type: string - x-stream-index: "003" - - in: query - name: created_by + name: user_id schema: type: string - x-stream-index: "004" + writeOnly: true + x-stream-index: "001" responses: "200": content: @@ -10677,33 +12275,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unban user + summary: Delete poll tags: - - Users - - Moderation - post: + - Polls + get: description: | - Restricts user activity either in specific channel or globally - - Sends events: - - user.banned - - Required permissions: - - BanChannelMember - - BanUser - operationId: Ban - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/BanRequest' + Retrieves a poll + operationId: GetPoll + parameters: + - in: path + name: poll_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -10717,35 +12315,39 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Ban user + summary: Get poll tags: - - Users - - Moderation - /moderation/flag: - post: + - Polls + patch: description: | - Reports message or user for review by moderators + Updates a poll partially Sends events: - - message.flagged - - user.flagged + - poll.updated Required permissions: - - FlagMessage - - FlagUser - operationId: Flag + - UpdatePoll + operationId: UpdatePollPartial + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/FlagRequest' + $ref: '#/components/schemas/UpdatePollPartialRequest' required: true responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/FlagResponse' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -10759,33 +12361,41 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Flag + summary: Partial update poll tags: - - Moderation - - Messages - - Users - /moderation/flags/message: - get: + - Polls + /polls/{poll_id}/options: + post: description: | - Find and filter message flags + Creates a poll option + + Sends events: + - poll.updated Required permissions: - - ReadMessageFlags - operationId: QueryMessageFlags + - CastVote + - UpdatePoll + operationId: CreatePollOption parameters: - - content: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" + requestBody: + content: application/json: schema: - $ref: '#/components/schemas/QueryMessageFlagsRequest' - x-stream-index: "001" - in: query - name: payload + $ref: '#/components/schemas/CreatePollOptionRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/QueryMessageFlagsResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -10799,33 +12409,39 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query Message Flags + summary: Create poll option tags: - - Messages - - Moderation - /moderation/mute: - post: + - Polls + put: description: | - Mutes one or several users + Updates a poll option Sends events: - - user.muted + - poll.updated Required permissions: - - MuteUser - operationId: MuteUser + - UpdatePoll + operationId: UpdatePollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/MuteUserRequest' + $ref: '#/components/schemas/UpdatePollOptionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MuteUserResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -10839,33 +12455,47 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mute user + summary: Update poll option tags: - - Users - - Moderation - /moderation/mute/channel: - post: + - Polls + /polls/{poll_id}/options/{option_id}: + delete: description: | - Mutes channel for user + Deletes a poll option Sends events: - - channel.muted + - poll.updated Required permissions: - - MuteChannel - operationId: MuteChannel - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MuteChannelRequest' + - UpdatePoll + operationId: DeletePollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: path + name: option_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MuteChannelResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -10879,32 +12509,40 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mute channel + summary: Delete poll option tags: - - Channels - /moderation/unmute: - post: + - Polls + get: description: | - Unmutes previously muted user - - Sends events: - - user.unmuted - - Required permissions: - - MuteUser - operationId: UnmuteUser - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UnmuteUserRequest' + Retrieves a poll option + operationId: GetPollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: path + name: option_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/UnmuteResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -10918,33 +12556,40 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unmute user + summary: Get poll option tags: - - Users - - Moderation - /moderation/unmute/channel: + - Polls + /polls/{poll_id}/votes: post: description: | - Unmutes channel for user - - Sends events: - - channel.unmuted - - Required permissions: - - MuteChannel - operationId: UnmuteChannel + Queries votes + operationId: QueryPollVotes + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UnmuteChannelRequest' + $ref: '#/components/schemas/QueryPollVotesRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UnmuteResponse' + $ref: '#/components/schemas/PollVotesResponse' description: Successful response "400": content: @@ -10958,30 +12603,34 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unmute channel + summary: Query votes tags: - - Channels - /og: - get: + - Polls + /polls/query: + post: description: | - Get an OpenGraph attachment for a link - operationId: GetOG + Queries polls + operationId: QueryPolls parameters: - in: query - name: url + name: user_id schema: - description: URL to be scraped - title: URL type: string writeOnly: true x-stream-index: "001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryPollsRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetOGResponse' - description: Get OG Attachment + $ref: '#/components/schemas/QueryPollsResponse' + description: Successful response "400": content: application/json: @@ -10994,9 +12643,9 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get OG + summary: Query polls tags: - - Messages + - Polls /query_banned_users: get: description: | diff --git a/openapi/chat-openapi.json b/openapi/chat-openapi.json index f320087f..252bd8bd 100644 --- a/openapi/chat-openapi.json +++ b/openapi/chat-openapi.json @@ -1 +1 @@ -{"components":{"schemas":{"APIError":{"nullable":true,"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNConfigFields":{"properties":{"auth_key":{"type":"string","x-stream-index":"009"},"auth_type":{"type":"string","x-stream-index":"003"},"bundle_id":{"type":"string","x-stream-index":"006"},"development":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"},"host":{"type":"string","x-stream-index":"005"},"key_id":{"type":"string","x-stream-index":"008"},"notification_template":{"type":"string","x-stream-index":"004"},"p12_cert":{"type":"string","x-stream-index":"010"},"team_id":{"type":"string","x-stream-index":"007"}},"required":["enabled","development","notification_template"],"type":"object"},"APNConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"005"},"auth_key":{"type":"string","x-stream-index":"006.001"},"auth_type":{"enum":["certificate","token"],"type":"string","x-stream-index":"001"},"bundle_id":{"type":"string","x-stream-index":"004"},"development":{"type":"boolean","x-stream-index":"002"},"host":{"type":"string","x-stream-index":"003"},"key_id":{"type":"string","x-stream-index":"006.002"},"notification_template":{"type":"string","x-stream-index":"008"},"p12_cert":{"type":"string","x-stream-index":"007.001"},"team_id":{"type":"string","x-stream-index":"006.003"}},"type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"Action":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"required":["name","text","type"],"type":"object"},"ActionRequest":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"type":"object"},"AgoraCall":{"properties":{"channel":{"type":"string","x-stream-index":"001"}},"required":["channel"],"type":"object"},"App":{"properties":{"agora_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.038"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.018"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.016"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.019"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.020"},"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallType"},"type":"object","x-stream-index":"001.006"},"campaign_enabled":{"type":"boolean","x-stream-index":"001.033"},"cdn_expiration_seconds":{"format":"int32","type":"integer","x-stream-index":"001.036"},"channel_configs":{"additionalProperties":{"$ref":"#/components/schemas/ChannelConfig"},"description":"Object with channel configs","title":"Channel configs","type":"object","x-stream-index":"001.005","x-stream-map":{"key":"channel_type"}},"custom_action_handler_url":{"type":"string","x-stream-index":"001.021"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfo","x-stream-index":"001.041"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.010"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.011"},"enforce_unique_usernames":{"type":"string","x-stream-index":"001.022"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.029"},"geofences":{"items":{"$ref":"#/components/schemas/GeofenceResponse"},"type":"array","x-stream-index":"001.040"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.039"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.015"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.017"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.030"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.014"},"name":{"type":"string","x-stream-index":"001.001"},"organization":{"type":"string","x-stream-index":"001.002"},"permission_version":{"type":"string","x-stream-index":"001.012"},"policies":{"additionalProperties":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"type":"object","x-stream-index":"001.007"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationFields","x-stream-index":"001.003"},"reminders_interval":{"format":"int32","type":"integer","x-stream-index":"001.035"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.031"},"sns_key":{"type":"string","x-stream-index":"001.027"},"sns_secret":{"type":"string","x-stream-index":"001.028"},"sns_topic_arn":{"type":"string","x-stream-index":"001.026"},"sqs_key":{"type":"string","x-stream-index":"001.024"},"sqs_secret":{"type":"string","x-stream-index":"001.025"},"sqs_url":{"type":"string","x-stream-index":"001.023"},"suspended":{"type":"boolean","x-stream-index":"001.008"},"suspended_explanation":{"type":"string","x-stream-index":"001.009"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"video_provider":{"type":"string","x-stream-index":"001.037"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.034"},"webhook_url":{"type":"string","x-stream-index":"001.004"}},"required":["name","organization","push_notifications","webhook_url","channel_configs","call_types","policies","suspended","suspended_explanation","disable_auth_checks","disable_permissions_checks","permission_version","user_search_disallowed_roles","multi_tenant_enabled","image_moderation_enabled","async_url_enrich_enabled","custom_action_handler_url","enforce_unique_usernames","sqs_url","sqs_key","sqs_secret","sns_topic_arn","sns_key","sns_secret","file_upload_config","image_upload_config","grants","campaign_enabled","webhook_events","reminders_interval","cdn_expiration_seconds","video_provider"],"type":"object"},"AsyncModerationCallbackConfigRequest":{"properties":{"mode":{"enum":["CALLBACK_MODE_NONE","CALLBACK_MODE_REST","CALLBACK_MODE_TWIRP"],"type":"string","x-stream-index":"002"},"server_url":{"type":"string","x-stream-index":"001"}},"type":"object"},"AsyncModerationConfigurationRequest":{"properties":{"callback":{"$ref":"#/components/schemas/AsyncModerationCallbackConfigRequest","x-stream-index":"002"},"timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"type":"object"},"Attachment":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"019"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"021"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url)","title":"Type","type":"string","x-stream-index":"001"}},"required":["Custom"],"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AttachmentRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"actions":{"items":{"$ref":"#/components/schemas/ActionRequest"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/FieldRequest"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/ImagesRequest","x-stream-index":"019"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"021"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url)","title":"Type","type":"string","x-stream-index":"001"}},"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AutomodDetails":{"properties":{"action":{"type":"string","x-stream-index":"001"},"image_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"message_details":{"$ref":"#/components/schemas/FlagMessageDetails","x-stream-index":"004"},"original_message_type":{"type":"string","x-stream-index":"002"},"result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"003"}},"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BanRequest":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserRequest","description":"User who issued a ban","title":"Banned by","x-stream-index":"009"},"banned_by_id":{"description":"User ID who issued a ban","title":"Banned by ID","type":"string","x-stream-index":"008"},"id":{"description":"Channel ID to ban user in","title":"ID","type":"string","x-stream-index":"005"},"ip_ban":{"description":"Whether to perform IP ban or not","title":"IP ban","type":"boolean","x-stream-index":"007"},"reason":{"description":"Ban reason","title":"Reason","type":"string","x-stream-index":"003"},"shadow":{"description":"Whether to perform shadow ban or not","title":"Shadow","type":"boolean","x-stream-index":"006"},"target_user_id":{"description":"ID of user to ban","title":"Target user ID","type":"string","x-stream-index":"001"},"timeout":{"description":"Timeout of ban in minutes. User will be unbanned after this period of time","title":"Timeout","type":"integer","x-stream-index":"002"},"type":{"description":"Channel type to ban user in","title":"Type","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"010.002"},"user_id":{"type":"string","x-stream-index":"010.001"}},"required":["target_user_id"],"type":"object"},"BanResponse":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"expires":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"required":["created_at"],"type":"object"},"BlockList":{"description":"Block list contains restricted words","nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"name":{"description":"Block list name","title":"Name","type":"string","x-stream-index":"006"},"type":{"description":"Block list type.","title":"Type","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"},"words":{"description":"List of words to block","items":{"type":"string"},"title":"Words","type":"array","x-stream-index":"008"}},"required":["name","type","words"],"title":"Block list","type":"object","x-stream-docs-page-id":"block_lists"},"BlockListOptions":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"required":["blocklist","behavior"],"type":"object"},"BlockListOptionsRequest":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"type":"object"},"BroadcastSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettings","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"Call":{"properties":{"agora":{"$ref":"#/components/schemas/AgoraCall","x-stream-index":"005"},"hms":{"$ref":"#/components/schemas/HMSCall","x-stream-index":"004"},"id":{"type":"string","x-stream-index":"002"},"provider":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"003"}},"required":["provider","id","type"],"type":"object"},"CallSettings":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettings","x-stream-index":"006"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"007"},"recording":{"$ref":"#/components/schemas/RecordSettings","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"009"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"004"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"003"}},"type":"object"},"CallType":{"nullable":true,"properties":{"AppPK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"CreatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"005"},"ExternalStorage":{"type":"string","writeOnly":true,"x-stream-index":"009"},"Name":{"type":"string","writeOnly":true,"x-stream-index":"004"},"NotificationSettings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"008"},"PK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"002"},"Settings":{"$ref":"#/components/schemas/CallSettings","x-stream-index":"007"},"UpdatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"006"}},"required":["PK","AppPK","Name","CreatedAt","UpdatedAt","ExternalStorage"],"type":"object"},"Channel":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"028"},"auto_translation_language":{"type":"string","x-stream-index":"029"},"cid":{"type":"string","x-stream-index":"003"},"config":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"025"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"026"},"cooldown":{"format":"int32","type":"integer","x-stream-index":"030"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"008"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"disabled":{"type":"boolean","x-stream-index":"017"},"frozen":{"type":"boolean","x-stream-index":"016"},"id":{"type":"string","x-stream-index":"004"},"invites":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"021"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"006"},"member_count":{"format":"int32","type":"integer","x-stream-index":"020"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"019"},"team":{"type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"015"},"type":{"type":"string","x-stream-index":"005"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"}},"required":["cid","id","type","created_at","updated_at","frozen","disabled","Custom","auto_translation_language"],"type":"object"},"ChannelConfig":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.024"},"blocklist":{"type":"string","x-stream-index":"001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.022"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"003"},"connect_events":{"type":"boolean","x-stream-index":"001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.012"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.017"},"message_retention":{"type":"string","x-stream-index":"001.016"},"mutes":{"type":"boolean","x-stream-index":"001.009"},"name":{"type":"string","x-stream-index":"001.001"},"push_notifications":{"type":"boolean","x-stream-index":"001.013"},"quotes":{"type":"boolean","x-stream-index":"001.008"},"reactions":{"type":"boolean","x-stream-index":"001.006"},"read_events":{"type":"boolean","x-stream-index":"001.003"},"reminders":{"type":"boolean","x-stream-index":"001.014"},"replies":{"type":"boolean","x-stream-index":"001.007"},"search":{"type":"boolean","x-stream-index":"001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"002.004"},"uploads":{"type":"boolean","x-stream-index":"001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands"],"type":"object"},"ChannelConfigRequest":{"description":"Channel configuration overrides","properties":{"blocklist":{"type":"string","x-stream-index":"008"},"blocklist_behavior":{"enum":["flag","block"],"type":"string","x-stream-index":"009"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"010","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"max_message_length":{"description":"Overrides max message length","format":"int32","maximum":20000,"title":"Max Message Length","type":"integer","x-stream-index":"007"},"quotes":{"description":"Enables message quotes","title":"Quotes","type":"boolean","x-stream-index":"004"},"reactions":{"description":"Enables or disables reactions","title":"Reactions","type":"boolean","x-stream-index":"002"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"003"},"typing_events":{"description":"Enables or disables typing events","title":"Typing events","type":"boolean","x-stream-index":"001"},"uploads":{"description":"Enables or disables file uploads","title":"Uploads","type":"boolean","x-stream-index":"005"},"url_enrichment":{"description":"Enables or disables URL enrichment","title":"URL Enrichment","type":"boolean","x-stream-index":"006"}},"type":"object"},"ChannelConfigWithInfo":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.002.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.002.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.002.024"},"blocklist":{"type":"string","x-stream-index":"001.002.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.002.022"},"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.001.003"},"custom_events":{"type":"boolean","x-stream-index":"001.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"002","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.002.017"},"message_retention":{"type":"string","x-stream-index":"001.002.016"},"mutes":{"type":"boolean","x-stream-index":"001.002.009"},"name":{"type":"string","x-stream-index":"001.002.001"},"push_notifications":{"type":"boolean","x-stream-index":"001.002.013"},"quotes":{"type":"boolean","x-stream-index":"001.002.008"},"reactions":{"type":"boolean","x-stream-index":"001.002.006"},"read_events":{"type":"boolean","x-stream-index":"001.002.003"},"reminders":{"type":"boolean","x-stream-index":"001.002.014"},"replies":{"type":"boolean","x-stream-index":"001.002.007"},"search":{"type":"boolean","x-stream-index":"001.002.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.001.004"},"uploads":{"type":"boolean","x-stream-index":"001.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.002.011"}},"required":["created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelExportRequest":{"properties":{"cid":{"type":"string","x-stream-index":"003"},"id":{"description":"Channel ID","title":"ID","type":"string","x-stream-index":"002"},"messages_since":{"description":"Date to export messages since","format":"date-time","title":"Messages since","type":"string","x-stream-index":"004"},"messages_until":{"description":"Date to export messages until","format":"date-time","title":"Messages until","type":"string","x-stream-index":"005"},"type":{"description":"Channel type","title":"Type","type":"string","x-stream-index":"001"}},"title":"Channel Export","type":"object"},"ChannelGetOrCreateRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"004"},"hide_for_creator":{"description":"Whether this channel will be hidden for the user who created the channel or not","title":"Hide for creator","type":"boolean","x-stream-index":"008"},"members":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"011"},"messages":{"$ref":"#/components/schemas/MessagePaginationParamsRequest","x-stream-index":"010"},"state":{"description":"Refresh channel state","title":"State","type":"boolean","x-stream-index":"006"},"thread_unread_counts":{"type":"boolean","x-stream-index":"009"},"watchers":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"012"}},"type":"object"},"ChannelMember":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"required":["created_at","updated_at","banned","shadow_banned","channel_role","notifications_muted"],"title":"Channel member","type":"object"},"ChannelMemberRequest":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"title":"Channel member","type":"object"},"ChannelMute":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"007"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"ChannelRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"auto_translation_enabled":{"description":"Enable or disable auto translation","title":"Auto translation","type":"boolean","x-stream-index":"007"},"auto_translation_language":{"description":"Switch auto translation language","title":"Auto translation language","type":"string","x-stream-index":"008"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfigRequest","x-stream-index":"026"},"disabled":{"type":"boolean","x-stream-index":"016"},"frozen":{"description":"Freeze or unfreeze the channel","title":"Frozen","type":"boolean","x-stream-index":"015"},"members":{"items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"type":"array","x-stream-index":"020"},"team":{"description":"Team the channel belongs to (if multi-tenant mode is enabled)","title":"Team","type":"string","x-stream-index":"006"},"truncated_by_id":{"type":"string","x-stream-index":"012"}},"type":"object"},"ChannelResponse":{"description":"Represents channel in chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"029"},"auto_translation_enabled":{"description":"Whether auto translation is enabled or not","title":"Auto translation","type":"boolean","x-stream-index":"021"},"auto_translation_language":{"description":"Language to translate to when auto translation is active","title":"Auto translation language","type":"string","x-stream-index":"022"},"cid":{"description":"Channel CID (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"005"},"config":{"$ref":"#/components/schemas/ChannelConfigWithInfo","description":"Channel configuration","title":"Config","x-stream-index":"017"},"cooldown":{"description":"Cooldown period after sending each message","format":"int32","title":"Cooldown","type":"integer","x-stream-index":"024"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"008"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Creator of the channel","title":"Created by","x-stream-index":"011"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"010"},"disabled":{"type":"boolean","x-stream-index":"013"},"frozen":{"description":"Whether channel is frozen or not","title":"Frozen","type":"boolean","x-stream-index":"012"},"hidden":{"description":"Whether this channel is hidden by current user or not","title":"Hidden","type":"boolean","x-stream-index":"026"},"hide_messages_before":{"description":"Date since when the message history is accessible","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"023"},"id":{"description":"Channel unique ID","title":"ID","type":"string","x-stream-index":"003"},"last_message_at":{"description":"Date of the last message sent","format":"date-time","title":"Last message at","type":"string","x-stream-index":"006"},"member_count":{"description":"Number of members in the channel","format":"int32","title":"Member count","type":"integer","x-stream-index":"015"},"members":{"description":"List of channel members (max 100)","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"014"},"mute_expires_at":{"description":"Date of mute expiration","format":"date-time","title":"Mute expires at","type":"string","x-stream-index":"019"},"muted":{"description":"Whether this channel is muted or not","title":"Muted","type":"boolean","x-stream-index":"018"},"own_capabilities":{"description":"List of channel capabilities of authenticated user","items":{"type":"string"},"title":"Own Capabilities","type":"array","x-stream-index":"025"},"team":{"description":"Team the channel belongs to (multi-tenant only)","title":"Team","type":"string","x-stream-index":"020"},"truncated_at":{"description":"Date of the latest truncation of the channel","format":"date-time","title":"Truncated At","type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"028"},"type":{"description":"Type of the channel","title":"Type","type":"string","x-stream-docs-page-id":"channel_features","x-stream-index":"004"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"009"}},"required":["id","type","cid","frozen","disabled","Custom"],"title":"Channel","type":"object"},"ChannelStateResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"hidden":{"type":"boolean","x-stream-index":"001.010"},"hide_messages_before":{"format":"date-time","type":"string","x-stream-index":"001.011"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"001.007"},"membership":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.008"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.002"},"pending_messages":{"items":{"$ref":"#/components/schemas/PendingMessage"},"type":"array","x-stream-index":"001.012"},"pinned_messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.003"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"001.006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"001.009"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.004"},"watchers":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.005"}},"required":["messages","pinned_messages","members","threads","duration"],"type":"object"},"ChannelStateResponseFields":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"hidden":{"description":"Whether this channel is hidden or not","title":"Hidden","type":"boolean","x-stream-index":"010"},"hide_messages_before":{"description":"Messages before this date are hidden from the user","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"011"},"members":{"description":"List of channel members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"007"},"membership":{"$ref":"#/components/schemas/ChannelMember","description":"Current user membership object","title":"Membership","x-stream-index":"008"},"messages":{"description":"List of channel messages","items":{"$ref":"#/components/schemas/Message"},"title":"Message","type":"array","x-stream-index":"002"},"pending_messages":{"description":"Pending messages that this user has sent","items":{"$ref":"#/components/schemas/PendingMessage"},"title":"Pending messages","type":"array","x-stream-index":"012"},"pinned_messages":{"description":"List of pinned messages in the channel","items":{"$ref":"#/components/schemas/Message"},"title":"Pinned messages","type":"array","x-stream-docs-page-id":"pinned_messages","x-stream-index":"003"},"read":{"description":"List of read states","items":{"$ref":"#/components/schemas/Read"},"title":"Read","type":"array","x-stream-index":"006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"009"},"watcher_count":{"description":"Number of channel watchers","format":"int32","title":"Watcher count","type":"integer","x-stream-index":"004"},"watchers":{"description":"List of user who is watching the channel","items":{"$ref":"#/components/schemas/UserObject"},"title":"Watchers","type":"array","x-stream-index":"005"}},"required":["messages","pinned_messages","members","threads"],"type":"object"},"ChannelTypeConfig":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"003.002.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"003.002.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.002.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"003.002.024"},"blocklist":{"type":"string","x-stream-index":"003.002.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.002.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"003.002.022"},"commands":{"description":"List of commands that channel supports","items":{"$ref":"#/components/schemas/Command"},"title":"Commands","type":"array","x-stream-index":"003.003"},"connect_events":{"type":"boolean","x-stream-index":"003.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.001.003"},"custom_events":{"type":"boolean","x-stream-index":"003.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"mark_messages_pending":{"type":"boolean","x-stream-index":"003.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"003.002.017"},"message_retention":{"type":"string","x-stream-index":"003.002.016"},"mutes":{"type":"boolean","x-stream-index":"003.002.009"},"name":{"type":"string","x-stream-index":"003.002.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"001"},"push_notifications":{"type":"boolean","x-stream-index":"003.002.013"},"quotes":{"type":"boolean","x-stream-index":"003.002.008"},"reactions":{"type":"boolean","x-stream-index":"003.002.006"},"read_events":{"type":"boolean","x-stream-index":"003.002.003"},"reminders":{"type":"boolean","x-stream-index":"003.002.014"},"replies":{"type":"boolean","x-stream-index":"003.002.007"},"search":{"type":"boolean","x-stream-index":"003.002.005"},"typing_events":{"type":"boolean","x-stream-index":"003.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"003.001.004"},"uploads":{"type":"boolean","x-stream-index":"003.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"003.002.011"}},"required":["permissions","grants","created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelsResponse":{"nullable":true,"properties":{"channels":{"description":"List of channels","items":{"$ref":"#/components/schemas/ChannelStateResponseFields"},"title":"Channels","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channels","duration"],"title":"Channels list","type":"object"},"CheckPushRequest":{"nullable":true,"properties":{"apn_template":{"description":"Push message template for APN","title":"APN template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"002"},"firebase_data_template":{"description":"Push message data template for Firebase","title":"Firebase data template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"004"},"firebase_template":{"description":"Push message template for Firebase","title":"Firebase template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"003"},"message_id":{"description":"Message ID to send push notification for","title":"Message ID","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of push provider","title":"Name of push provider","type":"string","x-stream-index":"007"},"push_provider_type":{"description":"Push provider type","enum":["firebase","apn","huawei","xiaomi"],"title":"Type of push provider","type":"string","x-stream-index":"006"},"skip_devices":{"description":"Don't require existing devices to render templates","title":"Skip devices","type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"008.002"},"user_id":{"type":"string","x-stream-index":"008.001"}},"type":"object"},"CheckPushResponse":{"nullable":true,"properties":{"device_errors":{"additionalProperties":{"$ref":"#/components/schemas/DeviceErrorInfo"},"description":"Object with device errors","title":"Device errors","type":"object","x-stream-index":"001","x-stream-map":{"key":"device_id"}},"duration":{"type":"string","x-stream-index":"007.001"},"general_errors":{"description":"List of general errors","items":{"type":"string"},"title":"General errors","type":"array","x-stream-index":"002"},"rendered_apn_template":{"title":"Rendered APN template","type":"string","x-stream-index":"004"},"rendered_firebase_template":{"title":"Rendered Firebase template","type":"string","x-stream-index":"005"},"rendered_message":{"additionalProperties":{"type":"string"},"title":"Rendered message","type":"object","x-stream-index":"006"},"skip_devices":{"description":"Don't require existing devices to render templates","title":"Skip devices","type":"boolean","x-stream-index":"003"}},"required":["duration"],"type":"object"},"CheckSNSRequest":{"nullable":true,"properties":{"sns_key":{"description":"AWS SNS access key","title":"SNS key","type":"string","x-stream-index":"002"},"sns_secret":{"description":"AWS SNS key secret","title":"SNS secret","type":"string","x-stream-index":"003"},"sns_topic_arn":{"description":"AWS SNS topic ARN","title":"SNS Topic ARN","type":"string","x-stream-index":"001"}},"type":"object"},"CheckSNSResponse":{"nullable":true,"properties":{"data":{"description":"Error data","title":"ReadOnlyData","type":"object","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"description":"Error text","title":"Error","type":"string","x-stream-index":"002"},"status":{"description":"Validation result","enum":["ok","error"],"title":"Status","type":"string","x-stream-index":"001"}},"required":["status","duration"],"type":"object"},"CheckSQSRequest":{"nullable":true,"properties":{"sqs_key":{"description":"AWS SQS access key","title":"SQS key","type":"string","x-stream-index":"002"},"sqs_secret":{"description":"AWS SQS key secret","title":"SQS secret","type":"string","x-stream-index":"003"},"sqs_url":{"description":"AWS SQS endpoint URL","title":"SQS URL","type":"string","x-stream-index":"001"}},"type":"object"},"CheckSQSResponse":{"nullable":true,"properties":{"data":{"description":"Error data","title":"ReadOnlyData","type":"object","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"description":"Error text","title":"Error","type":"string","x-stream-index":"002"},"status":{"description":"Validation result","enum":["ok","error"],"title":"Status","type":"string","x-stream-index":"001"}},"required":["status","duration"],"type":"object"},"Command":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","title":"Arguments","type":"string","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"001"},"description":{"description":"Description, shown in commands auto-completion","title":"Description","type":"string","x-stream-index":"005"},"name":{"description":"Unique command name","title":"Name","type":"string","x-stream-index":"004"},"set":{"description":"Set name used for grouping commands","title":"Set","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"002"}},"required":["name","description","args","set"],"title":"Command","type":"object"},"CommitMessageRequest":{"nullable":true,"type":"object"},"Config":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConfigRequest":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConnectRequest":{"properties":{"device":{"$ref":"#/components/schemas/DeviceFields","x-stream-index":"001.002"},"user_details":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["user_details"],"type":"object"},"CreateBlockListRequest":{"description":"Block list contains restricted words","nullable":true,"properties":{"name":{"description":"Block list name","maxLength":255,"title":"Name","type":"string","x-stream-index":"001"},"type":{"description":"Block list type.","enum":["regex","domain","email","word"],"title":"Type","type":"string","x-stream-index":"003"},"words":{"description":"List of words to block","items":{"type":"string"},"minimum":1,"title":"Words","type":"array","x-stream-index":"002"}},"required":["name","words"],"title":"Block list","type":"object","x-stream-docs-page-id":"block_lists"},"CreateCallRequest":{"nullable":true,"properties":{"id":{"type":"string","x-stream-index":"004"},"options":{"type":"object","x-stream-index":"005"},"type":{"enum":["audio","video"],"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"006.002"},"user_id":{"type":"string","x-stream-index":"006.001"}},"required":["type","id"],"type":"object"},"CreateCallResponse":{"nullable":true,"properties":{"agora_app_id":{"type":"string","x-stream-index":"002.003"},"agora_uid":{"format":"int32","type":"integer","x-stream-index":"002.002"},"call":{"$ref":"#/components/schemas/Call","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"token":{"type":"string","x-stream-index":"002.001"}},"required":["token","duration"],"type":"object"},"CreateChannelTypeRequest":{"nullable":true,"properties":{"automod":{"description":"Enables automatic message moderation","enum":["disabled","simple","AI"],"title":"Auto moderation","type":"string","x-stream-index":"016"},"automod_behavior":{"description":"Sets behavior of automatic moderation","enum":["flag","block"],"title":"Auto moderation behavior","type":"string","x-stream-index":"017"},"blocklist":{"description":"Name of the blocklist to use","title":"Blocklist","type":"string","x-stream-index":"021"},"blocklist_behavior":{"description":"Sets behavior of blocklist","enum":["flag","block","shadow_block"],"title":"Blocklist behavior","type":"string","x-stream-index":"022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptionsRequest"},"type":"array","x-stream-index":"023"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"018"},"connect_events":{"description":"Connect events support","title":"Connect events","type":"boolean","x-stream-index":"004"},"custom_events":{"description":"Enables custom events","title":"Custom events","type":"boolean","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"020"},"mark_messages_pending":{"description":"Marks messages as pending by default","title":"Mark messages pending","type":"boolean","x-stream-index":"013"},"max_message_length":{"description":"Number of maximum message characters","format":"int32","title":"Maximum message length","type":"integer","x-stream-index":"015"},"mutes":{"description":"Enables mutes","title":"Mutes","type":"boolean","x-stream-index":"008"},"name":{"description":"Channel type name","title":"Name","type":"string","x-stream-index":"001"},"permissions":{"description":"List of permissions for the channel type","items":{"$ref":"#/components/schemas/PolicyRequest_1"},"title":"Permissions","type":"array","x-stream-index":"019"},"push_notifications":{"description":"Enables push notifications","title":"Push notifications","type":"boolean","x-stream-index":"012"},"reactions":{"description":"Enables message reactions","title":"Reactions","type":"boolean","x-stream-index":"005"},"read_events":{"description":"Read events support","title":"Read events","type":"boolean","x-stream-index":"003"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"006"},"search":{"description":"Enables message search","title":"Search","type":"boolean","x-stream-index":"007"},"typing_events":{"description":"Typing events support","title":"Typing events","type":"boolean","x-stream-index":"002"},"uploads":{"description":"Enables file uploads","title":"Uploads","type":"boolean","x-stream-index":"009"},"url_enrichment":{"description":"Enables URL enrichment","title":"URL enrichment","type":"boolean","x-stream-index":"010"}},"required":["name","automod"],"type":"object"},"CreateChannelTypeResponse":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.001.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.001.024"},"blocklist":{"type":"string","x-stream-index":"001.001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.001.022"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.001.012"},"duration":{"type":"string","x-stream-index":"004.001"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"003"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.001.017"},"message_retention":{"type":"string","x-stream-index":"001.001.016"},"mutes":{"type":"boolean","x-stream-index":"001.001.009"},"name":{"type":"string","x-stream-index":"001.001.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"002"},"push_notifications":{"type":"boolean","x-stream-index":"001.001.013"},"quotes":{"type":"boolean","x-stream-index":"001.001.008"},"reactions":{"type":"boolean","x-stream-index":"001.001.006"},"read_events":{"type":"boolean","x-stream-index":"001.001.003"},"reminders":{"type":"boolean","x-stream-index":"001.001.014"},"replies":{"type":"boolean","x-stream-index":"001.001.007"},"search":{"type":"boolean","x-stream-index":"001.001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.002.004"},"uploads":{"type":"boolean","x-stream-index":"001.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands","permissions","grants","duration"],"type":"object"},"CreateCommandRequest":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","maxLength":255,"title":"Arguments","type":"string","x-stream-index":"003"},"description":{"description":"Description, shown in commands auto-completion","maxLength":255,"title":"Description","type":"string","x-stream-index":"002"},"name":{"description":"Unique command name","maxLength":255,"minLength":1,"title":"Name","type":"string","x-stream-index":"001"},"set":{"description":"Set name used for grouping commands","maxLength":255,"title":"Set","type":"string","x-stream-index":"004"}},"required":["name","description"],"title":"Command","type":"object"},"CreateCommandResponse":{"nullable":true,"properties":{"command":{"$ref":"#/components/schemas/Command","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreateImportRequest":{"nullable":true,"properties":{"mode":{"enum":["insert","upsert"],"type":"string","x-stream-index":"002"},"path":{"type":"string","x-stream-index":"001"}},"required":["path"],"type":"object"},"CreateImportResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_task":{"$ref":"#/components/schemas/ImportTask","x-stream-index":"001"}},"required":["duration"],"type":"object"},"CreateImportURLRequest":{"nullable":true,"properties":{"filename":{"type":"string","x-stream-index":"001"}},"type":"object"},"CreateImportURLResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"path":{"type":"string","x-stream-index":"001"},"upload_url":{"type":"string","x-stream-index":"002"}},"required":["path","upload_url","duration"],"type":"object"},"CreateRoleRequest":{"nullable":true,"properties":{"name":{"description":"Role name","maxLength":64,"title":"Name","type":"string","x-stream-index":"001"}},"required":["name"],"type":"object"},"CreateRoleResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"role":{"$ref":"#/components/schemas/Role","x-stream-index":"002"}},"required":["duration","role"],"type":"object"},"DataDogInfo":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"required":["api_key","site","enabled"],"type":"object"},"DataDogInfoRequest":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"type":"object"},"DeactivateUserRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who deactivated the user","title":"Created by ID","type":"string","x-stream-index":"003"},"mark_messages_deleted":{"description":"Makes messages appear to be deleted","title":"Mark messages deleted","type":"boolean","x-stream-index":"002"},"user_id":{"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"DeactivateUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["duration"],"type":"object"},"DeactivateUsersRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who deactivated the users","title":"Created by ID","type":"string","x-stream-index":"003"},"mark_messages_deleted":{"description":"Makes messages appear to be deleted","title":"Mark messages deleted","type":"boolean","x-stream-index":"002"},"user_ids":{"description":"User IDs to deactivate","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"DeactivateUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"DeleteChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteChannelsRequest":{"nullable":true,"properties":{"cids":{"description":"All channels that should be deleted","items":{"type":"string"},"maximum":100,"minimum":1,"title":"Channels CID","type":"array","x-stream-index":"001"},"hard_delete":{"description":"Specify if channels and all ressources should be hard deleted","title":"Hard delete","type":"boolean","x-stream-index":"002"}},"type":"object"},"DeleteChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"result":{"additionalProperties":{"$ref":"#/components/schemas/DeleteChannelsResult"},"type":"object","x-stream-index":"001"},"task_id":{"type":"string","x-stream-index":"002"}},"required":["duration"],"type":"object"},"DeleteChannelsResult":{"nullable":true,"properties":{"error":{"type":"string","x-stream-index":"003"},"status":{"type":"string","x-stream-index":"002"}},"required":["status"],"type":"object"},"DeleteCommandResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001"}},"required":["name","duration"],"type":"object"},"DeleteUsersRequest":{"nullable":true,"properties":{"calls":{"enum":["soft","hard"],"type":"string","x-stream-index":"001.002.004"},"conversations":{"description":"Conversation channels delete mode.\nConversation channel is any channel which only has two members one of which is the user being deleted.\n\n* null or empty string - doesn't delete any conversation channels\n* soft - marks all conversation channels as deleted (same effect as Delete Channels with 'hard' option disabled)\n* hard - deletes channel and all its data completely including messages (same effect as Delete Channels with 'hard' option enabled)\n","enum":["soft","hard"],"title":"Delete Conversations","type":"string","x-stream-index":"001.002.003"},"messages":{"description":"Message delete mode.\n\n* null or empty string - doesn't delete user messages\n* soft - marks all user messages as deleted without removing any related message data\n* pruning - marks all user messages as deleted, nullifies message information and removes some message data such as reactions and flags\n* hard - deletes messages completely with all related information\n","enum":["soft","pruning","hard"],"title":"Delete Messages","type":"string","x-stream-index":"001.002.002"},"new_call_owner_id":{"type":"string","x-stream-index":"001.002.006"},"new_channel_owner_id":{"type":"string","x-stream-index":"001.002.005"},"user":{"description":"User delete mode.\n\n* soft - marks user as deleted and retains all user data\n* pruning - marks user as deleted and nullifies user information\n* hard - deletes user completely. Requires 'hard' option for messages and conversations as well\n","enum":["soft","pruning","hard"],"title":"Delete User","type":"string","x-stream-index":"001.002.001"},"user_ids":{"description":"IDs of users to delete","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001.001"}},"required":["user_ids"],"type":"object"},"DeleteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"Device":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"disabled":{"type":"boolean","x-stream-index":"002.003"},"disabled_reason":{"type":"string","x-stream-index":"002.004"},"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"002.001.004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"002.001.001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"002.001.003"},"user_id":{"type":"string","x-stream-index":"004"},"voip":{"type":"boolean","x-stream-index":"002.001.005"}},"required":["push_provider","id","created_at","user_id"],"type":"object"},"DeviceErrorInfo":{"properties":{"error_message":{"type":"string","x-stream-index":"003"},"provider":{"type":"string","x-stream-index":"001"},"provider_name":{"type":"string","x-stream-index":"002"}},"required":["provider","provider_name","error_message"],"type":"object"},"DeviceFields":{"properties":{"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"003"},"voip":{"type":"boolean","x-stream-index":"005"}},"required":["push_provider","id"],"type":"object"},"ErrorResult":{"properties":{"stacktrace":{"type":"string","x-stream-index":"003"},"type":{"type":"string","x-stream-index":"001"},"version":{"type":"string","x-stream-index":"004"}},"required":["type","description"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventRequest":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["type"],"type":"object"},"EventResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/WSEvent","x-stream-index":"001"}},"required":["event","duration"],"type":"object"},"ExportChannelsRequest":{"nullable":true,"properties":{"channels":{"description":"Export options for channels","items":{"$ref":"#/components/schemas/ChannelExportRequest"},"maximum":25,"minimum":1,"title":"Channels","type":"array","x-stream-index":"002.001"},"clear_deleted_message_text":{"description":"Set if deleted message text should be cleared","title":"Clear deleted message text","type":"boolean","x-stream-index":"002.002"},"export_users":{"type":"boolean","x-stream-index":"002.004"},"include_truncated_messages":{"description":"Set if you want to include truncated messages","title":"Include truncated messages","type":"boolean","x-stream-index":"002.003"},"version":{"type":"string","x-stream-index":"001"}},"type":"object"},"ExportChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"ExportChannelsResult":{"properties":{"path":{"description":"S3 path of result","title":"PathPrefix","type":"string","x-stream-index":"002"},"s3_bucket_name":{"description":"S3 bucket name result","title":"S3 bucket name","type":"string","x-stream-index":"003"},"url":{"description":"URL of result","title":"URL","type":"string","x-stream-index":"001"}},"required":["url"],"type":"object"},"ExportUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["duration"],"type":"object"},"ExportUsersRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":25,"minimum":1,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"ExportUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"Field":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"required":["title","value","short"],"type":"object"},"FieldRequest":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"type":"object"},"FileDeleteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"FileUploadConfig":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"required":["allowed_file_extensions","blocked_file_extensions","allowed_mime_types","blocked_mime_types","size_limit"],"type":"object"},"FileUploadConfigRequest":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"type":"object"},"FileUploadRequest":{"nullable":true,"properties":{"file":{"description":"file field","title":"File","type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","description":"user for the request **server side only**","title":"User","x-stream-index":"003"}},"type":"object"},"FileUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"003"}},"required":["duration"],"type":"object"},"FirebaseConfigFields":{"properties":{"apn_template":{"type":"string","x-stream-index":"004"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"003"},"enabled":{"type":"boolean","x-stream-index":"001"},"notification_template":{"type":"string","x-stream-index":"002"},"server_key":{"type":"string","x-stream-index":"005"}},"required":["enabled","notification_template","data_template","apn_template"],"type":"object"},"FirebaseConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"001"},"apn_template":{"type":"string","x-stream-index":"005"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"004"},"notification_template":{"type":"string","x-stream-index":"003"},"server_key":{"type":"string","x-stream-index":"002"}},"type":"object"},"Flag":{"description":"Contains information about flagged user or message","properties":{"approved_at":{"description":"Date of the approval","format":"date-time","title":"Approved at","type":"string","x-stream-index":"015"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"created_by_automod":{"type":"boolean","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"022"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"021"},"reason":{"type":"string","x-stream-index":"020"},"rejected_at":{"description":"Date of the rejection","format":"date-time","title":"Rejected at","type":"string","x-stream-index":"016"},"reviewed_at":{"description":"Date of the review","format":"date-time","title":"Reviewed at","type":"string","x-stream-index":"013"},"target_message":{"$ref":"#/components/schemas/Message","x-stream-index":"008"},"target_message_id":{"description":"ID of flagged message","title":"Target Message ID","type":"string","x-stream-index":"007"},"target_user":{"$ref":"#/components/schemas/UserObject","description":"Flagged user","title":"User","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","description":"User who flagged a message or a user","title":"User","x-stream-index":"006"}},"required":["created_by_automod","created_at","updated_at"],"title":"Flag","type":"object"},"FlagDetails":{"properties":{"Extra":{"type":"object","writeOnly":true,"x-stream-index":"002"},"automod":{"$ref":"#/components/schemas/AutomodDetails","x-stream-index":"001"},"original_text":{"type":"string","x-stream-index":"003"}},"required":["Extra","original_text"],"type":"object"},"FlagFeedback":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"labels":{"items":{"$ref":"#/components/schemas/Label"},"type":"array","x-stream-index":"006"},"message_id":{"type":"string","x-stream-index":"004"}},"required":["message_id","created_at","labels"],"type":"object"},"FlagMessageDetails":{"properties":{"pin_changed":{"type":"boolean","x-stream-index":"002"},"should_enrich":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"004"},"updated_by_id":{"type":"string","x-stream-index":"001"}},"type":"object"},"FlagRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"004"},"reason":{"maxLength":255,"type":"string","x-stream-index":"003"},"target_message_id":{"description":"ID of the message when reporting a message","title":"Target Message ID","type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"}},"type":"object"},"FlagResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flag":{"$ref":"#/components/schemas/Flag","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GeofenceResponse":{"nullable":true,"properties":{"country_codes":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"}},"required":["name"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GetApplicationResponse":{"nullable":true,"properties":{"app":{"$ref":"#/components/schemas/App","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["app","duration"],"type":"object"},"GetBlockListResponse":{"nullable":true,"properties":{"blocklist":{"$ref":"#/components/schemas/BlockList","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"GetCallTokenRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"GetCallTokenResponse":{"nullable":true,"properties":{"agora_app_id":{"type":"string","x-stream-index":"001.003"},"agora_uid":{"format":"int32","type":"integer","x-stream-index":"001.002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"token":{"type":"string","x-stream-index":"001.001"}},"required":["token","duration"],"type":"object"},"GetCommandResponse":{"nullable":true,"properties":{"args":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.001"},"description":{"type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001.004"},"set":{"type":"string","x-stream-index":"001.007"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.002"}},"required":["name","description","args","set","duration"],"type":"object"},"GetCustomPermissionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"permission":{"$ref":"#/components/schemas/Permission","x-stream-index":"001"}},"required":["permission","duration"],"type":"object"},"GetExportChannelsStatusResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"001.007.001"},"error":{"$ref":"#/components/schemas/ErrorResult","description":"Contains task error in case of failure","title":"Error","x-stream-index":"003"},"result":{"$ref":"#/components/schemas/ExportChannelsResult","description":"Contains task result in case of success","title":"Result","x-stream-index":"002"},"status":{"type":"string","x-stream-index":"001.002"},"task_id":{"type":"string","x-stream-index":"001.001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.004"}},"required":["task_id","status","created_at","updated_at","duration"],"type":"object"},"GetImportResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_task":{"$ref":"#/components/schemas/ImportTask","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GetManyMessagesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetOGResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.018"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"001.015"},"asset_url":{"description":"URL of detected video or audio","title":"Image URL","type":"string","x-stream-index":"001.017"},"author_icon":{"type":"string","x-stream-index":"001.007"},"author_link":{"description":"og:site","title":"Author Link","type":"string","x-stream-index":"001.006"},"author_name":{"description":"og:site_name","title":"Author Name","type":"string","x-stream-index":"001.005"},"color":{"type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"002.001"},"fallback":{"type":"string","x-stream-index":"001.002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"001.016"},"footer":{"type":"string","x-stream-index":"001.013"},"footer_icon":{"type":"string","x-stream-index":"001.014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"001.019"},"image_url":{"description":"URL of detected image","title":"Image URL","type":"string","x-stream-index":"001.011"},"og_scrape_url":{"description":"extracted url from the text","title":"OG Scrape URL","type":"string","x-stream-index":"001.020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"001.022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"001.021"},"pretext":{"type":"string","x-stream-index":"001.004"},"text":{"description":"og:description","title":"Text","type":"string","x-stream-index":"001.010"},"thumb_url":{"description":"URL of detected thumb image","title":"Image URL","type":"string","x-stream-index":"001.012"},"title":{"description":"og:title","title":"Title","type":"string","x-stream-index":"001.008"},"title_link":{"description":"og:url","title":"Title Link","type":"string","x-stream-index":"001.009"},"type":{"description":"Attachment type, could be empty, image, audio or video","title":"Type","type":"string","x-stream-index":"001.001"}},"required":["Custom","duration"],"title":"Get OG Attachment","type":"object","x-stream-docs-page-id":"og"},"GetRateLimitsResponse":{"nullable":true,"properties":{"android":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the Android platform","title":"Android","type":"object","x-stream-index":"002","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"duration":{"type":"string","x-stream-index":"005.001"},"ios":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the iOS platform","title":"iOS","type":"object","x-stream-index":"003","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"server_side":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the server-side platform","title":"Server-side","type":"object","x-stream-index":"001","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"web":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the web platform","title":"Web","type":"object","x-stream-index":"004","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}}},"required":["duration"],"title":"Get Rate Limits Response","type":"object","x-stream-docs-page-id":"rate_limits"},"GetReactionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"reactions":{"description":"List of reactions","items":{"$ref":"#/components/schemas/Reaction"},"title":"Reactions","type":"array","x-stream-index":"001"}},"required":["reactions","duration"],"type":"object"},"GetRepliesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetTaskResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"$ref":"#/components/schemas/ErrorResult","description":"Error produced by task","title":"Error","x-stream-index":"003"},"result":{"description":"Result produced by task after completion","title":"Result","type":"object","x-stream-index":"002"},"status":{"description":"Current status of task","title":"Status","type":"string","x-stream-index":"001.002"},"task_id":{"description":"ID of task","title":"Task ID","type":"string","x-stream-index":"001.001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.004"}},"required":["task_id","status","created_at","updated_at","duration"],"title":"Get Task Response","type":"object","x-stream-docs-page-id":"tasks"},"GetThreadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadStateResponse","description":"Enriched thread state","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"GuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"GuestResponse":{"nullable":true,"properties":{"access_token":{"description":"Authentication token to use for guest user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","description":"Created user object","title":"User","x-stream-index":"001"}},"required":["access_token","duration"],"type":"object"},"HLSSettings":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks"],"type":"object"},"HMSCall":{"properties":{"room_id":{"type":"string","x-stream-index":"001"},"room_name":{"type":"string","x-stream-index":"002"}},"required":["room_id","room_name"],"type":"object"},"HideChannelRequest":{"nullable":true,"properties":{"clear_history":{"description":"Whether to clear message history of the channel or not","title":"Clear history","type":"boolean","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"type":"object"},"HideChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"HuaweiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"id":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"HuaweiConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"secret":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageData":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"required":["url","width","height","size","frames"],"type":"object"},"ImageDataRequest":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageSize":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"required":["crop","resize","height","width"],"title":"Image size configuration","type":"object"},"ImageSizeRequest":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"title":"Image size configuration","type":"object"},"ImageUploadRequest":{"nullable":true,"properties":{"file":{"type":"string","x-stream-index":"001.002"},"upload_sizes":{"description":"field with JSON-encoded array of image size configurations","items":{"$ref":"#/components/schemas/ImageSizeRequest"},"title":"Upload sizes","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","x-stream-index":"001.003"}},"type":"object"},"ImageUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"001.002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"001.003"},"upload_sizes":{"items":{"$ref":"#/components/schemas/ImageSize"},"type":"array","x-stream-index":"002"}},"required":["duration"],"type":"object"},"Images":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageData","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageData","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageData","x-stream-index":"001"}},"required":["original","fixed_height","fixed_height_still","fixed_height_downsampled","fixed_width","fixed_width_still","fixed_width_downsampled"],"type":"object"},"ImagesRequest":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"001"}},"type":"object"},"ImportTask":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"history":{"items":{"$ref":"#/components/schemas/ImportTaskHistory"},"type":"array","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"003"},"mode":{"type":"string","x-stream-index":"006"},"path":{"type":"string","x-stream-index":"005"},"size":{"format":"int64","type":"integer","x-stream-index":"007"},"state":{"type":"string","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["id","path","mode","state","history","created_at","updated_at"],"type":"object"},"ImportTaskHistory":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"next_state":{"type":"string","x-stream-index":"006"},"prev_state":{"type":"string","x-stream-index":"005"}},"required":["prev_state","next_state","created_at"],"type":"object"},"Label":{"properties":{"harm_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"phrase_list_ids":{"items":{"format":"int32","type":"integer"},"type":"array","x-stream-index":"002"}},"required":["name"],"type":"object"},"LabelThresholds":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LabelThresholdsRequest":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"LimitInfo":{"properties":{"limit":{"description":"The maximum number of calls allowed for the time window","format":"int32","title":"Limit","type":"integer","x-stream-index":"001"},"remaining":{"description":"The number of remaining calls in the current window","format":"int64","title":"Remaining","type":"integer","x-stream-index":"002"},"reset":{"description":"The Unix timestamp of the next window","format":"int64","title":"Reset","type":"integer","x-stream-index":"003"}},"required":["limit","remaining","reset"],"title":"Rate Limit info","type":"object","x-stream-docs-page-id":"rate_limits"},"ListBlockListResponse":{"nullable":true,"properties":{"blocklists":{"items":{"$ref":"#/components/schemas/BlockList"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["blocklists","duration"],"type":"object"},"ListChannelTypesResponse":{"nullable":true,"properties":{"channel_types":{"additionalProperties":{"$ref":"#/components/schemas/ChannelTypeConfig"},"description":"Object with all channel types","title":"Channel types","type":"object","x-stream-index":"001","x-stream-map":{"key":"channel_type","title":"Channel type","description":"Channel type config object"}},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channel_types","duration"],"type":"object"},"ListCommandsResponse":{"nullable":true,"properties":{"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["commands","duration"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListImportsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_tasks":{"items":{"$ref":"#/components/schemas/ImportTask"},"type":"array","x-stream-index":"001"}},"required":["import_tasks","duration"],"type":"object"},"ListPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"permissions":{"items":{"$ref":"#/components/schemas/Permission"},"type":"array","x-stream-index":"001"}},"required":["permissions","duration"],"type":"object"},"ListPushProvidersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"push_providers":{"items":{"$ref":"#/components/schemas/PushProviderResponse"},"type":"array","x-stream-index":"001"}},"required":["push_providers","duration"],"type":"object"},"ListRolesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"roles":{"items":{"$ref":"#/components/schemas/Role"},"type":"array","x-stream-index":"001"}},"required":["roles","duration"],"type":"object"},"MarkChannelsReadRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"MarkReadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message that is considered last read by client","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Optional Thread ID to specifically mark a given thread as read","title":"Thread ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"type":"object"},"MarkReadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/MessageReadEvent","description":"Mark read event","title":"Event","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MarkUnreadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message from where the channel is marked unread","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Mark a thread unread, specify both the thread and message id","title":"Thread ID","type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["message_id","thread_id"],"type":"object"},"MembersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"members":{"description":"List of found members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"001"}},"required":["members","duration"],"type":"object"},"Message":{"description":"Represents any chat message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"031"},"attachments":{"description":"Array of message attachments","items":{"$ref":"#/components/schemas/Attachment"},"title":"Message attachments","type":"array","x-stream-docs-page-id":"message_format#attachment-format","x-stream-index":"011"},"before_message_send_failed":{"description":"Whether `before_message_send webhook` failed or not. Field is only accessible in push webhook","title":"Before Message Send Failed","type":"boolean","x-stream-docs-page-id":"before_message_send_webhook","x-stream-index":"043"},"cid":{"description":"Channel unique identifier in \u003ctype\u003e:\u003cid\u003e format","title":"Channel CID","type":"string","x-stream-index":"026"},"command":{"description":"Contains provided slash command","title":"Command","type":"string","x-stream-docs-page-id":"custom_commands_webhook","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"028"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"021"},"html":{"description":"Contains HTML markup of the message. Can only be set when using server-side API","title":"HTML content","type":"string","x-stream-index":"007"},"i18n":{"additionalProperties":{"type":"string"},"description":"Object with translations. Key `language` contains the original language key. Other keys contain translations","title":"Internationalization info","type":"object","x-stream-docs-page-id":"translation","x-stream-index":"041"},"id":{"description":"Message ID is unique string identifier of the message","title":"ID","type":"string","x-stream-index":"002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Contains image moderation information","title":"Image moderation labels","type":"object","x-stream-index":"037"},"latest_reactions":{"description":"List of 10 latest reactions to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Latest reactions","type":"array","x-stream-index":"012"},"mentioned_users":{"description":"List of mentioned users","items":{"$ref":"#/components/schemas/UserObject"},"title":"Mentioned Users","type":"array","x-stream-index":"040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"049"},"mml":{"description":"Should be empty if `text` is provided. Can only be set when using server-side API","title":"Messaging Markup Language","type":"string","x-stream-docs-page-id":"mml_overview","x-stream-index":"005"},"own_reactions":{"description":"List of 10 latest reactions of authenticated user to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Own reactions","type":"array","x-stream-index":"013"},"parent_id":{"description":"ID of parent message (thread)","title":"Parent message ID","type":"string","x-stream-docs-page-id":"threads","x-stream-index":"017"},"pin_expires":{"description":"Date when pinned message expires","format":"date-time","title":"Pin expiration date","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"048"},"pinned":{"description":"Whether message is pinned or not","title":"Pinned","type":"boolean","x-stream-docs-page-id":"pinned_messages","x-stream-index":"044"},"pinned_at":{"description":"Date when message got pinned","format":"date-time","title":"Pinned at","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","description":"Contains user who pinned the message","title":"Pinned by","x-stream-docs-page-id":"pinned_messages","x-stream-index":"047"},"quoted_message":{"$ref":"#/components/schemas/Message","description":"Contains quoted message","title":"Quoted message","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"023"},"quoted_message_id":{"title":"ID of quoted message","type":"string","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing number of reactions of each type. Key: reaction type (string), value: number of reactions (int)","title":"Reaction counts","type":"object","x-stream-index":"014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing scores of reactions of each type. Key: reaction type (string), value: total score of reactions (int)","title":"Reaction scores","type":"object","x-stream-index":"015"},"reply_count":{"description":"Number of replies to this message","format":"int32","title":"Reply count","type":"integer","x-stream-index":"020"},"shadowed":{"description":"Whether the message was shadowed or not","title":"Shadowed","type":"boolean","x-stream-docs-page-id":"moderation#shadow-ban","x-stream-index":"033"},"show_in_channel":{"description":"Whether thread reply should be shown in the channel as well","title":"Show in channel","type":"boolean","x-stream-docs-page-id":"threads","x-stream-index":"019"},"silent":{"description":"Whether message is silent or not","title":"Silent","type":"boolean","x-stream-index":"042"},"text":{"description":"Text of the message. Should be empty if `mml` is provided","title":"Text","type":"string","x-stream-index":"004"},"thread_participants":{"description":"List of users who participate in thread","items":{"$ref":"#/components/schemas/UserObject"},"title":"Thread participants","type":"array","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"025"},"type":{"description":"Contains type of the message","enum":["regular","ephemeral","error","reply","system","deleted"],"title":"Message Type","type":"string","x-stream-docs-page-id":"message_format#message-types","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"029"},"user":{"$ref":"#/components/schemas/UserObject","description":"Sender of the message. Required when using server-side API","title":"User object","x-stream-index":"010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned"],"title":"Message","type":"object","x-stream-docs-page-id":"send_message"},"MessageActionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"form_data":{"additionalProperties":{"type":"string"},"description":"ReadOnlyData to execute command with","title":"Form data","type":"object","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["form_data"],"type":"object"},"MessageChangeSet":{"properties":{"attachments":{"type":"boolean","x-stream-index":"005"},"custom":{"type":"boolean","x-stream-index":"001"},"html":{"type":"boolean","x-stream-index":"004"},"mentioned_user_ids":{"type":"boolean","x-stream-index":"006"},"mml":{"type":"boolean","x-stream-index":"003"},"pin":{"type":"boolean","x-stream-index":"009"},"quoted_message_id":{"type":"boolean","x-stream-index":"007"},"silent":{"type":"boolean","x-stream-index":"008"},"text":{"type":"boolean","x-stream-index":"002"}},"required":["custom","text","mml","html","attachments","mentioned_user_ids","quoted_message_id","silent","pin"],"type":"object"},"MessageFlag":{"nullable":true,"properties":{"approved_at":{"format":"date-time","type":"string","x-stream-index":"013"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by_automod":{"type":"boolean","x-stream-index":"001"},"custom":{"type":"object","x-stream-index":"008"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"006"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"005"},"moderation_feedback":{"$ref":"#/components/schemas/FlagFeedback","x-stream-index":"003"},"moderation_result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"002"},"reason":{"type":"string","x-stream-index":"007"},"rejected_at":{"format":"date-time","type":"string","x-stream-index":"014"},"reviewed_at":{"format":"date-time","type":"string","x-stream-index":"011"},"reviewed_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004"}},"required":["created_by_automod","created_at","updated_at"],"type":"object"},"MessageModerationResult":{"properties":{"action":{"type":"string","x-stream-index":"004"},"ai_moderation_response":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"009"},"blocked_word":{"type":"string","x-stream-index":"006"},"blocklist_name":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"012"},"message_id":{"type":"string","x-stream-index":"003"},"moderated_by":{"type":"string","x-stream-index":"005"},"moderation_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"013"},"user_bad_karma":{"type":"boolean","x-stream-index":"011"},"user_karma":{"format":"float","type":"number","x-stream-index":"010"}},"required":["message_id","action","user_karma","user_bad_karma","created_at","updated_at"],"type":"object"},"MessagePaginationParamsRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"008"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"007"},"created_at_around":{"format":"date-time","type":"string","x-stream-index":"012"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"010"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"009"},"id_around":{"type":"string","x-stream-index":"011"},"id_gt":{"type":"string","x-stream-index":"004"},"id_gte":{"type":"string","x-stream-index":"003"},"id_lt":{"type":"string","x-stream-index":"006"},"id_lte":{"type":"string","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"MessageReadEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"last_read_message_id":{"type":"string","x-stream-index":"006"},"team":{"type":"string","x-stream-index":"004.001"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"MessageReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageRequest":{"properties":{"attachments":{"items":{"$ref":"#/components/schemas/AttachmentRequest"},"maximum":30,"type":"array","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"007"},"html":{"type":"string","x-stream-index":"010"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"mentioned_users":{"items":{"type":"string"},"maximum":25,"type":"array","x-stream-index":"008"},"mml":{"type":"string","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"005"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"015"},"pinned":{"type":"boolean","x-stream-index":"013"},"pinned_at":{"format":"date-time","nullable":true,"type":"string","x-stream-index":"014"},"quoted_message_id":{"type":"string","x-stream-index":"009"},"show_in_channel":{"type":"boolean","x-stream-index":"006"},"silent":{"type":"boolean","x-stream-index":"012"},"text":{"type":"string","x-stream-index":"002"},"type":{"enum":["''regular","system"],"type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"020.002"},"user_id":{"type":"string","x-stream-index":"020.001"}},"required":["attachments"],"type":"object"},"MessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MessageUpdate":{"properties":{"change_set":{"$ref":"#/components/schemas/MessageChangeSet","x-stream-index":"002"},"old_text":{"type":"string","x-stream-index":"001"}},"type":"object"},"MessageWithPendingMetadataResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"description":"Metadata attached to a message while it is pending","title":"Pending message metadata","type":"object","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ModerationResponse":{"properties":{"action":{"type":"string","x-stream-index":"004"},"explicit":{"format":"float","type":"number","x-stream-index":"002"},"spam":{"format":"float","type":"number","x-stream-index":"003"},"toxic":{"format":"float","type":"number","x-stream-index":"001"}},"required":["toxic","explicit","spam","action","automod_response"],"type":"object"},"MuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["channel_cids"],"type":"object"},"MuteChannelResponse":{"nullable":true,"properties":{"channel_mute":{"$ref":"#/components/schemas/ChannelMute","description":"Object with channel mute (if one channel was muted)","title":"Channel mute","x-stream-index":"001"},"channel_mutes":{"description":"Object with mutes (if multiple channels were muted)","items":{"$ref":"#/components/schemas/ChannelMute"},"title":"Channel mutes","type":"array","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"004.001"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["target_ids"],"type":"object"},"MuteUserResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"mute":{"$ref":"#/components/schemas/UserMute","description":"Object with user mute (if one user was muted)","title":"Mute","x-stream-index":"001"},"mutes":{"description":"Object with mutes (if multiple users were muted)","items":{"$ref":"#/components/schemas/UserMute"},"title":"Mutes","type":"array","x-stream-index":"002"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"OnlyUserIDRequest":{"properties":{"id":{"type":"string","x-stream-index":"001"}},"required":["id"],"type":"object"},"OwnUser":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"banned":{"type":"boolean","x-stream-index":"014"},"channel_mutes":{"items":{"$ref":"#/components/schemas/ChannelMute"},"type":"array","x-stream-index":"026"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"deactivated_at":{"format":"date-time","type":"string","x-stream-index":"012"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"type":"array","x-stream-index":"024"},"id":{"type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"type":"string","x-stream-index":"031"},"last_active":{"format":"date-time","type":"string","x-stream-index":"010"},"latest_hidden_channels":{"items":{"type":"string"},"type":"array","x-stream-index":"033"},"mutes":{"items":{"$ref":"#/components/schemas/UserMute"},"type":"array","x-stream-index":"025"},"online":{"type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"role":{"type":"string","x-stream-index":"004"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"032"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"028"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"029"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"027"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"030"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","created_at","updated_at","banned","online","devices","mutes","channel_mutes","unread_count","total_unread_count","unread_channels","unread_threads","language"],"type":"object"},"PaginationParamsRequest":{"properties":{"id_gt":{"format":"int32","type":"integer","x-stream-index":"004"},"id_gte":{"format":"int32","type":"integer","x-stream-index":"003"},"id_lt":{"format":"int32","type":"integer","x-stream-index":"006"},"id_lte":{"format":"int32","type":"integer","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"PendingMessage":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/Channel","x-stream-index":"007"},"message":{"$ref":"#/components/schemas/Message","description":"The message","title":"Message","x-stream-index":"009"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional data attached to the pending message. This data is discarded once the pending message is committed.","title":"Metadata","type":"object","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"type":"object"},"Permission":{"properties":{"action":{"description":"Action name this permission is for (e.g. SendMessage)","title":"Action","type":"string","x-stream-index":"004"},"condition":{"description":"MongoDB style condition which decides whether or not the permission is granted","title":"Condition","type":"object","x-stream-index":"007"},"custom":{"description":"Whether this is a custom permission or built-in","title":"Custom","type":"boolean","x-stream-index":"009"},"description":{"description":"Description of the permission","title":"Description","type":"string","x-stream-index":"003"},"id":{"description":"Unique permission ID","title":"ID","type":"string","x-stream-index":"001"},"level":{"description":"Level at which permission could be applied (app or channel)","enum":["app","channel"],"title":"Level","type":"string","x-stream-index":"010"},"name":{"description":"Name of the permission","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether this permission applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"same_team":{"description":"Whether this permission applies to teammates (multi-tenancy mode only)","title":"Same team","type":"boolean","x-stream-index":"006"},"tags":{"description":"List of tags of the permission","items":{"type":"string"},"title":"Tags","type":"array","x-stream-index":"011"}},"required":["id","name","description","action","owner","same_team","custom","level","tags"],"type":"object"},"Policy":{"properties":{"action":{"type":"integer","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"name":{"type":"string","x-stream-index":"004"},"owner":{"type":"boolean","x-stream-index":"008"},"priority":{"format":"int32","type":"integer","x-stream-index":"009"},"resources":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"}},"required":["name","resources","roles","action","owner","priority","created_at","updated_at"],"type":"object"},"PolicyRequest":{"properties":{"action":{"enum":["Deny","Allow"],"title":"Action","type":"string","x-stream-index":"001"},"name":{"description":"User-friendly policy name","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether policy applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"priority":{"description":"Policy priority","format":"int32","maximum":999,"minimum":1,"title":"Priority","type":"integer","x-stream-index":"006"},"resources":{"description":"List of resources to apply policy to","items":{"type":"string"},"minimum":1,"title":"Resources","type":"array","x-stream-index":"003"},"roles":{"description":"List of roles to apply policy to","items":{"type":"string"},"title":"Roles","type":"array","x-stream-index":"004"}},"required":["action","name","resources","roles","owner","priority"],"type":"object"},"PolicyRequest_1":{"properties":{"action":{"enum":["Deny","Allow"],"title":"Action","type":"string","x-stream-index":"001"},"name":{"description":"User-friendly policy name","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether policy applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"priority":{"description":"Policy priority","format":"int32","maximum":999,"minimum":1,"title":"Priority","type":"integer","x-stream-index":"006"},"resources":{"description":"List of resources to apply policy to","items":{"type":"string"},"minimum":1,"title":"Resources","type":"array","x-stream-index":"003"},"roles":{"description":"List of roles to apply policy to","items":{"type":"string"},"title":"Roles","type":"array","x-stream-index":"004"}},"required":["name","priority"],"type":"object"},"PushConfigRequest":{"properties":{"offline_only":{"type":"boolean","x-stream-index":"002"},"version":{"enum":["v1","v2"],"type":"string","x-stream-index":"001"}},"type":"object"},"PushNotificationFields":{"properties":{"apn":{"$ref":"#/components/schemas/APNConfigFields","x-stream-index":"002"},"firebase":{"$ref":"#/components/schemas/FirebaseConfigFields","x-stream-index":"003"},"huawei":{"$ref":"#/components/schemas/HuaweiConfigFields","x-stream-index":"004"},"offline_only":{"type":"boolean","x-stream-index":"001.002"},"providers":{"items":{"$ref":"#/components/schemas/PushProvider"},"type":"array","x-stream-index":"006"},"version":{"type":"string","x-stream-index":"001.001"},"xiaomi":{"$ref":"#/components/schemas/XiaomiConfigFields","x-stream-index":"005"}},"required":["version","offline_only","apn","firebase","huawei","xiaomi"],"type":"object"},"PushNotificationSettings":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushNotificationSettingsRequest":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushProvider":{"nullable":true,"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name","type","created_at","updated_at"],"type":"object"},"PushProviderRequest":{"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name"],"type":"object"},"PushProviderResponse":{"properties":{"apn_auth_key":{"type":"string","x-stream-index":"008"},"apn_auth_type":{"type":"string","x-stream-index":"013"},"apn_development":{"type":"boolean","x-stream-index":"014"},"apn_host":{"type":"string","x-stream-index":"015"},"apn_key_id":{"type":"string","x-stream-index":"009"},"apn_p12_cert":{"type":"string","x-stream-index":"010"},"apn_sandbox_certificate":{"type":"boolean","x-stream-index":"016"},"apn_supports_remote_notifications":{"type":"boolean","x-stream-index":"018"},"apn_supports_voip_notifications":{"type":"boolean","x-stream-index":"017"},"apn_team_id":{"type":"string","x-stream-index":"011"},"apn_topic":{"type":"string","x-stream-index":"012"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"006"},"disabled_reason":{"type":"string","x-stream-index":"007"},"firebase_apn_template":{"type":"string","x-stream-index":"023"},"firebase_credentials":{"type":"string","x-stream-index":"020"},"firebase_data_template":{"type":"string","x-stream-index":"021"},"firebase_host":{"type":"string","x-stream-index":"024"},"firebase_notification_template":{"type":"string","x-stream-index":"022"},"firebase_server_key":{"type":"string","x-stream-index":"019"},"huawei_app_id":{"type":"string","x-stream-index":"025"},"huawei_app_secret":{"type":"string","x-stream-index":"026"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"005"},"xiaomi_app_secret":{"type":"string","x-stream-index":"028"},"xiaomi_package_name":{"type":"string","x-stream-index":"027"}},"required":["name","type","created_at","updated_at"],"type":"object"},"QueryBannedUsersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"003.006"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.005"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"003.008"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.007"},"exclude_expired_bans":{"type":"boolean","x-stream-index":"006"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"type":"integer","x-stream-index":"004"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"005"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"required":["filter_conditions"],"type":"object"},"QueryBannedUsersResponse":{"nullable":true,"properties":{"bans":{"items":{"$ref":"#/components/schemas/BanResponse"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["bans","duration"],"type":"object"},"QueryChannelsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"description":"Number of channels to limit","format":"int32","title":"Limit","type":"integer","x-stream-index":"008"},"member_limit":{"description":"Number of members to limit","format":"int32","maximum":100,"minimum":0,"title":"Member limit","type":"integer","x-stream-index":"007"},"message_limit":{"description":"Number of messages to limit","format":"int32","minimum":0,"title":"Message limit","type":"integer","x-stream-index":"006"},"offset":{"description":"Channel pagination offset","format":"int32","title":"Offset","type":"integer","x-stream-index":"009"},"presence":{"title":"Presence","type":"boolean","x-stream-index":"005"},"sort":{"description":"List of sort parameters","items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"state":{"description":"Whether to update channel state or not","title":"State","type":"boolean","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"010.002"},"user_id":{"type":"string","x-stream-index":"010.001"},"watch":{"description":"Whether to start watching found channels or not","title":"Watch","type":"boolean","x-stream-index":"003"}},"title":"Query Channels Request","type":"object","x-stream-docs-page-id":"query_channels"},"QueryMembersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"006.010"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.009"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"006.012"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.011"},"filter_conditions":{"description":"Filter to apply to members","title":"Filter conditions","type":"object","x-stream-index":"004"},"id":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","x-stream-index":"002"},"limit":{"description":"Number of records to return","format":"int32","maximum":300,"minimum":0,"title":"Limit","type":"integer","x-stream-index":"006.003"},"members":{"description":"List of members to search in distinct channels","items":{"$ref":"#/components/schemas/ChannelMember"},"maximum":100,"title":"Members","type":"array","x-stream-index":"003"},"offset":{"description":"Number of records to offset","format":"int32","maximum":10000,"title":"Offset","type":"integer","x-stream-index":"006.004"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"title":"Sort","type":"array","x-stream-index":"005"},"type":{"description":"Channel type to interact with","maxLength":64,"title":"Channel type","type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"},"user_id_gt":{"type":"string","x-stream-index":"006.006"},"user_id_gte":{"type":"string","x-stream-index":"006.005"},"user_id_lt":{"type":"string","x-stream-index":"006.008"},"user_id_lte":{"type":"string","x-stream-index":"006.007"}},"required":["type","filter_conditions"],"type":"object"},"QueryMessageFlagsRequest":{"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"minimum":0,"type":"integer","x-stream-index":"003.003"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"003.004"},"show_deleted_messages":{"type":"boolean","x-stream-index":"002"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"type":"array","x-stream-index":"003.005"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"type":"object"},"QueryMessageFlagsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flags":{"items":{"$ref":"#/components/schemas/MessageFlag"},"type":"array","x-stream-index":"001"}},"required":["flags","duration"],"type":"object"},"QueryThreadsRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"participant_limit":{"description":"Limit the number of participants returned per each thread","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","x-stream-index":"004"},"prev":{"type":"string","x-stream-index":"005.003"},"reply_limit":{"description":"Limit the number of replies returned per each thread","format":"int32","maximum":10,"minimum":0,"title":"Reply limit","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"type":"object"},"QueryThreadsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"threads":{"description":"List of enriched thread states","items":{"$ref":"#/components/schemas/ThreadStateResponse"},"title":"Threads","type":"array","x-stream-index":"001"}},"required":["threads","duration"],"type":"object"},"QueryUsersRequest":{"properties":{"filter_conditions":{"description":"User filters","title":"Filter conditions","type":"object","x-stream-docs-page-id":"query_users","x-stream-index":"001"},"id_gt":{"type":"string","x-stream-index":"005.006"},"id_gte":{"type":"string","x-stream-index":"005.005"},"id_lt":{"type":"string","x-stream-index":"005.008"},"id_lte":{"type":"string","x-stream-index":"005.007"},"include_deactivated_users":{"type":"boolean","x-stream-index":"004"},"limit":{"format":"int32","maximum":100,"minimum":0,"type":"integer","x-stream-index":"005.003"},"offset":{"format":"int32","maximum":1000,"type":"integer","x-stream-index":"005.004"},"presence":{"description":"Request user presence status","title":"Presence","type":"boolean","x-stream-index":"003"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"006.002"},"user_id":{"type":"string","x-stream-index":"006.001"}},"required":["filter_conditions"],"type":"object"},"Reaction":{"description":"Represents user reaction to a message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"008"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["message_id","type","score","created_at","updated_at","Custom"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionRemovalResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionRequest":{"description":"Represents user reaction to a message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["type"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactivateUserRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who's reactivating the user","title":"Created by ID","type":"string","x-stream-index":"004"},"name":{"description":"Set this field to put new name for the user","title":"Name","type":"string","x-stream-index":"003"},"restore_messages":{"description":"Restore previously deleted messages","title":"Restore messages","type":"boolean","x-stream-index":"002"},"user_id":{"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"ReactivateUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ReactivateUsersRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who's reactivating the users","title":"Created by ID","type":"string","x-stream-index":"003"},"restore_messages":{"description":"Restore previously deleted messages","title":"Restore messages","type":"boolean","x-stream-index":"002"},"user_ids":{"description":"User IDs to reactivate","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"ReactivateUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.002.001"},"task_id":{"type":"string","x-stream-index":"001.001"}},"required":["task_id","duration"],"type":"object"},"Read":{"nullable":true,"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"004"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["last_read","unread_messages"],"type":"object"},"RecordSettings":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RestoreUsersRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":100,"minimum":1,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"Role":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"custom":{"description":"Whether this is a custom role or built-in","title":"Custom","type":"boolean","x-stream-index":"002"},"name":{"description":"Unique role name","title":"Name","type":"string","x-stream-index":"001"},"scopes":{"description":"List of scopes where this role is currently present. `.app` means that role is present in app-level grants","items":{"type":"string"},"title":"Scopes","type":"array","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"}},"required":["name","custom","scopes","created_at","updated_at"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"SearchRequest":{"properties":{"filter_conditions":{"description":"Channel filter conditions","maximum":100,"minimum":1,"title":"Channel filter","type":"object","x-stream-docs-page-id":"query_channels","x-stream-index":"002"},"limit":{"description":"Number of messages to return","format":"int32","title":"Limit","type":"integer","x-stream-index":"004"},"message_filter_conditions":{"description":"Message filter conditions","title":"Message filter","type":"object","x-stream-index":"003"},"next":{"description":"Pagination parameter. Cannot be used with non-zero offset.","title":"Next","type":"string","x-stream-index":"007"},"offset":{"description":"Pagination offset. Cannot be used with sort or next.","format":"int32","title":"Offset","type":"integer","x-stream-index":"005"},"query":{"description":"Search phrase","title":"Query","type":"string","x-stream-index":"001"},"sort":{"description":"Sort parameters. Cannot be used with non-zero offset","items":{"$ref":"#/components/schemas/SortParam"},"title":"Sort","type":"array","x-stream-index":"006"}},"required":["filter_conditions"],"type":"object"},"SearchResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"next":{"description":"Value to pass to the next search query in order to paginate","title":"Next","type":"string","x-stream-index":"003"},"previous":{"description":"Value that points to the previous page. Pass as the next value in a search query to paginate backwards","title":"Previous","type":"string","x-stream-index":"004"},"results":{"description":"Search results","items":{"$ref":"#/components/schemas/SearchResult"},"title":"Results","type":"array","x-stream-index":"001"},"results_warning":{"$ref":"#/components/schemas/SearchWarning","description":"Warning about the search results","title":"Results Warning","x-stream-index":"002"}},"required":["results","duration"],"type":"object"},"SearchResult":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/SearchResultMessage","description":"Found message","title":"Message","x-stream-index":"001"}},"type":"object"},"SearchResultMessage":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.031"},"attachments":{"items":{"$ref":"#/components/schemas/Attachment"},"type":"array","x-stream-index":"001.011"},"before_message_send_failed":{"type":"boolean","x-stream-index":"001.043"},"channel":{"$ref":"#/components/schemas/ChannelResponse","description":"Channel object","title":"Channel","x-stream-index":"002"},"cid":{"type":"string","x-stream-index":"001.026"},"command":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.028"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"001.021"},"html":{"type":"string","x-stream-index":"001.007"},"i18n":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"001.041"},"id":{"type":"string","x-stream-index":"001.002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.037"},"latest_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.012"},"mentioned_users":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"001.049"},"mml":{"type":"string","x-stream-index":"001.005"},"own_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.013"},"parent_id":{"type":"string","x-stream-index":"001.017"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"001.048"},"pinned":{"type":"boolean","x-stream-index":"001.044"},"pinned_at":{"format":"date-time","type":"string","x-stream-index":"001.045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.047"},"quoted_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.023"},"quoted_message_id":{"type":"string","x-stream-index":"001.022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.015"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.020"},"shadowed":{"type":"boolean","x-stream-index":"001.033"},"show_in_channel":{"type":"boolean","x-stream-index":"001.019"},"silent":{"type":"boolean","x-stream-index":"001.042"},"text":{"type":"string","x-stream-index":"001.004"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.025"},"type":{"type":"string","x-stream-index":"001.008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.029"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned"],"type":"object"},"SearchWarning":{"properties":{"channel_search_cids":{"description":"Channel CIDs for the searched channels","items":{"type":"string"},"title":"Channel Search CIDs","type":"array","x-stream-index":"004"},"channel_search_count":{"description":"Number of channels searched","format":"int32","title":"Channel Search Count","type":"integer","x-stream-index":"003"},"warning_code":{"description":"Code corresponding to the warning","format":"int32","title":"Warning Code","type":"integer","x-stream-index":"002"},"warning_description":{"description":"Description of the warning","title":"Warning Description","type":"string","x-stream-index":"001"}},"required":["warning_description","warning_code"],"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/EventRequest","x-stream-index":"001"}},"required":["event"],"type":"object"},"SendMessageRequest":{"nullable":true,"properties":{"force_moderation":{"type":"boolean","x-stream-index":"007"},"keep_channel_hidden":{"type":"boolean","x-stream-index":"008"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"pending":{"type":"boolean","x-stream-index":"006"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"005"},"skip_enrich_url":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"SendMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"enforce_unique":{"description":"Whether to replace all existing user reactions","title":"Enforce unique","type":"boolean","x-stream-index":"003"},"reaction":{"$ref":"#/components/schemas/ReactionRequest","x-stream-index":"002"},"skip_push":{"description":"Skips any mobile push notifications","title":"Skip push","type":"boolean","x-stream-index":"004"}},"required":["reaction"],"type":"object"},"SendUserCustomEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/UserCustomEventRequest","x-stream-index":"002"}},"required":["event"],"type":"object"},"ShowChannelRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"ShowChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParam":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"Thread":{"description":"Represents a conversation thread linked to a specific message in a channel.","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"012"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"010"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom"],"title":"Thread","type":"object"},"ThreadParticipant":{"description":"Represents a user that is participating in a thread.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"app_pk":{"format":"int32","readOnly":true,"type":"integer","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"007"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"009"},"left_thread_at":{"description":"Left Thread At is the time when the user left the thread","format":"date-time","title":"Left Thread At","type":"string","x-stream-index":"008"},"thread_id":{"description":"Thead ID is unique string identifier of the thread","title":"ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserObject","description":"User is the user object","title":"User","x-stream-index":"006"},"user_id":{"description":"User ID is unique string identifier of the user","title":"User ID","type":"string","x-stream-index":"005"}},"required":["app_pk","channel_cid","created_at","last_read_at","Custom"],"title":"ThreadParticipant","type":"object"},"ThreadResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"created_by_user_id":{"type":"string","x-stream-index":"005"},"custom":{"type":"object","x-stream-index":"015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"010"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"004"},"parent_message_id":{"type":"string","x-stream-index":"003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"008"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"009"},"title":{"type":"string","x-stream-index":"014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom"],"type":"object"},"ThreadState":{"description":"Represents a conversation thread linked to a specific message in a channel.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"001.004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"001.003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"001.013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"001.008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"001.015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"001.012"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"001.006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"001.005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"001.010"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"001.009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"001.016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"001.014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom","latest_replies"],"title":"Thread","type":"object"},"ThreadStateResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.002"},"channel_cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.006"},"created_by_user_id":{"type":"string","x-stream-index":"001.005"},"custom":{"type":"object","x-stream-index":"001.015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"001.010"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.004"},"parent_message_id":{"type":"string","x-stream-index":"001.003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"001.008"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.009"},"title":{"type":"string","x-stream-index":"001.014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom","latest_replies"],"type":"object"},"Thresholds":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThresholdsRequest":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranslateMessageRequest":{"nullable":true,"properties":{"language":{"description":"Language to translate message to","enum":["af","sq","am","ar","az","bn","bs","bg","zh","zh-TW","hr","cs","da","fa-AF","nl","en","et","fi","fr","fr-CA","ka","de","el","ha","he","hi","hu","id","it","ja","ko","lv","ms","no","fa","ps","pl","pt","ro","ru","sr","sk","sl","so","es","es-MX","sw","sv","tl","ta","th","tr","uk","ur","vi"],"title":"Language","type":"string","x-stream-index":"002"}},"required":["language"],"type":"object"},"TruncateChannelRequest":{"nullable":true,"properties":{"hard_delete":{"description":"Permanently delete channel data (messages, reactions, etc.)","title":"Hard delete","type":"boolean","x-stream-index":"002"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"004"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"005"},"truncated_at":{"description":"Truncate channel data up to `truncated_at`. The system message (if provided) creation time is always greater than `truncated_at`","format":"date-time","title":"Truncated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"type":"object"},"TruncateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"003"}},"required":["duration"],"type":"object"},"UnmuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"001.002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"001.003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"required":["channel_cids"],"type":"object"},"UnmuteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["duration"],"type":"object"},"UnmuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"001.002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"001.003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"required":["target_ids"],"type":"object"},"UnreadCountsBatchRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":100,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"UnreadCountsBatchResponse":{"nullable":true,"properties":{"counts_by_user":{"additionalProperties":{"$ref":"#/components/schemas/UnreadCountsResponse"},"type":"object","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["counts_by_user","duration"],"type":"object"},"UnreadCountsChannel":{"properties":{"channel_id":{"type":"string","x-stream-index":"001"},"last_read":{"format":"date-time","type":"string","x-stream-index":"003"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["channel_id","unread_count","last_read"],"type":"object"},"UnreadCountsChannelType":{"properties":{"channel_count":{"format":"int32","type":"integer","x-stream-index":"002"},"channel_type":{"type":"string","x-stream-index":"001"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"003"}},"required":["channel_type","channel_count","unread_count"],"type":"object"},"UnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"003"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads"],"type":"object"},"UnreadCountsThread":{"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"003"},"parent_message_id":{"type":"string","x-stream-index":"004"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["unread_count","last_read","last_read_message_id","parent_message_id"],"type":"object"},"UpdateAppRequest":{"nullable":true,"properties":{"agora_options":{"$ref":"#/components/schemas/ConfigRequest","x-stream-index":"001.038"},"apn_config":{"$ref":"#/components/schemas/APNConfigRequest","x-stream-index":"001.003"},"async_moderation_config":{"$ref":"#/components/schemas/AsyncModerationConfigurationRequest","x-stream-index":"001.040"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.017"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.016"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.018"},"cdn_expiration_seconds":{"format":"int32","maximum":1209600,"minimum":14400,"type":"integer","x-stream-index":"001.036"},"channel_hide_members_only":{"type":"boolean","x-stream-index":"001.031"},"custom_action_handler_url":{"type":"string","x-stream-index":"001.019"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfoRequest","x-stream-index":"001.041"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.001"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.002"},"enforce_unique_usernames":{"enum":["no","app","team"],"type":"string","x-stream-index":"001.020"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfigRequest","x-stream-index":"001.028"},"firebase_config":{"$ref":"#/components/schemas/FirebaseConfigRequest","x-stream-index":"001.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/ConfigRequest","x-stream-index":"001.039"},"huawei_config":{"$ref":"#/components/schemas/HuaweiConfigRequest","x-stream-index":"001.005"},"image_moderation_block_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.014"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.012"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfigRequest","x-stream-index":"001.027"},"migrate_permissions_to_v2":{"type":"boolean","x-stream-index":"001.033"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.011"},"permission_version":{"enum":["v1","v2"],"type":"string","x-stream-index":"001.009"},"push_config":{"$ref":"#/components/schemas/PushConfigRequest","x-stream-index":"001.007"},"reminders_interval":{"format":"int32","maximum":86400,"minimum":60,"type":"integer","x-stream-index":"001.034"},"reminders_max_members":{"format":"int32","minimum":2,"type":"integer","x-stream-index":"001.035"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.029"},"sns_key":{"type":"string","x-stream-index":"001.025"},"sns_secret":{"type":"string","x-stream-index":"001.026"},"sns_topic_arn":{"type":"string","x-stream-index":"001.024"},"sqs_key":{"type":"string","x-stream-index":"001.022"},"sqs_secret":{"type":"string","x-stream-index":"001.023"},"sqs_url":{"type":"string","x-stream-index":"001.021"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.010"},"video_provider":{"enum":["agora","hms"],"type":"string","x-stream-index":"001.037"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.030"},"webhook_url":{"type":"string","x-stream-index":"001.008"},"xiaomi_config":{"$ref":"#/components/schemas/XiaomiConfigRequest","x-stream-index":"001.006"}},"type":"object"},"UpdateBlockListRequest":{"nullable":true,"properties":{"Name":{"type":"string","writeOnly":true,"x-stream-index":"001"},"words":{"description":"List of words to block","items":{"type":"string"},"minimum":1,"title":"Words","type":"array","x-stream-index":"002"}},"title":"Update block list","type":"object","x-stream-docs-page-id":"update_block_list"},"UpdateChannelPartialRequest":{"nullable":true,"properties":{"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["set","unset"],"type":"object"},"UpdateChannelPartialResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelRequest":{"nullable":true,"properties":{"accept_invite":{"description":"Set to `true` to accept the invite","title":"Accept invite","type":"boolean","x-stream-index":"008"},"add_members":{"description":"List of user IDs to add to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Add members","type":"array","x-stream-index":"001"},"add_moderators":{"description":"List of user IDs to make channel moderators","items":{"type":"string"},"maximum":100,"title":"Add moderators","type":"array","x-stream-index":"003"},"assign_roles":{"description":"List of channel member role assignments. If any specified user is not part of the channel, the request will fail","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Assign roles","type":"array","x-stream-index":"006"},"cooldown":{"description":"Sets cool down period for the channel in seconds","format":"int32","maximum":120,"minimum":0,"title":"Cool down","type":"integer","x-stream-index":"007"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"013.001"},"demote_moderators":{"description":"List of user IDs to take away moderators status from","items":{"type":"string"},"maximum":100,"title":"Demote moderators","type":"array","x-stream-index":"004"},"hide_history":{"description":"Set to `true` to hide channel's history when adding new members","title":"Hide history","type":"boolean","x-stream-index":"012"},"invites":{"description":"List of user IDs to invite to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Invites","type":"array","x-stream-index":"005"},"message":{"$ref":"#/components/schemas/MessageRequest","description":"Message to send to the chat when channel is successfully updated","title":"Message","x-stream-index":"010"},"reject_invite":{"description":"Set to `true` to reject the invite","title":"Reject invite","type":"boolean","x-stream-index":"009"},"remove_members":{"description":"List of user IDs to remove from the channel","items":{"type":"string"},"maximum":100,"title":"Remove members","type":"array","x-stream-index":"002"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"014.002"},"user_id":{"type":"string","x-stream-index":"014.001"}},"required":["remove_members","add_moderators","demote_moderators"],"title":"Channel update request","type":"object","x-stream-docs-page-id":"channel_update"},"UpdateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"003"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelTypeRequest":{"nullable":true,"properties":{"NameFromPath":{"type":"string","writeOnly":true,"x-stream-index":"001"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"007.001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"007.001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"007.001.019"},"automod_thresholds":{"$ref":"#/components/schemas/ThresholdsRequest","x-stream-index":"007.001.024"},"blocklist":{"type":"string","x-stream-index":"007.001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"007.001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptionsRequest"},"type":"array","x-stream-index":"007.001.022"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"007.003"},"connect_events":{"type":"boolean","x-stream-index":"007.001.004"},"custom_events":{"type":"boolean","x-stream-index":"007.001.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"004"},"mark_messages_pending":{"type":"boolean","x-stream-index":"007.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"007.001.017"},"message_retention":{"type":"string","x-stream-index":"007.001.016"},"mutes":{"type":"boolean","x-stream-index":"007.001.009"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest_1"},"type":"array","x-stream-index":"003"},"push_notifications":{"type":"boolean","x-stream-index":"007.001.013"},"quotes":{"type":"boolean","x-stream-index":"007.001.008"},"reactions":{"type":"boolean","x-stream-index":"007.001.006"},"read_events":{"type":"boolean","x-stream-index":"007.001.003"},"reminders":{"type":"boolean","x-stream-index":"007.001.014"},"replies":{"type":"boolean","x-stream-index":"007.001.007"},"search":{"type":"boolean","x-stream-index":"007.001.005"},"typing_events":{"type":"boolean","x-stream-index":"007.001.002"},"uploads":{"type":"boolean","x-stream-index":"007.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"007.001.011"}},"required":["automod"],"type":"object"},"UpdateChannelTypeResponse":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"003.001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"003.001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.001.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"003.001.024"},"blocklist":{"type":"string","x-stream-index":"003.001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"003.001.022"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"003.003"},"connect_events":{"type":"boolean","x-stream-index":"003.001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002.003"},"custom_events":{"type":"boolean","x-stream-index":"003.001.012"},"duration":{"type":"string","x-stream-index":"004.001"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"mark_messages_pending":{"type":"boolean","x-stream-index":"003.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"003.001.017"},"message_retention":{"type":"string","x-stream-index":"003.001.016"},"mutes":{"type":"boolean","x-stream-index":"003.001.009"},"name":{"type":"string","x-stream-index":"003.001.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"001"},"push_notifications":{"type":"boolean","x-stream-index":"003.001.013"},"quotes":{"type":"boolean","x-stream-index":"003.001.008"},"reactions":{"type":"boolean","x-stream-index":"003.001.006"},"read_events":{"type":"boolean","x-stream-index":"003.001.003"},"reminders":{"type":"boolean","x-stream-index":"003.001.014"},"replies":{"type":"boolean","x-stream-index":"003.001.007"},"search":{"type":"boolean","x-stream-index":"003.001.005"},"typing_events":{"type":"boolean","x-stream-index":"003.001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"003.002.004"},"uploads":{"type":"boolean","x-stream-index":"003.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"003.001.011"}},"required":["permissions","grants","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands","duration"],"type":"object"},"UpdateCommandRequest":{"description":"Represents custom chat command","nullable":true,"properties":{"Name":{"type":"string","writeOnly":true,"x-stream-index":"001"},"args":{"description":"Arguments help text, shown in commands auto-completion","maxLength":255,"title":"Arguments","type":"string","x-stream-index":"003"},"description":{"description":"Description, shown in commands auto-completion","maxLength":255,"title":"Description","type":"string","x-stream-index":"002"},"set":{"description":"Set name used for grouping commands","maxLength":255,"title":"Set","type":"string","x-stream-index":"004"}},"required":["description"],"title":"Command","type":"object"},"UpdateCommandResponse":{"nullable":true,"properties":{"command":{"$ref":"#/components/schemas/Command","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"UpdateMessagePartialRequest":{"nullable":true,"properties":{"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"skip_enrich_url":{"type":"boolean","x-stream-index":"001"},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["set","unset"],"type":"object"},"UpdateMessagePartialResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"UpdateMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateThreadPartialRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"set":{"type":"object","x-stream-index":"004.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"004.002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["set","unset"],"type":"object"},"UpdateThreadPartialResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadResponse","description":"Updated thread (not enriched)","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"UpdateUserPartialRequest":{"nullable":true,"properties":{"id":{"description":"User ID to update","title":"ID","type":"string","x-stream-index":"001"},"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["id","set","unset"],"type":"object"},"UpdateUsersRequest":{"nullable":true,"properties":{"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObjectRequest"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users"],"type":"object"},"UpdateUsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"membership_deletion_task_id":{"type":"string","x-stream-index":"002"},"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObject"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users","membership_deletion_task_id","duration"],"type":"object"},"UpsertPushProviderRequest":{"nullable":true,"properties":{"push_provider":{"$ref":"#/components/schemas/PushProviderRequest","x-stream-index":"001"}},"type":"object"},"UpsertPushProviderResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"push_provider":{"$ref":"#/components/schemas/PushProviderResponse","x-stream-index":"001"}},"required":["push_provider","duration"],"type":"object"},"UserCustomEventRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"type":{"type":"string","x-stream-index":"001"}},"required":["type"],"type":"object"},"UserMute":{"nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"target":{"$ref":"#/components/schemas/UserObject","description":"User who's muted","title":"Target","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"UserObject":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"007"},"deactivated_at":{"description":"Date of deactivation","format":"date-time","readOnly":true,"title":"Deactivated at","type":"string","x-stream-index":"012"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","readOnly":true,"title":"Deleted at","type":"string","x-stream-index":"011"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"last_active":{"description":"Date of last activity","format":"date-time","readOnly":true,"title":"Last active","type":"string","x-stream-index":"010"},"online":{"description":"Whether a user online or not","readOnly":true,"title":"Online","type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","banned","online"],"title":"User object","type":"object"},"UserObjectRequest":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettingsRequest","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"}},"required":["id"],"title":"User object","type":"object"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserRequest_1":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.005"},"ban_expires":{"format":"date-time","type":"string","x-stream-index":"001.015"},"banned":{"type":"boolean","x-stream-index":"001.014"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.007"},"deactivated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.012"},"deleted_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.011"},"id":{"type":"string","x-stream-index":"001.003"},"invisible":{"type":"boolean","x-stream-index":"001.021"},"language":{"type":"string","x-stream-index":"001.031"},"last_active":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.010"},"online":{"readOnly":true,"type":"boolean","x-stream-index":"001.020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"001.023"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.038"},"role":{"type":"string","x-stream-index":"001.004"},"shadow_banned":{"description":"Whether user is shadow banned or not","title":"Shadow banned","type":"boolean","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.032"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.008"}},"required":["id","role","Custom","banned","online","shadow_banned"],"type":"object"},"UsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"users":{"description":"List of found users","items":{"$ref":"#/components/schemas/UserResponse"},"title":"Users","type":"array","x-stream-index":"001"}},"required":["users","duration"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"WSEvent":{"description":"Represents an BaseEvent that happened in Stream Chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"022"},"automoderation":{"type":"boolean","x-stream-index":"018"},"automoderation_scores":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"019"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"009"},"channel_id":{"type":"string","x-stream-index":"004"},"channel_type":{"type":"string","x-stream-index":"005"},"cid":{"type":"string","x-stream-index":"003"},"connection_id":{"type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"023"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"017"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"014"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"011"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"006"},"message_update":{"$ref":"#/components/schemas/MessageUpdate","x-stream-index":"007"},"parent_id":{"type":"string","x-stream-index":"020"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"008"},"reason":{"type":"string","x-stream-index":"016"},"team":{"type":"string","x-stream-index":"021"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"010"},"type":{"type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"user_id":{"type":"string","x-stream-index":"013"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"015"}},"required":["type","Custom","created_at"],"title":"Event","type":"object","x-stream-docs-page-id":"event_object"},"WrappedUnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"001.004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"001.005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001.001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"001.002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads","duration"],"type":"object"},"XiaomiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"package_name":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"XiaomiConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"003"},"package_name":{"type":"string","x-stream-index":"001"},"secret":{"type":"string","x-stream-index":"002"}},"type":"object"},"connectRequestQueryRequest":{"nullable":true,"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v104.0.1"},"openapi":"3.0.3","paths":{"/app":{"get":{"description":"This Method returns the application settings\n","operationId":"GetApp","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetApplicationResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get App Settings","tags":["Settings"]},"patch":{"description":"This Method updates one or more application settings\n","operationId":"UpdateApp","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAppRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update App Settings","tags":["Settings"]}},"/blocklists":{"get":{"description":"Returns all available block lists\n","operationId":"ListBlockLists","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListBlockListResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List block lists","tags":["Settings","Moderation"]},"post":{"description":"Creates a new application blocklist, once created the blocklist can be used by any channel type\n","operationId":"CreateBlockList","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBlockListRequest"}}},"description":"Block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create block list","tags":["Settings","Moderation"]}},"/blocklists/{name}":{"delete":{"description":"Deletes previously created application blocklist\n","operationId":"DeleteBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete block list","tags":["Settings","Moderation"]},"get":{"description":"Returns block list by given name\n","operationId":"GetBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBlockListResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get block list","tags":["Settings","Moderation"]},"put":{"description":"Updates contents of the block list\n","operationId":"UpdateBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateBlockListRequest"}}},"description":"Update block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update block list","tags":["Settings","Moderation"]}},"/blocklists/{type}/validate":{"post":{"description":"Runs specific blocklist validation, returns an appropriate error if the blocklist is invalid\n","operationId":"ValidateBlockList","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBlockListRequest"}}},"description":"Block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Validate Blocklist","tags":["Moderation"]}},"/calls":{"post":{"description":"Retrieves the token to join a call\n\nRequired permissions:\n- JoinCall\n- ReadChannel\n","operationId":"GetCallToken","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Token"}},"/calls/{call_id}":{"post":{"description":"Retrieves the token to join a call\n\nRequired permissions:\n- JoinCall\n- ReadChannel\n","operationId":"GetCallToken","parameters":[{"in":"path","name":"call_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Token"}},"/channels":{"post":{"description":"Query channels with filter query\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryChannelsRequest"}}},"description":"Query Channels Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelsResponse"}}},"description":"Channels list"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query channels","tags":["Channels"]}},"/channels/delete":{"post":{"description":"Allows to delete several channels at once asynchronously\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deletes channels asynchronously","tags":["Channels","GDPR"]}},"/channels/read":{"post":{"description":"Marks channels as read up to the specific message. If no channels is given, mark all channel as read\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkChannelsRead","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChannelsReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark channels as read","tags":["Channels","Messages"]}},"/channels/{type}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/channels/{type}/{id}":{"delete":{"description":"Deletes channel\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"hard_delete","schema":{"type":"boolean","x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel","tags":["Channels"]},"patch":{"description":"Updates certain fields of the channel\n\nSends events:\n- channel.updated\n\nRequired permissions:\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n","operationId":"UpdateChannelPartial","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update channel","tags":["Channels"]},"post":{"description":"Change channel data\n\nSends events:\n- channel.updated\n- member.added\n- member.removed\n- member.updated\n- message.new\n\nRequired permissions:\n- AddOwnChannelMembership\n- RemoveOwnChannelMembership\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n- UpdateChannelMembers\n","operationId":"UpdateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelRequest"}}},"description":"Channel update request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel","tags":["Channels"]}},"/channels/{type}/{id}/call":{"post":{"description":"Creates a call\n\nRequired permissions:\n- CreateCall\n- ReadChannel\n","operationId":"CreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create a call"}},"/channels/{type}/{id}/event":{"post":{"description":"Sends event to the channel\n\nRequired permissions:\n- SendCustomEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send event","tags":["Events"]}},"/channels/{type}/{id}/file":{"delete":{"description":"Deletes previously uploaded file\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete file","tags":["Messages","Files"]},"post":{"description":"Uploads file\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload file","tags":["Messages","Files"]}},"/channels/{type}/{id}/hide":{"post":{"description":"Marks channel as hidden for current user\n\nSends events:\n- channel.hidden\n\nRequired permissions:\n- ReadChannel\n","operationId":"HideChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Hide channel","tags":["Channels"]}},"/channels/{type}/{id}/image":{"delete":{"description":"Deletes previously uploaded image\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete image","tags":["Messages","Files"]},"post":{"description":"Uploads image\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ImageUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload image","tags":["Messages","Files"]}},"/channels/{type}/{id}/message":{"post":{"description":"Sends new message to the specified channel\n\nSends events:\n- message.new\n- message.updated\n\nRequired permissions:\n- AddLinks\n- CreateMessage\n- PinMessage\n- SkipChannelCooldown\n- SkipMessageModeration\n- UseFrozenChannel\n","operationId":"SendMessage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"009.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"009.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send new message","tags":["Messages"]}},"/channels/{type}/{id}/messages":{"get":{"description":"Returns list messages found by IDs\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetManyMessages","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"ids","schema":{"description":"List of comma-separated IDs","items":{"type":"string"},"maximum":50,"minimum":1,"title":"IDs","type":"array","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetManyMessagesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get many messages","tags":["Messages"]}},"/channels/{type}/{id}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID (maximum length of 64 characters)","title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/channels/{type}/{id}/read":{"post":{"description":"Marks channel as read up to the specific message\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkRead","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark read","tags":["Channels","Messages"]}},"/channels/{type}/{id}/show":{"post":{"description":"Shows previously hidden channel\n\nSends events:\n- channel.visible\n","operationId":"ShowChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Show channel","tags":["Channels"]}},"/channels/{type}/{id}/truncate":{"post":{"description":"Truncates channel\n\nSends events:\n- channel.truncated\n\nRequired permissions:\n- DeleteChannel\n- TruncateChannel\n","operationId":"TruncateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Truncate channel","tags":["Channels"]}},"/channels/{type}/{id}/unread":{"post":{"description":"Marks channel as unread from a specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkUnread","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkUnreadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark unread","tags":["Channels","Messages"]}},"/channeltypes":{"get":{"description":"Lists all available channel types\n","operationId":"ListChannelTypes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListChannelTypesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List channel types","tags":["Settings","Channel types"]},"post":{"description":"Creates new channel type\n","operationId":"CreateChannelType","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateChannelTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateChannelTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create channel type","tags":["Settings","Channel types"]}},"/channeltypes/{name}":{"delete":{"description":"Deletes channel type\n","operationId":"DeleteChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Channel type name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel type","tags":["Settings","Channel types"]},"get":{"description":"Gets channel type\n","operationId":"GetChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Channel type name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get channel type","tags":["Settings","Channel types"]},"put":{"description":"Updates channel type\n","operationId":"UpdateChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel type","tags":["Settings","Channel types"]}},"/check_push":{"post":{"description":"Sends a test message via push, this is a test endpoint to verify your push settings\n","operationId":"CheckPush","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckPushRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckPushResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check push","tags":["Settings","Testing"]}},"/check_sns":{"post":{"description":"Validates Amazon SNS configuration\n","operationId":"CheckSNS","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSNSRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSNSResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check SNS","tags":["Settings","Testing"]}},"/check_sqs":{"post":{"description":"Validates Amazon SQS credentials\n","operationId":"CheckSQS","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSQSRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSQSResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check SQS","tags":["Settings","Testing"]}},"/commands":{"get":{"description":"Returns all custom commands\n","operationId":"ListCommands","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListCommandsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List commands","tags":["Custom commands"]},"post":{"description":"Creates custom chat command\n","operationId":"CreateCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommandRequest"}}},"description":"Command","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create command","tags":["Custom commands"]}},"/commands/{name}":{"delete":{"description":"Deletes custom chat command\n","operationId":"DeleteCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete command","tags":["Custom commands"]},"get":{"description":"Returns custom command by its name\n","operationId":"GetCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get command","tags":["Custom commands"]},"put":{"description":"Updates custom chat command\n","operationId":"UpdateCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Unique command name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCommandRequest"}}},"description":"Command","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update command","tags":["Custom commands"]}},"/connect":{"get":{"description":"Establishes WebSocket connection for user\n\nSends events:\n- user.updated\n","operationId":"Connect","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Connect (WebSocket)","tags":["Users"]}},"/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device","tags":["Devices"]},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices","tags":["Devices"]},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device","tags":["Devices","Push"]}},"/export/users":{"post":{"description":"Exports user profile, reactions and messages for list of given users\n","operationId":"ExportUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export users","tags":["Users"]}},"/export_channels":{"post":{"description":"Exports channel data to JSON file\n","operationId":"ExportChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export channels","tags":["Channels"]}},"/export_channels/{id}":{"get":{"description":"\n","operationId":"GetExportChannelsStatus","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Task ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetExportChannelsStatusResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export channels status","tags":["Channels"]}},"/guest":{"post":{"description":"Creates guest user\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create guest","tags":["Users"]}},"/import_urls":{"post":{"description":"Creates a new import URL\n","operationId":"CreateImportURL","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportURLRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportURLResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create import URL","tags":["Imports"]}},"/imports":{"get":{"description":"Gets an import\n","operationId":"ListImports","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListImportsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get import","tags":["Imports"]},"post":{"description":"Creates a new import\n","operationId":"CreateImport","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create import","tags":["Imports"]}},"/imports/{id}":{"get":{"description":"Gets an import\n","operationId":"GetImport","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetImportResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get import","tags":["Imports"]}},"/longpoll":{"get":{"description":"WebSocket fallback transport endpoint\n\nSends events:\n- user.updated\n","operationId":"LongPoll","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"},{"in":"query","name":"connection_id","schema":{"maxLength":36,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Long Poll (Transport)","tags":["Users"]}},"/members":{"get":{"description":"Find and filter channel members\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryMembers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query members","tags":["Channels"]}},"/messages/{id}":{"delete":{"description":"Deletes message\n\nSends events:\n- message.deleted\n\nRequired permissions:\n- DeleteMessage\n","operationId":"DeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"hard","schema":{"description":"Delete all message reactions and replies as well","title":"Hard","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"deleted_by","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete message","tags":["Messages"]},"get":{"description":"Returns message by ID\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"show_deleted_message","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageWithPendingMetadataResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get message","tags":["Messages"]},"post":{"description":"Updates message with new data\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update message","tags":["Messages"]},"put":{"description":"Updates certain fields of the message\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessagePartial","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially message update","tags":["Messages"]}},"/messages/{id}/action":{"post":{"description":"Executes message command action with given parameters\n\nSends events:\n- message.new\n\nRequired permissions:\n- RunMessageAction\n","operationId":"RunMessageAction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageActionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Run message command action","tags":["Messages"]}},"/messages/{id}/commit":{"post":{"description":"Commits a pending message, which will make it visible in the channel\n\nSends events:\n- message.new\n- message.updated\n","operationId":"CommitMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Commit message"}},"/messages/{id}/reaction":{"post":{"description":"Sends reaction to specified message\n\nSends events:\n- reaction.new\n- reaction.updated\n\nRequired permissions:\n- CreateReaction\n- UseFrozenChannel\n","operationId":"SendReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to send reaction for","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction","tags":["Messages","Reactions"]}},"/messages/{id}/reaction/{type}":{"delete":{"description":"Removes user reaction from the message\n\nSends events:\n- reaction.deleted\n\nRequired permissions:\n- DeleteReaction\n","operationId":"DeleteReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to remove reaction from","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"type","required":true,"schema":{"description":"Reaction type to remove","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionRemovalResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete reaction","tags":["Messages","Reactions"]}},"/messages/{id}/reactions":{"get":{"description":"Returns list of reactions of specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReactions","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"limit","schema":{"description":"Number of records to return","format":"int32","title":"Limit","type":"integer","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"offset","schema":{"description":"Number of records to offset","format":"int32","title":"Offset","type":"integer","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetReactionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get reactions","tags":["Messages","Reactions"]}},"/messages/{id}/translate":{"post":{"description":"Translates message to a given language using automated translation software\n\nSends events:\n- message.updated\n\nRequired permissions:\n- ReadChannel\n","operationId":"TranslateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Translate message","tags":["Messages"]}},"/messages/{id}/undelete":{"post":{"description":"Undelete a message that was previously soft-deleted\n\nSends events:\n- message.undeleted\n","operationId":"UndeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Undelete message","tags":["Messages"]}},"/messages/{parent_id}/replies":{"get":{"description":"Returns replies (thread) of the message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReplies","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"description":"ID of a message which replies to return","title":"Parent ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"id_gte","schema":{"type":"string","x-stream-index":"002.001.003"}},{"in":"query","name":"id_gt","schema":{"type":"string","x-stream-index":"002.001.004"}},{"in":"query","name":"id_lte","schema":{"type":"string","x-stream-index":"002.001.005"}},{"in":"query","name":"id_lt","schema":{"type":"string","x-stream-index":"002.001.006"}},{"in":"query","name":"created_at_after_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.007"}},{"in":"query","name":"created_at_after","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.008"}},{"in":"query","name":"created_at_before_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.009"}},{"in":"query","name":"created_at_before","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.010"}},{"in":"query","name":"id_around","schema":{"type":"string","x-stream-index":"002.001.011"}},{"in":"query","name":"created_at_around","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.012"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get replies","tags":["Messages"]}},"/moderation/ban":{"delete":{"description":"Removes previously applied ban\n\nSends events:\n- user.unbanned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Unban","parameters":[{"in":"query","name":"target_user_id","schema":{"type":"string","x-stream-index":"001"}},{"in":"query","name":"type","schema":{"type":"string","x-stream-index":"002"}},{"in":"query","name":"id","schema":{"type":"string","x-stream-index":"003"}},{"in":"query","name":"created_by","schema":{"type":"string","x-stream-index":"004"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unban user","tags":["Users","Moderation"]},"post":{"description":"Restricts user activity either in specific channel or globally\n\nSends events:\n- user.banned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Ban","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BanRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Ban user","tags":["Users","Moderation"]}},"/moderation/flag":{"post":{"description":"Reports message or user for review by moderators\n\nSends events:\n- message.flagged\n- user.flagged\n\nRequired permissions:\n- FlagMessage\n- FlagUser\n","operationId":"Flag","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Flag","tags":["Moderation","Messages","Users"]}},"/moderation/flags/message":{"get":{"description":"Find and filter message flags\n\nRequired permissions:\n- ReadMessageFlags\n","operationId":"QueryMessageFlags","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Message Flags","tags":["Messages","Moderation"]}},"/moderation/mute":{"post":{"description":"Mutes one or several users\n\nSends events:\n- user.muted\n\nRequired permissions:\n- MuteUser\n","operationId":"MuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute user","tags":["Users","Moderation"]}},"/moderation/mute/channel":{"post":{"description":"Mutes channel for user\n\nSends events:\n- channel.muted\n\nRequired permissions:\n- MuteChannel\n","operationId":"MuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute channel","tags":["Channels"]}},"/moderation/unmute":{"post":{"description":"Unmutes previously muted user\n\nSends events:\n- user.unmuted\n\nRequired permissions:\n- MuteUser\n","operationId":"UnmuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute user","tags":["Users","Moderation"]}},"/moderation/unmute/channel":{"post":{"description":"Unmutes channel for user\n\nSends events:\n- channel.unmuted\n\nRequired permissions:\n- MuteChannel\n","operationId":"UnmuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute channel","tags":["Channels"]}},"/og":{"get":{"description":"Get an OpenGraph attachment for a link\n","operationId":"GetOG","parameters":[{"in":"query","name":"url","schema":{"description":"URL to be scraped","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOGResponse"}}},"description":"Get OG Attachment"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get OG","tags":["Messages"]}},"/permissions":{"get":{"description":"Lists all available permissions\n","operationId":"ListPermissions","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List permissions","tags":["Permissions V2"]}},"/permissions/{id}":{"get":{"description":"Gets custom permission\n","operationId":"GetPermission","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Permission ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCustomPermissionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get permission","tags":["Permissions V2"]}},"/push_providers":{"get":{"description":"List details of all push providers.\n","operationId":"ListPushProviders","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPushProvidersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List push providers","tags":["Push","Settings"]},"post":{"description":"Upsert a push provider for v2 with multi bundle/package support\n","operationId":"UpsertPushProvider","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertPushProviderRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertPushProviderResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert a push provider","tags":["Server-side"]}},"/push_providers/{type}/{name}":{"delete":{"description":"Delete a push provider from v2 with multi bundle/package support. v1 isn't supported in this endpoint\n","operationId":"DeletePushProvider","parameters":[{"in":"path","name":"type","required":true,"schema":{"enum":["apn","firebase","huawei","xiaomi"],"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"name","required":true,"schema":{"maxLength":36,"minLength":1,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete a push provider","tags":["Push","Settings"]}},"/query_banned_users":{"get":{"description":"Find and filter channel scoped or global user bans\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryBannedUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Banned Users","tags":["Users","Moderation"]}},"/rate_limits":{"get":{"description":"Get rate limits usage and quotas\n","operationId":"GetRateLimits","parameters":[{"in":"query","name":"server_side","schema":{"description":"Whether to include server-side platform limits or not","title":"Server-side","type":"boolean","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"android","schema":{"description":"Whether to include Android platform limits or not","title":"Android","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"ios","schema":{"description":"Whether to include iOS platform limits or not","title":"iOS","type":"boolean","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"web","schema":{"description":"Whether to include web platform limits or not","title":"Web","type":"boolean","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"endpoints","schema":{"description":"Specific endpoints to show limits for, as a comma-separated list of values","title":"Endpoints","type":"string","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRateLimitsResponse"}}},"description":"Get Rate Limits Response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get rate limits","tags":["Settings"]}},"/roles":{"get":{"description":"Lists all available roles\n","operationId":"ListRoles","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRolesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List roles","tags":["Permissions V2"]},"post":{"description":"Creates custom role\n","operationId":"CreateRole","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create role","tags":["Permissions V2"]}},"/roles/{name}":{"delete":{"description":"Deletes custom role\n","operationId":"DeleteRole","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Role name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete role","tags":["Permissions V2"]}},"/search":{"get":{"description":"Search messages across channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Search","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest","description":"JSON object with search payload","title":"Payload","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Search messages","tags":["Channels","Messages"]}},"/tasks/{id}":{"get":{"description":"Gets status of a task\n","operationId":"GetTask","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Task ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTaskResponse"}}},"description":"Get Task Response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get status of a task","tags":["Tasks"]}},"/threads":{"post":{"description":"Returns the list of threads for specific user\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryThreads","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Threads","tags":["Threads"]}},"/threads/{message_id}":{"get":{"description":"Return a specific thread\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetThread","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"watch","schema":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"reply_limit","schema":{"description":"Limit the number of replies returned","format":"int32","minimum":0,"title":"Reply limit","type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"participant_limit","schema":{"description":"Limit the number of participants returned","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetThreadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Thread","tags":["Threads"]},"patch":{"description":"Updates certain fields of the thread\n\nSends events:\n- thread.updated\n\nRequired permissions:\n- ReadChannel\n- UpdateThread\n","operationId":"UpdateThreadPartial","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update thread","tags":["Threads","Channels"]}},"/unread":{"get":{"description":"Fetch unread counts for a single user\n","operationId":"UnreadCounts","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WrappedUnreadCountsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unread counts","tags":["Channels"]}},"/unread_batch":{"post":{"description":"Fetch unread counts in batch for multiple users in one call\n","operationId":"UnreadCountsBatch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnreadCountsBatchRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnreadCountsBatchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Batch unread counts","tags":["Channels"]}},"/users":{"get":{"description":"Find and filter users\n\nRequired permissions:\n- SearchUser\n","operationId":"QueryUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query users","tags":["Users"]},"patch":{"description":"Updates certain fields of the user\n\nSends events:\n- user.presence.changed\n- user.updated\n","operationId":"UpdateUsersPartial","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update user","tags":["Users"]},"post":{"description":"Update or create users in bulk\n\nSends events:\n- user.updated\n","operationId":"UpdateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert users","tags":["Users"]}},"/users/deactivate":{"post":{"description":"Deactivate users in batches\n\nSends events:\n- user.deactivated\n","operationId":"DeactivateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deactivate users","tags":["Users","GDPR","Moderation"]}},"/users/delete":{"post":{"description":"Deletes users and optionally all their belongings asynchronously.\n\nSends events:\n- channel.deleted\n- user.deleted\n","operationId":"DeleteUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete Users","tags":["Users","GDPR","Moderation"]}},"/users/reactivate":{"post":{"description":"Reactivate users in batches\n\nSends events:\n- user.reactivated\n","operationId":"ReactivateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reactivate users","tags":["Users","GDPR","Moderation"]}},"/users/restore":{"post":{"description":"Restore soft deleted users\n","operationId":"RestoreUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestoreUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Restore users","tags":["Users"]}},"/users/{user_id}/deactivate":{"post":{"description":"Deactivates user with possibility to activate it back\n\nSends events:\n- user.deactivated\n","operationId":"DeactivateUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User ID","type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deactivate user","tags":["Users","GDPR","Moderation"]}},"/users/{user_id}/event":{"post":{"description":"Sends a custom event to a user\n\nSends events:\n- custom\n","operationId":"SendUserCustomEvent","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendUserCustomEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send user event","tags":["Events"]}},"/users/{user_id}/export":{"get":{"description":"Exports the user's profile, reactions and messages. Raises an error if a user has more than 10k messages or reactions\n","operationId":"ExportUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export user","tags":["Users"]}},"/users/{user_id}/reactivate":{"post":{"description":"Activates user who's been deactivated previously\n\nSends events:\n- user.reactivated\n","operationId":"ReactivateUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User ID","type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reactivate user","tags":["Users","GDPR","Moderation"]}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file +{"components":{"schemas":{"APIError":{"nullable":true,"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNConfigFields":{"properties":{"auth_key":{"type":"string","x-stream-index":"009"},"auth_type":{"type":"string","x-stream-index":"003"},"bundle_id":{"type":"string","x-stream-index":"006"},"development":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"},"host":{"type":"string","x-stream-index":"005"},"key_id":{"type":"string","x-stream-index":"008"},"notification_template":{"type":"string","x-stream-index":"004"},"p12_cert":{"type":"string","x-stream-index":"010"},"team_id":{"type":"string","x-stream-index":"007"}},"required":["enabled","development","notification_template"],"type":"object"},"APNConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"005"},"auth_key":{"type":"string","x-stream-index":"006.001"},"auth_type":{"enum":["certificate","token"],"type":"string","x-stream-index":"001"},"bundle_id":{"type":"string","x-stream-index":"004"},"development":{"type":"boolean","x-stream-index":"002"},"host":{"type":"string","x-stream-index":"003"},"key_id":{"type":"string","x-stream-index":"006.002"},"notification_template":{"type":"string","x-stream-index":"008"},"p12_cert":{"type":"string","x-stream-index":"007.001"},"team_id":{"type":"string","x-stream-index":"006.003"}},"type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"Action":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"required":["name","text","type"],"type":"object"},"ActionRequest":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"type":"object"},"AgoraCall":{"properties":{"channel":{"type":"string","x-stream-index":"001"}},"required":["channel"],"type":"object"},"App":{"properties":{"agora_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.039"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.018"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.016"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.019"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.020"},"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallType"},"type":"object","x-stream-index":"001.006"},"campaign_enabled":{"type":"boolean","x-stream-index":"001.033"},"cdn_expiration_seconds":{"format":"int32","type":"integer","x-stream-index":"001.037"},"channel_configs":{"additionalProperties":{"$ref":"#/components/schemas/ChannelConfig"},"description":"Object with channel configs","title":"Channel configs","type":"object","x-stream-index":"001.005","x-stream-map":{"key":"channel_type"}},"custom_action_handler_url":{"type":"string","x-stream-index":"001.021"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfo","x-stream-index":"001.042"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.010"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.011"},"enforce_unique_usernames":{"type":"string","x-stream-index":"001.022"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.029"},"geofences":{"items":{"$ref":"#/components/schemas/GeofenceResponse"},"type":"array","x-stream-index":"001.041"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.040"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.015"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.017"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.030"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.014"},"name":{"type":"string","x-stream-index":"001.001"},"organization":{"type":"string","x-stream-index":"001.002"},"permission_version":{"type":"string","x-stream-index":"001.012"},"policies":{"additionalProperties":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"type":"object","x-stream-index":"001.007"},"polls_enabled":{"type":"boolean","x-stream-index":"001.034"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationFields","x-stream-index":"001.003"},"reminders_interval":{"format":"int32","type":"integer","x-stream-index":"001.036"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.031"},"sns_key":{"type":"string","x-stream-index":"001.027"},"sns_secret":{"type":"string","x-stream-index":"001.028"},"sns_topic_arn":{"type":"string","x-stream-index":"001.026"},"sqs_key":{"type":"string","x-stream-index":"001.024"},"sqs_secret":{"type":"string","x-stream-index":"001.025"},"sqs_url":{"type":"string","x-stream-index":"001.023"},"suspended":{"type":"boolean","x-stream-index":"001.008"},"suspended_explanation":{"type":"string","x-stream-index":"001.009"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"video_provider":{"type":"string","x-stream-index":"001.038"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.035"},"webhook_url":{"type":"string","x-stream-index":"001.004"}},"required":["name","organization","push_notifications","webhook_url","channel_configs","call_types","policies","suspended","suspended_explanation","disable_auth_checks","disable_permissions_checks","permission_version","user_search_disallowed_roles","multi_tenant_enabled","image_moderation_enabled","async_url_enrich_enabled","custom_action_handler_url","enforce_unique_usernames","sqs_url","sqs_key","sqs_secret","sns_topic_arn","sns_key","sns_secret","file_upload_config","image_upload_config","grants","campaign_enabled","polls_enabled","webhook_events","reminders_interval","cdn_expiration_seconds","video_provider"],"type":"object"},"AsyncModerationCallbackConfigRequest":{"properties":{"mode":{"enum":["CALLBACK_MODE_NONE","CALLBACK_MODE_REST","CALLBACK_MODE_TWIRP"],"type":"string","x-stream-index":"002"},"server_url":{"type":"string","x-stream-index":"001"}},"type":"object"},"AsyncModerationConfigurationRequest":{"properties":{"callback":{"$ref":"#/components/schemas/AsyncModerationCallbackConfigRequest","x-stream-index":"002"},"timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"type":"object"},"Attachment":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"021"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"023"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"019"},"poll_id":{"type":"string","x-stream-index":"018"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url, poll)","title":"Type","type":"string","x-stream-index":"001"}},"required":["Custom"],"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AttachmentRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"actions":{"items":{"$ref":"#/components/schemas/ActionRequest"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/FieldRequest"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/ImagesRequest","x-stream-index":"021"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"023"},"poll":{"$ref":"#/components/schemas/PollRequest","x-stream-index":"019"},"poll_id":{"type":"string","x-stream-index":"018"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url, poll)","title":"Type","type":"string","x-stream-index":"001"}},"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettings","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AutomodDetails":{"properties":{"action":{"type":"string","x-stream-index":"001"},"image_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"message_details":{"$ref":"#/components/schemas/FlagMessageDetails","x-stream-index":"004"},"original_message_type":{"type":"string","x-stream-index":"002"},"result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"003"}},"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BanRequest":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserRequest","description":"User who issued a ban","title":"Banned by","x-stream-index":"009"},"banned_by_id":{"description":"User ID who issued a ban","title":"Banned by ID","type":"string","x-stream-index":"008"},"id":{"description":"Channel ID to ban user in","title":"ID","type":"string","x-stream-index":"005"},"ip_ban":{"description":"Whether to perform IP ban or not","title":"IP ban","type":"boolean","x-stream-index":"007"},"reason":{"description":"Ban reason","title":"Reason","type":"string","x-stream-index":"003"},"shadow":{"description":"Whether to perform shadow ban or not","title":"Shadow","type":"boolean","x-stream-index":"006"},"target_user_id":{"description":"ID of user to ban","title":"Target user ID","type":"string","x-stream-index":"001"},"timeout":{"description":"Timeout of ban in minutes. User will be unbanned after this period of time","title":"Timeout","type":"integer","x-stream-index":"002"},"type":{"description":"Channel type to ban user in","title":"Type","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"010.002"},"user_id":{"type":"string","x-stream-index":"010.001"}},"required":["target_user_id"],"type":"object"},"BanResponse":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"expires":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"required":["created_at"],"type":"object"},"BlockList":{"description":"Block list contains restricted words","nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"name":{"description":"Block list name","title":"Name","type":"string","x-stream-index":"006"},"type":{"description":"Block list type.","title":"Type","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"},"words":{"description":"List of words to block","items":{"type":"string"},"title":"Words","type":"array","x-stream-index":"008"}},"required":["name","type","words"],"title":"Block list","type":"object","x-stream-docs-page-id":"block_lists"},"BlockListOptions":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"required":["blocklist","behavior"],"type":"object"},"BlockListOptionsRequest":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"type":"object"},"BroadcastSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettings","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"Call":{"properties":{"agora":{"$ref":"#/components/schemas/AgoraCall","x-stream-index":"005"},"hms":{"$ref":"#/components/schemas/HMSCall","x-stream-index":"004"},"id":{"type":"string","x-stream-index":"002"},"provider":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"003"}},"required":["provider","id","type"],"type":"object"},"CallSettings":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettings","x-stream-index":"006"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"007"},"recording":{"$ref":"#/components/schemas/RecordSettings","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"009"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"004"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"003"}},"type":"object"},"CallType":{"nullable":true,"properties":{"AppPK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"CreatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"005"},"ExternalStorage":{"type":"string","writeOnly":true,"x-stream-index":"009"},"Name":{"type":"string","writeOnly":true,"x-stream-index":"004"},"NotificationSettings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"008"},"PK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"002"},"Settings":{"$ref":"#/components/schemas/CallSettings","x-stream-index":"007"},"UpdatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"006"}},"required":["PK","AppPK","Name","CreatedAt","UpdatedAt","ExternalStorage"],"type":"object"},"CastPollVoteRequest":{"nullable":true,"properties":{"poll_id":{"maxLength":255,"type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"},"vote":{"$ref":"#/components/schemas/VoteDataRequest","x-stream-index":"003"}},"required":["poll_id"],"type":"object"},"Channel":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"028"},"auto_translation_language":{"type":"string","x-stream-index":"029"},"cid":{"type":"string","x-stream-index":"003"},"config":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"025"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"026"},"cooldown":{"format":"int32","type":"integer","x-stream-index":"030"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"008"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"disabled":{"type":"boolean","x-stream-index":"017"},"frozen":{"type":"boolean","x-stream-index":"016"},"id":{"type":"string","x-stream-index":"004"},"invites":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"021"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"006"},"member_count":{"format":"int32","type":"integer","x-stream-index":"020"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"019"},"team":{"type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"015"},"type":{"type":"string","x-stream-index":"005"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"}},"required":["cid","id","type","created_at","updated_at","frozen","disabled","Custom","auto_translation_language"],"type":"object"},"ChannelConfig":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.025"},"blocklist":{"type":"string","x-stream-index":"001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.023"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"003"},"connect_events":{"type":"boolean","x-stream-index":"001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.012"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.018"},"message_retention":{"type":"string","x-stream-index":"001.017"},"mutes":{"type":"boolean","x-stream-index":"001.009"},"name":{"type":"string","x-stream-index":"001.001"},"polls":{"type":"boolean","x-stream-index":"001.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.013"},"quotes":{"type":"boolean","x-stream-index":"001.008"},"reactions":{"type":"boolean","x-stream-index":"001.006"},"read_events":{"type":"boolean","x-stream-index":"001.003"},"reminders":{"type":"boolean","x-stream-index":"001.014"},"replies":{"type":"boolean","x-stream-index":"001.007"},"search":{"type":"boolean","x-stream-index":"001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"002.004"},"uploads":{"type":"boolean","x-stream-index":"001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands"],"type":"object"},"ChannelConfigRequest":{"description":"Channel configuration overrides","properties":{"blocklist":{"type":"string","x-stream-index":"008"},"blocklist_behavior":{"enum":["flag","block"],"type":"string","x-stream-index":"009"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"010","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"max_message_length":{"description":"Overrides max message length","format":"int32","maximum":20000,"title":"Max Message Length","type":"integer","x-stream-index":"007"},"quotes":{"description":"Enables message quotes","title":"Quotes","type":"boolean","x-stream-index":"004"},"reactions":{"description":"Enables or disables reactions","title":"Reactions","type":"boolean","x-stream-index":"002"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"003"},"typing_events":{"description":"Enables or disables typing events","title":"Typing events","type":"boolean","x-stream-index":"001"},"uploads":{"description":"Enables or disables file uploads","title":"Uploads","type":"boolean","x-stream-index":"005"},"url_enrichment":{"description":"Enables or disables URL enrichment","title":"URL Enrichment","type":"boolean","x-stream-index":"006"}},"type":"object"},"ChannelConfigWithInfo":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.002.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.002.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.002.025"},"blocklist":{"type":"string","x-stream-index":"001.002.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.002.023"},"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.001.003"},"custom_events":{"type":"boolean","x-stream-index":"001.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"002","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.002.018"},"message_retention":{"type":"string","x-stream-index":"001.002.017"},"mutes":{"type":"boolean","x-stream-index":"001.002.009"},"name":{"type":"string","x-stream-index":"001.002.001"},"polls":{"type":"boolean","x-stream-index":"001.002.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.002.013"},"quotes":{"type":"boolean","x-stream-index":"001.002.008"},"reactions":{"type":"boolean","x-stream-index":"001.002.006"},"read_events":{"type":"boolean","x-stream-index":"001.002.003"},"reminders":{"type":"boolean","x-stream-index":"001.002.014"},"replies":{"type":"boolean","x-stream-index":"001.002.007"},"search":{"type":"boolean","x-stream-index":"001.002.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.001.004"},"uploads":{"type":"boolean","x-stream-index":"001.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.002.011"}},"required":["created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelExportRequest":{"properties":{"cid":{"type":"string","x-stream-index":"003"},"id":{"description":"Channel ID","title":"ID","type":"string","x-stream-index":"002"},"messages_since":{"description":"Date to export messages since","format":"date-time","title":"Messages since","type":"string","x-stream-index":"004"},"messages_until":{"description":"Date to export messages until","format":"date-time","title":"Messages until","type":"string","x-stream-index":"005"},"type":{"description":"Channel type","title":"Type","type":"string","x-stream-index":"001"}},"title":"Channel Export","type":"object"},"ChannelGetOrCreateRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"004"},"hide_for_creator":{"description":"Whether this channel will be hidden for the user who created the channel or not","title":"Hide for creator","type":"boolean","x-stream-index":"008"},"members":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"011"},"messages":{"$ref":"#/components/schemas/MessagePaginationParamsRequest","x-stream-index":"010"},"state":{"description":"Refresh channel state","title":"State","type":"boolean","x-stream-index":"006"},"thread_unread_counts":{"type":"boolean","x-stream-index":"009"},"watchers":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"012"}},"type":"object"},"ChannelMember":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"required":["created_at","updated_at","banned","shadow_banned","channel_role","notifications_muted"],"title":"Channel member","type":"object"},"ChannelMemberRequest":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"title":"Channel member","type":"object"},"ChannelMute":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"007"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"ChannelRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"auto_translation_enabled":{"description":"Enable or disable auto translation","title":"Auto translation","type":"boolean","x-stream-index":"007"},"auto_translation_language":{"description":"Switch auto translation language","title":"Auto translation language","type":"string","x-stream-index":"008"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfigRequest","x-stream-index":"026"},"disabled":{"type":"boolean","x-stream-index":"016"},"frozen":{"description":"Freeze or unfreeze the channel","title":"Frozen","type":"boolean","x-stream-index":"015"},"members":{"items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"type":"array","x-stream-index":"020"},"team":{"description":"Team the channel belongs to (if multi-tenant mode is enabled)","title":"Team","type":"string","x-stream-index":"006"},"truncated_by_id":{"type":"string","x-stream-index":"012"}},"type":"object"},"ChannelResponse":{"description":"Represents channel in chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"029"},"auto_translation_enabled":{"description":"Whether auto translation is enabled or not","title":"Auto translation","type":"boolean","x-stream-index":"021"},"auto_translation_language":{"description":"Language to translate to when auto translation is active","title":"Auto translation language","type":"string","x-stream-index":"022"},"cid":{"description":"Channel CID (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"005"},"config":{"$ref":"#/components/schemas/ChannelConfigWithInfo","description":"Channel configuration","title":"Config","x-stream-index":"017"},"cooldown":{"description":"Cooldown period after sending each message","format":"int32","title":"Cooldown","type":"integer","x-stream-index":"024"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"008"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Creator of the channel","title":"Created by","x-stream-index":"011"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"010"},"disabled":{"type":"boolean","x-stream-index":"013"},"frozen":{"description":"Whether channel is frozen or not","title":"Frozen","type":"boolean","x-stream-index":"012"},"hidden":{"description":"Whether this channel is hidden by current user or not","title":"Hidden","type":"boolean","x-stream-index":"026"},"hide_messages_before":{"description":"Date since when the message history is accessible","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"023"},"id":{"description":"Channel unique ID","title":"ID","type":"string","x-stream-index":"003"},"last_message_at":{"description":"Date of the last message sent","format":"date-time","title":"Last message at","type":"string","x-stream-index":"006"},"member_count":{"description":"Number of members in the channel","format":"int32","title":"Member count","type":"integer","x-stream-index":"015"},"members":{"description":"List of channel members (max 100)","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"014"},"mute_expires_at":{"description":"Date of mute expiration","format":"date-time","title":"Mute expires at","type":"string","x-stream-index":"019"},"muted":{"description":"Whether this channel is muted or not","title":"Muted","type":"boolean","x-stream-index":"018"},"own_capabilities":{"description":"List of channel capabilities of authenticated user","items":{"type":"string"},"title":"Own Capabilities","type":"array","x-stream-index":"025"},"team":{"description":"Team the channel belongs to (multi-tenant only)","title":"Team","type":"string","x-stream-index":"020"},"truncated_at":{"description":"Date of the latest truncation of the channel","format":"date-time","title":"Truncated At","type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"028"},"type":{"description":"Type of the channel","title":"Type","type":"string","x-stream-docs-page-id":"channel_features","x-stream-index":"004"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"009"}},"required":["id","type","cid","frozen","disabled","Custom"],"title":"Channel","type":"object"},"ChannelStateResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"hidden":{"type":"boolean","x-stream-index":"001.010"},"hide_messages_before":{"format":"date-time","type":"string","x-stream-index":"001.011"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"001.007"},"membership":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.008"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.002"},"pending_messages":{"items":{"$ref":"#/components/schemas/PendingMessage"},"type":"array","x-stream-index":"001.012"},"pinned_messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.003"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"001.006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"001.009"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.004"},"watchers":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.005"}},"required":["messages","pinned_messages","members","threads","duration"],"type":"object"},"ChannelStateResponseFields":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"hidden":{"description":"Whether this channel is hidden or not","title":"Hidden","type":"boolean","x-stream-index":"010"},"hide_messages_before":{"description":"Messages before this date are hidden from the user","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"011"},"members":{"description":"List of channel members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"007"},"membership":{"$ref":"#/components/schemas/ChannelMember","description":"Current user membership object","title":"Membership","x-stream-index":"008"},"messages":{"description":"List of channel messages","items":{"$ref":"#/components/schemas/Message"},"title":"Message","type":"array","x-stream-index":"002"},"pending_messages":{"description":"Pending messages that this user has sent","items":{"$ref":"#/components/schemas/PendingMessage"},"title":"Pending messages","type":"array","x-stream-index":"012"},"pinned_messages":{"description":"List of pinned messages in the channel","items":{"$ref":"#/components/schemas/Message"},"title":"Pinned messages","type":"array","x-stream-docs-page-id":"pinned_messages","x-stream-index":"003"},"read":{"description":"List of read states","items":{"$ref":"#/components/schemas/Read"},"title":"Read","type":"array","x-stream-index":"006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"009"},"watcher_count":{"description":"Number of channel watchers","format":"int32","title":"Watcher count","type":"integer","x-stream-index":"004"},"watchers":{"description":"List of user who is watching the channel","items":{"$ref":"#/components/schemas/UserObject"},"title":"Watchers","type":"array","x-stream-index":"005"}},"required":["messages","pinned_messages","members","threads"],"type":"object"},"ChannelTypeConfig":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"003.002.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"003.002.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.002.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"003.002.025"},"blocklist":{"type":"string","x-stream-index":"003.002.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.002.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"003.002.023"},"commands":{"description":"List of commands that channel supports","items":{"$ref":"#/components/schemas/Command"},"title":"Commands","type":"array","x-stream-index":"003.003"},"connect_events":{"type":"boolean","x-stream-index":"003.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.001.003"},"custom_events":{"type":"boolean","x-stream-index":"003.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"mark_messages_pending":{"type":"boolean","x-stream-index":"003.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"003.002.018"},"message_retention":{"type":"string","x-stream-index":"003.002.017"},"mutes":{"type":"boolean","x-stream-index":"003.002.009"},"name":{"type":"string","x-stream-index":"003.002.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"001"},"polls":{"type":"boolean","x-stream-index":"003.002.016"},"push_notifications":{"type":"boolean","x-stream-index":"003.002.013"},"quotes":{"type":"boolean","x-stream-index":"003.002.008"},"reactions":{"type":"boolean","x-stream-index":"003.002.006"},"read_events":{"type":"boolean","x-stream-index":"003.002.003"},"reminders":{"type":"boolean","x-stream-index":"003.002.014"},"replies":{"type":"boolean","x-stream-index":"003.002.007"},"search":{"type":"boolean","x-stream-index":"003.002.005"},"typing_events":{"type":"boolean","x-stream-index":"003.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"003.001.004"},"uploads":{"type":"boolean","x-stream-index":"003.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"003.002.011"}},"required":["permissions","grants","created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelsResponse":{"nullable":true,"properties":{"channels":{"description":"List of channels","items":{"$ref":"#/components/schemas/ChannelStateResponseFields"},"title":"Channels","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channels","duration"],"title":"Channels list","type":"object"},"CheckPushRequest":{"nullable":true,"properties":{"apn_template":{"description":"Push message template for APN","title":"APN template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"002"},"firebase_data_template":{"description":"Push message data template for Firebase","title":"Firebase data template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"004"},"firebase_template":{"description":"Push message template for Firebase","title":"Firebase template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"003"},"message_id":{"description":"Message ID to send push notification for","title":"Message ID","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of push provider","title":"Name of push provider","type":"string","x-stream-index":"007"},"push_provider_type":{"description":"Push provider type","enum":["firebase","apn","huawei","xiaomi"],"title":"Type of push provider","type":"string","x-stream-index":"006"},"skip_devices":{"description":"Don't require existing devices to render templates","title":"Skip devices","type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"008.002"},"user_id":{"type":"string","x-stream-index":"008.001"}},"type":"object"},"CheckPushResponse":{"nullable":true,"properties":{"device_errors":{"additionalProperties":{"$ref":"#/components/schemas/DeviceErrorInfo"},"description":"Object with device errors","title":"Device errors","type":"object","x-stream-index":"001","x-stream-map":{"key":"device_id"}},"duration":{"type":"string","x-stream-index":"007.001"},"general_errors":{"description":"List of general errors","items":{"type":"string"},"title":"General errors","type":"array","x-stream-index":"002"},"rendered_apn_template":{"title":"Rendered APN template","type":"string","x-stream-index":"004"},"rendered_firebase_template":{"title":"Rendered Firebase template","type":"string","x-stream-index":"005"},"rendered_message":{"additionalProperties":{"type":"string"},"title":"Rendered message","type":"object","x-stream-index":"006"},"skip_devices":{"description":"Don't require existing devices to render templates","title":"Skip devices","type":"boolean","x-stream-index":"003"}},"required":["duration"],"type":"object"},"CheckSNSRequest":{"nullable":true,"properties":{"sns_key":{"description":"AWS SNS access key","title":"SNS key","type":"string","x-stream-index":"002"},"sns_secret":{"description":"AWS SNS key secret","title":"SNS secret","type":"string","x-stream-index":"003"},"sns_topic_arn":{"description":"AWS SNS topic ARN","title":"SNS Topic ARN","type":"string","x-stream-index":"001"}},"type":"object"},"CheckSNSResponse":{"nullable":true,"properties":{"data":{"description":"Error data","title":"ReadOnlyData","type":"object","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"description":"Error text","title":"Error","type":"string","x-stream-index":"002"},"status":{"description":"Validation result","enum":["ok","error"],"title":"Status","type":"string","x-stream-index":"001"}},"required":["status","duration"],"type":"object"},"CheckSQSRequest":{"nullable":true,"properties":{"sqs_key":{"description":"AWS SQS access key","title":"SQS key","type":"string","x-stream-index":"002"},"sqs_secret":{"description":"AWS SQS key secret","title":"SQS secret","type":"string","x-stream-index":"003"},"sqs_url":{"description":"AWS SQS endpoint URL","title":"SQS URL","type":"string","x-stream-index":"001"}},"type":"object"},"CheckSQSResponse":{"nullable":true,"properties":{"data":{"description":"Error data","title":"ReadOnlyData","type":"object","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"description":"Error text","title":"Error","type":"string","x-stream-index":"002"},"status":{"description":"Validation result","enum":["ok","error"],"title":"Status","type":"string","x-stream-index":"001"}},"required":["status","duration"],"type":"object"},"Command":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","title":"Arguments","type":"string","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"001"},"description":{"description":"Description, shown in commands auto-completion","title":"Description","type":"string","x-stream-index":"005"},"name":{"description":"Unique command name","title":"Name","type":"string","x-stream-index":"004"},"set":{"description":"Set name used for grouping commands","title":"Set","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"002"}},"required":["name","description","args","set"],"title":"Command","type":"object"},"CommitMessageRequest":{"nullable":true,"type":"object"},"Config":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConfigRequest":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConnectRequest":{"properties":{"device":{"$ref":"#/components/schemas/DeviceFields","x-stream-index":"001.002"},"user_details":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["user_details"],"type":"object"},"CreateBlockListRequest":{"description":"Block list contains restricted words","nullable":true,"properties":{"name":{"description":"Block list name","maxLength":255,"title":"Name","type":"string","x-stream-index":"001"},"type":{"description":"Block list type.","enum":["regex","domain","email","word"],"title":"Type","type":"string","x-stream-index":"003"},"words":{"description":"List of words to block","items":{"type":"string"},"minimum":1,"title":"Words","type":"array","x-stream-index":"002"}},"required":["name","words"],"title":"Block list","type":"object","x-stream-docs-page-id":"block_lists"},"CreateCallRequest":{"nullable":true,"properties":{"id":{"type":"string","x-stream-index":"004"},"options":{"type":"object","x-stream-index":"005"},"type":{"enum":["audio","video"],"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"006.002"},"user_id":{"type":"string","x-stream-index":"006.001"}},"required":["type","id"],"type":"object"},"CreateCallResponse":{"nullable":true,"properties":{"agora_app_id":{"type":"string","x-stream-index":"002.003"},"agora_uid":{"format":"int32","type":"integer","x-stream-index":"002.002"},"call":{"$ref":"#/components/schemas/Call","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"token":{"type":"string","x-stream-index":"002.001"}},"required":["token","duration"],"type":"object"},"CreateChannelTypeRequest":{"nullable":true,"properties":{"automod":{"description":"Enables automatic message moderation","enum":["disabled","simple","AI"],"title":"Auto moderation","type":"string","x-stream-index":"017"},"automod_behavior":{"description":"Sets behavior of automatic moderation","enum":["flag","block"],"title":"Auto moderation behavior","type":"string","x-stream-index":"018"},"blocklist":{"description":"Name of the blocklist to use","title":"Blocklist","type":"string","x-stream-index":"022"},"blocklist_behavior":{"description":"Sets behavior of blocklist","enum":["flag","block","shadow_block"],"title":"Blocklist behavior","type":"string","x-stream-index":"023"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptionsRequest"},"type":"array","x-stream-index":"024"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"019"},"connect_events":{"description":"Connect events support","title":"Connect events","type":"boolean","x-stream-index":"004"},"custom_events":{"description":"Enables custom events","title":"Custom events","type":"boolean","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"021"},"mark_messages_pending":{"description":"Marks messages as pending by default","title":"Mark messages pending","type":"boolean","x-stream-index":"013"},"max_message_length":{"description":"Number of maximum message characters","format":"int32","title":"Maximum message length","type":"integer","x-stream-index":"016"},"mutes":{"description":"Enables mutes","title":"Mutes","type":"boolean","x-stream-index":"008"},"name":{"description":"Channel type name","title":"Name","type":"string","x-stream-index":"001"},"permissions":{"description":"List of permissions for the channel type","items":{"$ref":"#/components/schemas/PolicyRequest_1"},"title":"Permissions","type":"array","x-stream-index":"020"},"polls":{"description":"Enables polls","title":"Polls","type":"boolean","x-stream-index":"014"},"push_notifications":{"description":"Enables push notifications","title":"Push notifications","type":"boolean","x-stream-index":"012"},"reactions":{"description":"Enables message reactions","title":"Reactions","type":"boolean","x-stream-index":"005"},"read_events":{"description":"Read events support","title":"Read events","type":"boolean","x-stream-index":"003"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"006"},"search":{"description":"Enables message search","title":"Search","type":"boolean","x-stream-index":"007"},"typing_events":{"description":"Typing events support","title":"Typing events","type":"boolean","x-stream-index":"002"},"uploads":{"description":"Enables file uploads","title":"Uploads","type":"boolean","x-stream-index":"009"},"url_enrichment":{"description":"Enables URL enrichment","title":"URL enrichment","type":"boolean","x-stream-index":"010"}},"required":["name","automod"],"type":"object"},"CreateChannelTypeResponse":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.001.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.001.025"},"blocklist":{"type":"string","x-stream-index":"001.001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.001.023"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.001.012"},"duration":{"type":"string","x-stream-index":"004.001"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"003"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.001.018"},"message_retention":{"type":"string","x-stream-index":"001.001.017"},"mutes":{"type":"boolean","x-stream-index":"001.001.009"},"name":{"type":"string","x-stream-index":"001.001.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"002"},"polls":{"type":"boolean","x-stream-index":"001.001.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.001.013"},"quotes":{"type":"boolean","x-stream-index":"001.001.008"},"reactions":{"type":"boolean","x-stream-index":"001.001.006"},"read_events":{"type":"boolean","x-stream-index":"001.001.003"},"reminders":{"type":"boolean","x-stream-index":"001.001.014"},"replies":{"type":"boolean","x-stream-index":"001.001.007"},"search":{"type":"boolean","x-stream-index":"001.001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.002.004"},"uploads":{"type":"boolean","x-stream-index":"001.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands","permissions","grants","duration"],"type":"object"},"CreateCommandRequest":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","maxLength":255,"title":"Arguments","type":"string","x-stream-index":"003"},"description":{"description":"Description, shown in commands auto-completion","maxLength":255,"title":"Description","type":"string","x-stream-index":"002"},"name":{"description":"Unique command name","maxLength":255,"minLength":1,"title":"Name","type":"string","x-stream-index":"001"},"set":{"description":"Set name used for grouping commands","maxLength":255,"title":"Set","type":"string","x-stream-index":"004"}},"required":["name","description"],"title":"Command","type":"object"},"CreateCommandResponse":{"nullable":true,"properties":{"command":{"$ref":"#/components/schemas/Command","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreateImportRequest":{"nullable":true,"properties":{"mode":{"enum":["insert","upsert"],"type":"string","x-stream-index":"002"},"path":{"type":"string","x-stream-index":"001"}},"required":["path"],"type":"object"},"CreateImportResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_task":{"$ref":"#/components/schemas/ImportTask","x-stream-index":"001"}},"required":["duration"],"type":"object"},"CreateImportURLRequest":{"nullable":true,"properties":{"filename":{"type":"string","x-stream-index":"001"}},"type":"object"},"CreateImportURLResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"path":{"type":"string","x-stream-index":"001"},"upload_url":{"type":"string","x-stream-index":"002"}},"required":["path","upload_url","duration"],"type":"object"},"CreatePollOptionRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"position":{"format":"int32","type":"integer","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"}},"required":["poll_id","text"],"type":"object"},"CreatePollRequest":{"description":"Contains all information needed to create a new poll","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"011"},"allow_answers":{"description":"Indicates whether users can suggest user defined answers","title":"Allow answers","type":"boolean","x-stream-index":"009"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"008"},"description":{"description":"A description of the poll","title":"Description","type":"string","x-stream-index":"003"},"enforce_unique_vote":{"description":"Indicates whether users can cast multiple votes","title":"Multiple choice","type":"boolean","x-stream-index":"006"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"is_closed":{"description":"Indicates whether the poll is open for voting","title":"Is closed","type":"boolean","x-stream-index":"010"},"max_votes_allowed":{"description":"Indicates the maximum amount of votes a user can cast","format":"int32","maximum":10,"title":"Maximum votes allowed","type":"integer","x-stream-index":"007"},"name":{"description":"The name of the poll","title":"Name","type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest_1"},"maximum":100,"type":"array","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"012.002"},"user_id":{"type":"string","x-stream-index":"012.001"},"voting_visibility":{"enum":["anonymous","public"],"type":"string","x-stream-index":"005"}},"required":["name"],"title":"Create Poll Request","type":"object"},"CreateRoleRequest":{"nullable":true,"properties":{"name":{"description":"Role name","maxLength":64,"title":"Name","type":"string","x-stream-index":"001"}},"required":["name"],"type":"object"},"CreateRoleResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"role":{"$ref":"#/components/schemas/Role","x-stream-index":"002"}},"required":["duration","role"],"type":"object"},"DataDogInfo":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"required":["api_key","site","enabled"],"type":"object"},"DataDogInfoRequest":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"type":"object"},"DeactivateUserRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who deactivated the user","title":"Created by ID","type":"string","x-stream-index":"003"},"mark_messages_deleted":{"description":"Makes messages appear to be deleted","title":"Mark messages deleted","type":"boolean","x-stream-index":"002"},"user_id":{"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"DeactivateUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["duration"],"type":"object"},"DeactivateUsersRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who deactivated the users","title":"Created by ID","type":"string","x-stream-index":"003"},"mark_messages_deleted":{"description":"Makes messages appear to be deleted","title":"Mark messages deleted","type":"boolean","x-stream-index":"002"},"user_ids":{"description":"User IDs to deactivate","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"DeactivateUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"DeleteChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteChannelsRequest":{"nullable":true,"properties":{"cids":{"description":"All channels that should be deleted","items":{"type":"string"},"maximum":100,"minimum":1,"title":"Channels CID","type":"array","x-stream-index":"001"},"hard_delete":{"description":"Specify if channels and all ressources should be hard deleted","title":"Hard delete","type":"boolean","x-stream-index":"002"}},"type":"object"},"DeleteChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"result":{"additionalProperties":{"$ref":"#/components/schemas/DeleteChannelsResult"},"type":"object","x-stream-index":"001"},"task_id":{"type":"string","x-stream-index":"002"}},"required":["duration"],"type":"object"},"DeleteChannelsResult":{"nullable":true,"properties":{"error":{"type":"string","x-stream-index":"003"},"status":{"type":"string","x-stream-index":"002"}},"required":["status"],"type":"object"},"DeleteCommandResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001"}},"required":["name","duration"],"type":"object"},"DeleteUsersRequest":{"nullable":true,"properties":{"calls":{"enum":["soft","hard"],"type":"string","x-stream-index":"001.002.004"},"conversations":{"description":"Conversation channels delete mode.\nConversation channel is any channel which only has two members one of which is the user being deleted.\n\n* null or empty string - doesn't delete any conversation channels\n* soft - marks all conversation channels as deleted (same effect as Delete Channels with 'hard' option disabled)\n* hard - deletes channel and all its data completely including messages (same effect as Delete Channels with 'hard' option enabled)\n","enum":["soft","hard"],"title":"Delete Conversations","type":"string","x-stream-index":"001.002.003"},"messages":{"description":"Message delete mode.\n\n* null or empty string - doesn't delete user messages\n* soft - marks all user messages as deleted without removing any related message data\n* pruning - marks all user messages as deleted, nullifies message information and removes some message data such as reactions and flags\n* hard - deletes messages completely with all related information\n","enum":["soft","pruning","hard"],"title":"Delete Messages","type":"string","x-stream-index":"001.002.002"},"new_call_owner_id":{"type":"string","x-stream-index":"001.002.006"},"new_channel_owner_id":{"type":"string","x-stream-index":"001.002.005"},"user":{"description":"User delete mode.\n\n* soft - marks user as deleted and retains all user data\n* pruning - marks user as deleted and nullifies user information\n* hard - deletes user completely. Requires 'hard' option for messages and conversations as well\n","enum":["soft","pruning","hard"],"title":"Delete User","type":"string","x-stream-index":"001.002.001"},"user_ids":{"description":"IDs of users to delete","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001.001"}},"required":["user_ids"],"type":"object"},"DeleteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"Device":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"disabled":{"type":"boolean","x-stream-index":"002.003"},"disabled_reason":{"type":"string","x-stream-index":"002.004"},"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"002.001.004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"002.001.001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"002.001.003"},"user_id":{"type":"string","x-stream-index":"004"},"voip":{"type":"boolean","x-stream-index":"002.001.005"}},"required":["push_provider","id","created_at","user_id"],"type":"object"},"DeviceErrorInfo":{"properties":{"error_message":{"type":"string","x-stream-index":"003"},"provider":{"type":"string","x-stream-index":"001"},"provider_name":{"type":"string","x-stream-index":"002"}},"required":["provider","provider_name","error_message"],"type":"object"},"DeviceFields":{"properties":{"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"003"},"voip":{"type":"boolean","x-stream-index":"005"}},"required":["push_provider","id"],"type":"object"},"ErrorResult":{"properties":{"stacktrace":{"type":"string","x-stream-index":"003"},"type":{"type":"string","x-stream-index":"001"},"version":{"type":"string","x-stream-index":"004"}},"required":["type","description"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventRequest":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["type"],"type":"object"},"EventResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/WSEvent","x-stream-index":"001"}},"required":["event","duration"],"type":"object"},"ExportChannelsRequest":{"nullable":true,"properties":{"channels":{"description":"Export options for channels","items":{"$ref":"#/components/schemas/ChannelExportRequest"},"maximum":25,"minimum":1,"title":"Channels","type":"array","x-stream-index":"002.001"},"clear_deleted_message_text":{"description":"Set if deleted message text should be cleared","title":"Clear deleted message text","type":"boolean","x-stream-index":"002.002"},"export_users":{"type":"boolean","x-stream-index":"002.004"},"include_truncated_messages":{"description":"Set if you want to include truncated messages","title":"Include truncated messages","type":"boolean","x-stream-index":"002.003"},"version":{"type":"string","x-stream-index":"001"}},"type":"object"},"ExportChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"ExportChannelsResult":{"properties":{"path":{"description":"S3 path of result","title":"PathPrefix","type":"string","x-stream-index":"002"},"s3_bucket_name":{"description":"S3 bucket name result","title":"S3 bucket name","type":"string","x-stream-index":"003"},"url":{"description":"URL of result","title":"URL","type":"string","x-stream-index":"001"}},"required":["url"],"type":"object"},"ExportUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["duration"],"type":"object"},"ExportUsersRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":25,"minimum":1,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"ExportUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"Field":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"required":["title","value","short"],"type":"object"},"FieldRequest":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"type":"object"},"FileDeleteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"FileUploadConfig":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"required":["allowed_file_extensions","blocked_file_extensions","allowed_mime_types","blocked_mime_types","size_limit"],"type":"object"},"FileUploadConfigRequest":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"type":"object"},"FileUploadRequest":{"nullable":true,"properties":{"file":{"description":"file field","title":"File","type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","description":"user for the request **server side only**","title":"User","x-stream-index":"003"}},"type":"object"},"FileUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"003"}},"required":["duration"],"type":"object"},"FirebaseConfigFields":{"properties":{"apn_template":{"type":"string","x-stream-index":"004"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"003"},"enabled":{"type":"boolean","x-stream-index":"001"},"notification_template":{"type":"string","x-stream-index":"002"},"server_key":{"type":"string","x-stream-index":"005"}},"required":["enabled","notification_template","data_template","apn_template"],"type":"object"},"FirebaseConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"001"},"apn_template":{"type":"string","x-stream-index":"005"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"004"},"notification_template":{"type":"string","x-stream-index":"003"},"server_key":{"type":"string","x-stream-index":"002"}},"type":"object"},"Flag":{"description":"Contains information about flagged user or message","properties":{"approved_at":{"description":"Date of the approval","format":"date-time","title":"Approved at","type":"string","x-stream-index":"015"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"created_by_automod":{"type":"boolean","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"022"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"021"},"reason":{"type":"string","x-stream-index":"020"},"rejected_at":{"description":"Date of the rejection","format":"date-time","title":"Rejected at","type":"string","x-stream-index":"016"},"reviewed_at":{"description":"Date of the review","format":"date-time","title":"Reviewed at","type":"string","x-stream-index":"013"},"target_message":{"$ref":"#/components/schemas/Message","x-stream-index":"008"},"target_message_id":{"description":"ID of flagged message","title":"Target Message ID","type":"string","x-stream-index":"007"},"target_user":{"$ref":"#/components/schemas/UserObject","description":"Flagged user","title":"User","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","description":"User who flagged a message or a user","title":"User","x-stream-index":"006"}},"required":["created_by_automod","created_at","updated_at"],"title":"Flag","type":"object"},"FlagDetails":{"properties":{"Extra":{"type":"object","writeOnly":true,"x-stream-index":"002"},"automod":{"$ref":"#/components/schemas/AutomodDetails","x-stream-index":"001"},"original_text":{"type":"string","x-stream-index":"003"}},"required":["Extra","original_text"],"type":"object"},"FlagFeedback":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"labels":{"items":{"$ref":"#/components/schemas/Label"},"type":"array","x-stream-index":"006"},"message_id":{"type":"string","x-stream-index":"004"}},"required":["message_id","created_at","labels"],"type":"object"},"FlagMessageDetails":{"properties":{"pin_changed":{"type":"boolean","x-stream-index":"002"},"should_enrich":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"004"},"updated_by_id":{"type":"string","x-stream-index":"001"}},"type":"object"},"FlagRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"004"},"reason":{"maxLength":255,"type":"string","x-stream-index":"003"},"target_message_id":{"description":"ID of the message when reporting a message","title":"Target Message ID","type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"}},"type":"object"},"FlagResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flag":{"$ref":"#/components/schemas/Flag","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GeofenceResponse":{"nullable":true,"properties":{"country_codes":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"}},"required":["name"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GetApplicationResponse":{"nullable":true,"properties":{"app":{"$ref":"#/components/schemas/App","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["app","duration"],"type":"object"},"GetBlockListResponse":{"nullable":true,"properties":{"blocklist":{"$ref":"#/components/schemas/BlockList","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"GetCallTokenRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"GetCallTokenResponse":{"nullable":true,"properties":{"agora_app_id":{"type":"string","x-stream-index":"001.003"},"agora_uid":{"format":"int32","type":"integer","x-stream-index":"001.002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"token":{"type":"string","x-stream-index":"001.001"}},"required":["token","duration"],"type":"object"},"GetCommandResponse":{"nullable":true,"properties":{"args":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.001"},"description":{"type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001.004"},"set":{"type":"string","x-stream-index":"001.007"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.002"}},"required":["name","description","args","set","duration"],"type":"object"},"GetCustomPermissionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"permission":{"$ref":"#/components/schemas/Permission","x-stream-index":"001"}},"required":["permission","duration"],"type":"object"},"GetExportChannelsStatusResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"001.007.001"},"error":{"$ref":"#/components/schemas/ErrorResult","description":"Contains task error in case of failure","title":"Error","x-stream-index":"003"},"result":{"$ref":"#/components/schemas/ExportChannelsResult","description":"Contains task result in case of success","title":"Result","x-stream-index":"002"},"status":{"type":"string","x-stream-index":"001.002"},"task_id":{"type":"string","x-stream-index":"001.001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.004"}},"required":["task_id","status","created_at","updated_at","duration"],"type":"object"},"GetImportResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_task":{"$ref":"#/components/schemas/ImportTask","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GetManyMessagesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetOGResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.020"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"001.015"},"asset_url":{"description":"URL of detected video or audio","title":"Image URL","type":"string","x-stream-index":"001.017"},"author_icon":{"type":"string","x-stream-index":"001.007"},"author_link":{"description":"og:site","title":"Author Link","type":"string","x-stream-index":"001.006"},"author_name":{"description":"og:site_name","title":"Author Name","type":"string","x-stream-index":"001.005"},"color":{"type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"002.001"},"fallback":{"type":"string","x-stream-index":"001.002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"001.016"},"footer":{"type":"string","x-stream-index":"001.013"},"footer_icon":{"type":"string","x-stream-index":"001.014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"001.021"},"image_url":{"description":"URL of detected image","title":"Image URL","type":"string","x-stream-index":"001.011"},"og_scrape_url":{"description":"extracted url from the text","title":"OG Scrape URL","type":"string","x-stream-index":"001.022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"001.024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"001.023"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001.019"},"poll_id":{"type":"string","x-stream-index":"001.018"},"pretext":{"type":"string","x-stream-index":"001.004"},"text":{"description":"og:description","title":"Text","type":"string","x-stream-index":"001.010"},"thumb_url":{"description":"URL of detected thumb image","title":"Image URL","type":"string","x-stream-index":"001.012"},"title":{"description":"og:title","title":"Title","type":"string","x-stream-index":"001.008"},"title_link":{"description":"og:url","title":"Title Link","type":"string","x-stream-index":"001.009"},"type":{"description":"Attachment type, could be empty, image, audio or video","title":"Type","type":"string","x-stream-index":"001.001"}},"required":["Custom","duration"],"title":"Get OG Attachment","type":"object","x-stream-docs-page-id":"og"},"GetRateLimitsResponse":{"nullable":true,"properties":{"android":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the Android platform","title":"Android","type":"object","x-stream-index":"002","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"duration":{"type":"string","x-stream-index":"005.001"},"ios":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the iOS platform","title":"iOS","type":"object","x-stream-index":"003","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"server_side":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the server-side platform","title":"Server-side","type":"object","x-stream-index":"001","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"web":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the web platform","title":"Web","type":"object","x-stream-index":"004","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}}},"required":["duration"],"title":"Get Rate Limits Response","type":"object","x-stream-docs-page-id":"rate_limits"},"GetReactionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"reactions":{"description":"List of reactions","items":{"$ref":"#/components/schemas/Reaction"},"title":"Reactions","type":"array","x-stream-index":"001"}},"required":["reactions","duration"],"type":"object"},"GetRepliesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetTaskResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"$ref":"#/components/schemas/ErrorResult","description":"Error produced by task","title":"Error","x-stream-index":"003"},"result":{"description":"Result produced by task after completion","title":"Result","type":"object","x-stream-index":"002"},"status":{"description":"Current status of task","title":"Status","type":"string","x-stream-index":"001.002"},"task_id":{"description":"ID of task","title":"Task ID","type":"string","x-stream-index":"001.001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.004"}},"required":["task_id","status","created_at","updated_at","duration"],"title":"Get Task Response","type":"object","x-stream-docs-page-id":"tasks"},"GetThreadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadStateResponse","description":"Enriched thread state","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"GuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"GuestResponse":{"nullable":true,"properties":{"access_token":{"description":"Authentication token to use for guest user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","description":"Created user object","title":"User","x-stream-index":"001"}},"required":["access_token","duration"],"type":"object"},"HLSSettings":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks"],"type":"object"},"HMSCall":{"properties":{"room_id":{"type":"string","x-stream-index":"001"},"room_name":{"type":"string","x-stream-index":"002"}},"required":["room_id","room_name"],"type":"object"},"HideChannelRequest":{"nullable":true,"properties":{"clear_history":{"description":"Whether to clear message history of the channel or not","title":"Clear history","type":"boolean","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"type":"object"},"HideChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"HuaweiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"id":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"HuaweiConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"secret":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageData":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"required":["url","width","height","size","frames"],"type":"object"},"ImageDataRequest":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageSize":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"required":["crop","resize","height","width"],"title":"Image size configuration","type":"object"},"ImageSizeRequest":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"title":"Image size configuration","type":"object"},"ImageUploadRequest":{"nullable":true,"properties":{"file":{"type":"string","x-stream-index":"001.002"},"upload_sizes":{"description":"field with JSON-encoded array of image size configurations","items":{"$ref":"#/components/schemas/ImageSizeRequest"},"title":"Upload sizes","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","x-stream-index":"001.003"}},"type":"object"},"ImageUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"001.002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"001.003"},"upload_sizes":{"items":{"$ref":"#/components/schemas/ImageSize"},"type":"array","x-stream-index":"002"}},"required":["duration"],"type":"object"},"Images":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageData","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageData","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageData","x-stream-index":"001"}},"required":["original","fixed_height","fixed_height_still","fixed_height_downsampled","fixed_width","fixed_width_still","fixed_width_downsampled"],"type":"object"},"ImagesRequest":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"001"}},"type":"object"},"ImportTask":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"history":{"items":{"$ref":"#/components/schemas/ImportTaskHistory"},"type":"array","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"003"},"mode":{"type":"string","x-stream-index":"006"},"path":{"type":"string","x-stream-index":"005"},"size":{"format":"int64","type":"integer","x-stream-index":"007"},"state":{"type":"string","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["id","path","mode","state","history","created_at","updated_at"],"type":"object"},"ImportTaskHistory":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"next_state":{"type":"string","x-stream-index":"006"},"prev_state":{"type":"string","x-stream-index":"005"}},"required":["prev_state","next_state","created_at"],"type":"object"},"Label":{"properties":{"harm_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"phrase_list_ids":{"items":{"format":"int32","type":"integer"},"type":"array","x-stream-index":"002"}},"required":["name"],"type":"object"},"LabelThresholds":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LabelThresholdsRequest":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"LimitInfo":{"properties":{"limit":{"description":"The maximum number of calls allowed for the time window","format":"int32","title":"Limit","type":"integer","x-stream-index":"001"},"remaining":{"description":"The number of remaining calls in the current window","format":"int64","title":"Remaining","type":"integer","x-stream-index":"002"},"reset":{"description":"The Unix timestamp of the next window","format":"int64","title":"Reset","type":"integer","x-stream-index":"003"}},"required":["limit","remaining","reset"],"title":"Rate Limit info","type":"object","x-stream-docs-page-id":"rate_limits"},"ListBlockListResponse":{"nullable":true,"properties":{"blocklists":{"items":{"$ref":"#/components/schemas/BlockList"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["blocklists","duration"],"type":"object"},"ListChannelTypesResponse":{"nullable":true,"properties":{"channel_types":{"additionalProperties":{"$ref":"#/components/schemas/ChannelTypeConfig"},"description":"Object with all channel types","title":"Channel types","type":"object","x-stream-index":"001","x-stream-map":{"key":"channel_type","title":"Channel type","description":"Channel type config object"}},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channel_types","duration"],"type":"object"},"ListCommandsResponse":{"nullable":true,"properties":{"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["commands","duration"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListImportsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_tasks":{"items":{"$ref":"#/components/schemas/ImportTask"},"type":"array","x-stream-index":"001"}},"required":["import_tasks","duration"],"type":"object"},"ListPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"permissions":{"items":{"$ref":"#/components/schemas/Permission"},"type":"array","x-stream-index":"001"}},"required":["permissions","duration"],"type":"object"},"ListPushProvidersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"push_providers":{"items":{"$ref":"#/components/schemas/PushProviderResponse"},"type":"array","x-stream-index":"001"}},"required":["push_providers","duration"],"type":"object"},"ListRolesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"roles":{"items":{"$ref":"#/components/schemas/Role"},"type":"array","x-stream-index":"001"}},"required":["roles","duration"],"type":"object"},"MarkChannelsReadRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"MarkReadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message that is considered last read by client","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Optional Thread ID to specifically mark a given thread as read","title":"Thread ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"type":"object"},"MarkReadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/MessageReadEvent","description":"Mark read event","title":"Event","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MarkUnreadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message from where the channel is marked unread","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Mark a thread unread, specify both the thread and message id","title":"Thread ID","type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["message_id","thread_id"],"type":"object"},"MembersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"members":{"description":"List of found members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"001"}},"required":["members","duration"],"type":"object"},"Message":{"description":"Represents any chat message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"031"},"attachments":{"description":"Array of message attachments","items":{"$ref":"#/components/schemas/Attachment"},"title":"Message attachments","type":"array","x-stream-docs-page-id":"message_format#attachment-format","x-stream-index":"011"},"before_message_send_failed":{"description":"Whether `before_message_send webhook` failed or not. Field is only accessible in push webhook","title":"Before Message Send Failed","type":"boolean","x-stream-docs-page-id":"before_message_send_webhook","x-stream-index":"043"},"cid":{"description":"Channel unique identifier in \u003ctype\u003e:\u003cid\u003e format","title":"Channel CID","type":"string","x-stream-index":"026"},"command":{"description":"Contains provided slash command","title":"Command","type":"string","x-stream-docs-page-id":"custom_commands_webhook","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"028"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"021"},"html":{"description":"Contains HTML markup of the message. Can only be set when using server-side API","title":"HTML content","type":"string","x-stream-index":"007"},"i18n":{"additionalProperties":{"type":"string"},"description":"Object with translations. Key `language` contains the original language key. Other keys contain translations","title":"Internationalization info","type":"object","x-stream-docs-page-id":"translation","x-stream-index":"041"},"id":{"description":"Message ID is unique string identifier of the message","title":"ID","type":"string","x-stream-index":"002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Contains image moderation information","title":"Image moderation labels","type":"object","x-stream-index":"037"},"latest_reactions":{"description":"List of 10 latest reactions to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Latest reactions","type":"array","x-stream-index":"012"},"mentioned_users":{"description":"List of mentioned users","items":{"$ref":"#/components/schemas/UserObject"},"title":"Mentioned Users","type":"array","x-stream-index":"040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"049"},"mml":{"description":"Should be empty if `text` is provided. Can only be set when using server-side API","title":"Messaging Markup Language","type":"string","x-stream-docs-page-id":"mml_overview","x-stream-index":"005"},"own_reactions":{"description":"List of 10 latest reactions of authenticated user to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Own reactions","type":"array","x-stream-index":"013"},"parent_id":{"description":"ID of parent message (thread)","title":"Parent message ID","type":"string","x-stream-docs-page-id":"threads","x-stream-index":"017"},"pin_expires":{"description":"Date when pinned message expires","format":"date-time","title":"Pin expiration date","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"048"},"pinned":{"description":"Whether message is pinned or not","title":"Pinned","type":"boolean","x-stream-docs-page-id":"pinned_messages","x-stream-index":"044"},"pinned_at":{"description":"Date when message got pinned","format":"date-time","title":"Pinned at","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","description":"Contains user who pinned the message","title":"Pinned by","x-stream-docs-page-id":"pinned_messages","x-stream-index":"047"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"051"},"poll_id":{"description":"Identifier of the poll to include in the message","title":"Poll ID","type":"string","x-stream-index":"050"},"quoted_message":{"$ref":"#/components/schemas/Message","description":"Contains quoted message","title":"Quoted message","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"023"},"quoted_message_id":{"title":"ID of quoted message","type":"string","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing number of reactions of each type. Key: reaction type (string), value: number of reactions (int)","title":"Reaction counts","type":"object","x-stream-index":"014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing scores of reactions of each type. Key: reaction type (string), value: total score of reactions (int)","title":"Reaction scores","type":"object","x-stream-index":"015"},"reply_count":{"description":"Number of replies to this message","format":"int32","title":"Reply count","type":"integer","x-stream-index":"020"},"shadowed":{"description":"Whether the message was shadowed or not","title":"Shadowed","type":"boolean","x-stream-docs-page-id":"moderation#shadow-ban","x-stream-index":"033"},"show_in_channel":{"description":"Whether thread reply should be shown in the channel as well","title":"Show in channel","type":"boolean","x-stream-docs-page-id":"threads","x-stream-index":"019"},"silent":{"description":"Whether message is silent or not","title":"Silent","type":"boolean","x-stream-index":"042"},"text":{"description":"Text of the message. Should be empty if `mml` is provided","title":"Text","type":"string","x-stream-index":"004"},"thread_participants":{"description":"List of users who participate in thread","items":{"$ref":"#/components/schemas/UserObject"},"title":"Thread participants","type":"array","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"025"},"type":{"description":"Contains type of the message","enum":["regular","ephemeral","error","reply","system","deleted"],"title":"Message Type","type":"string","x-stream-docs-page-id":"message_format#message-types","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"029"},"user":{"$ref":"#/components/schemas/UserObject","description":"Sender of the message. Required when using server-side API","title":"User object","x-stream-index":"010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned","poll_id"],"title":"Message","type":"object","x-stream-docs-page-id":"send_message"},"MessageActionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"form_data":{"additionalProperties":{"type":"string"},"description":"ReadOnlyData to execute command with","title":"Form data","type":"object","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["form_data"],"type":"object"},"MessageChangeSet":{"properties":{"attachments":{"type":"boolean","x-stream-index":"005"},"custom":{"type":"boolean","x-stream-index":"001"},"html":{"type":"boolean","x-stream-index":"004"},"mentioned_user_ids":{"type":"boolean","x-stream-index":"006"},"mml":{"type":"boolean","x-stream-index":"003"},"pin":{"type":"boolean","x-stream-index":"009"},"quoted_message_id":{"type":"boolean","x-stream-index":"007"},"silent":{"type":"boolean","x-stream-index":"008"},"text":{"type":"boolean","x-stream-index":"002"}},"required":["custom","text","mml","html","attachments","mentioned_user_ids","quoted_message_id","silent","pin"],"type":"object"},"MessageFlag":{"nullable":true,"properties":{"approved_at":{"format":"date-time","type":"string","x-stream-index":"013"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by_automod":{"type":"boolean","x-stream-index":"001"},"custom":{"type":"object","x-stream-index":"008"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"006"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"005"},"moderation_feedback":{"$ref":"#/components/schemas/FlagFeedback","x-stream-index":"003"},"moderation_result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"002"},"reason":{"type":"string","x-stream-index":"007"},"rejected_at":{"format":"date-time","type":"string","x-stream-index":"014"},"reviewed_at":{"format":"date-time","type":"string","x-stream-index":"011"},"reviewed_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004"}},"required":["created_by_automod","created_at","updated_at"],"type":"object"},"MessageModerationResult":{"properties":{"action":{"type":"string","x-stream-index":"004"},"ai_moderation_response":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"009"},"blocked_word":{"type":"string","x-stream-index":"006"},"blocklist_name":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"012"},"message_id":{"type":"string","x-stream-index":"003"},"moderated_by":{"type":"string","x-stream-index":"005"},"moderation_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"013"},"user_bad_karma":{"type":"boolean","x-stream-index":"011"},"user_karma":{"format":"float","type":"number","x-stream-index":"010"}},"required":["message_id","action","user_karma","user_bad_karma","created_at","updated_at"],"type":"object"},"MessagePaginationParamsRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"008"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"007"},"created_at_around":{"format":"date-time","type":"string","x-stream-index":"012"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"010"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"009"},"id_around":{"type":"string","x-stream-index":"011"},"id_gt":{"type":"string","x-stream-index":"004"},"id_gte":{"type":"string","x-stream-index":"003"},"id_lt":{"type":"string","x-stream-index":"006"},"id_lte":{"type":"string","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"MessageReadEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"last_read_message_id":{"type":"string","x-stream-index":"006"},"team":{"type":"string","x-stream-index":"004.001"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"MessageReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageRequest":{"properties":{"attachments":{"items":{"$ref":"#/components/schemas/AttachmentRequest"},"maximum":30,"type":"array","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"007"},"html":{"type":"string","x-stream-index":"010"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"mentioned_users":{"items":{"type":"string"},"maximum":25,"type":"array","x-stream-index":"008"},"mml":{"type":"string","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"005"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"015"},"pinned":{"type":"boolean","x-stream-index":"013"},"pinned_at":{"format":"date-time","nullable":true,"type":"string","x-stream-index":"014"},"poll_id":{"type":"string","x-stream-index":"038"},"quoted_message_id":{"type":"string","x-stream-index":"009"},"show_in_channel":{"type":"boolean","x-stream-index":"006"},"silent":{"type":"boolean","x-stream-index":"012"},"text":{"type":"string","x-stream-index":"002"},"type":{"enum":["''regular","system"],"type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"020.002"},"user_id":{"type":"string","x-stream-index":"020.001"}},"required":["attachments"],"type":"object"},"MessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MessageUpdate":{"properties":{"change_set":{"$ref":"#/components/schemas/MessageChangeSet","x-stream-index":"002"},"old_text":{"type":"string","x-stream-index":"001"}},"type":"object"},"MessageWithPendingMetadataResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"description":"Metadata attached to a message while it is pending","title":"Pending message metadata","type":"object","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ModerationResponse":{"properties":{"action":{"type":"string","x-stream-index":"004"},"explicit":{"format":"float","type":"number","x-stream-index":"002"},"spam":{"format":"float","type":"number","x-stream-index":"003"},"toxic":{"format":"float","type":"number","x-stream-index":"001"}},"required":["toxic","explicit","spam","action","automod_response"],"type":"object"},"MuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["channel_cids"],"type":"object"},"MuteChannelResponse":{"nullable":true,"properties":{"channel_mute":{"$ref":"#/components/schemas/ChannelMute","description":"Object with channel mute (if one channel was muted)","title":"Channel mute","x-stream-index":"001"},"channel_mutes":{"description":"Object with mutes (if multiple channels were muted)","items":{"$ref":"#/components/schemas/ChannelMute"},"title":"Channel mutes","type":"array","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"004.001"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["target_ids"],"type":"object"},"MuteUserResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"mute":{"$ref":"#/components/schemas/UserMute","description":"Object with user mute (if one user was muted)","title":"Mute","x-stream-index":"001"},"mutes":{"description":"Object with mutes (if multiple users were muted)","items":{"$ref":"#/components/schemas/UserMute"},"title":"Mutes","type":"array","x-stream-index":"002"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"NoiseCancellationSettings":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode"],"type":"object"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"OnlyUserIDRequest":{"properties":{"id":{"type":"string","x-stream-index":"001"}},"required":["id"],"type":"object"},"OwnUser":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"banned":{"type":"boolean","x-stream-index":"014"},"channel_mutes":{"items":{"$ref":"#/components/schemas/ChannelMute"},"type":"array","x-stream-index":"026"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"deactivated_at":{"format":"date-time","type":"string","x-stream-index":"012"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"type":"array","x-stream-index":"024"},"id":{"type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"type":"string","x-stream-index":"031"},"last_active":{"format":"date-time","type":"string","x-stream-index":"010"},"latest_hidden_channels":{"items":{"type":"string"},"type":"array","x-stream-index":"033"},"mutes":{"items":{"$ref":"#/components/schemas/UserMute"},"type":"array","x-stream-index":"025"},"online":{"type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"role":{"type":"string","x-stream-index":"004"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"032"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"028"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"029"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"027"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"030"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","created_at","updated_at","banned","online","devices","mutes","channel_mutes","unread_count","total_unread_count","unread_channels","unread_threads","language"],"type":"object"},"PaginationParamsRequest":{"properties":{"id_gt":{"format":"int32","type":"integer","x-stream-index":"004"},"id_gte":{"format":"int32","type":"integer","x-stream-index":"003"},"id_lt":{"format":"int32","type":"integer","x-stream-index":"006"},"id_lte":{"format":"int32","type":"integer","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"PendingMessage":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/Channel","x-stream-index":"007"},"message":{"$ref":"#/components/schemas/Message","description":"The message","title":"Message","x-stream-index":"009"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional data attached to the pending message. This data is discarded once the pending message is committed.","title":"Metadata","type":"object","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"type":"object"},"Permission":{"properties":{"action":{"description":"Action name this permission is for (e.g. SendMessage)","title":"Action","type":"string","x-stream-index":"004"},"condition":{"description":"MongoDB style condition which decides whether or not the permission is granted","title":"Condition","type":"object","x-stream-index":"007"},"custom":{"description":"Whether this is a custom permission or built-in","title":"Custom","type":"boolean","x-stream-index":"009"},"description":{"description":"Description of the permission","title":"Description","type":"string","x-stream-index":"003"},"id":{"description":"Unique permission ID","title":"ID","type":"string","x-stream-index":"001"},"level":{"description":"Level at which permission could be applied (app or channel)","enum":["app","channel"],"title":"Level","type":"string","x-stream-index":"010"},"name":{"description":"Name of the permission","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether this permission applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"same_team":{"description":"Whether this permission applies to teammates (multi-tenancy mode only)","title":"Same team","type":"boolean","x-stream-index":"006"},"tags":{"description":"List of tags of the permission","items":{"type":"string"},"title":"Tags","type":"array","x-stream-index":"011"}},"required":["id","name","description","action","owner","same_team","custom","level","tags"],"type":"object"},"Policy":{"properties":{"action":{"type":"integer","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"name":{"type":"string","x-stream-index":"004"},"owner":{"type":"boolean","x-stream-index":"008"},"priority":{"format":"int32","type":"integer","x-stream-index":"009"},"resources":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"}},"required":["name","resources","roles","action","owner","priority","created_at","updated_at"],"type":"object"},"PolicyRequest":{"properties":{"action":{"enum":["Deny","Allow"],"title":"Action","type":"string","x-stream-index":"001"},"name":{"description":"User-friendly policy name","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether policy applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"priority":{"description":"Policy priority","format":"int32","maximum":999,"minimum":1,"title":"Priority","type":"integer","x-stream-index":"006"},"resources":{"description":"List of resources to apply policy to","items":{"type":"string"},"minimum":1,"title":"Resources","type":"array","x-stream-index":"003"},"roles":{"description":"List of roles to apply policy to","items":{"type":"string"},"title":"Roles","type":"array","x-stream-index":"004"}},"required":["action","name","resources","roles","owner","priority"],"type":"object"},"PolicyRequest_1":{"properties":{"action":{"enum":["Deny","Allow"],"title":"Action","type":"string","x-stream-index":"001"},"name":{"description":"User-friendly policy name","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether policy applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"priority":{"description":"Policy priority","format":"int32","maximum":999,"minimum":1,"title":"Priority","type":"integer","x-stream-index":"006"},"resources":{"description":"List of resources to apply policy to","items":{"type":"string"},"minimum":1,"title":"Resources","type":"array","x-stream-index":"003"},"roles":{"description":"List of roles to apply policy to","items":{"type":"string"},"title":"Roles","type":"array","x-stream-index":"004"}},"required":["name","priority"],"type":"object"},"Poll":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"023"},"allow_answers":{"type":"boolean","x-stream-index":"010"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"009"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"015"},"created_at":{"format":"date-time","type":"string","x-stream-index":"021"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"020"},"created_by_id":{"type":"string","x-stream-index":"019"},"description":{"type":"string","x-stream-index":"005"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"007"},"id":{"type":"string","x-stream-index":"003"},"is_closed":{"type":"boolean","x-stream-index":"011"},"latest_answers":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array","x-stream-index":"017"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array"},"type":"object","x-stream-index":"016"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"008"},"name":{"type":"string","x-stream-index":"004"},"options":{"items":{"$ref":"#/components/schemas/PollOption"},"type":"array","x-stream-index":"013"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array","x-stream-index":"018"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"022"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"012"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"014"},"voting_visibility":{"type":"string","x-stream-index":"006"}},"required":["id","name","description","enforce_unique_vote","allow_user_suggested_options","allow_answers","vote_count","options","vote_counts_by_option","answers_count","latest_votes_by_option","latest_answers","own_votes","created_by_id","created_at","updated_at","Custom"],"type":"object"},"PollOption":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id","text","custom"],"type":"object"},"PollOptionRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"PollOptionRequest_1":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"}},"type":"object"},"PollOptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"poll_option":{"$ref":"#/components/schemas/PollOptionResponseData","x-stream-index":"001"}},"required":["poll_option","duration"],"type":"object"},"PollOptionResponseData":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id","text","custom"],"type":"object"},"PollRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"023"},"allow_answers":{"type":"boolean","x-stream-index":"010"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"009"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"015"},"created_at":{"format":"date-time","type":"string","x-stream-index":"021"},"created_by":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"020"},"created_by_id":{"type":"string","x-stream-index":"019"},"description":{"type":"string","x-stream-index":"005"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"007"},"id":{"type":"string","x-stream-index":"003"},"is_closed":{"type":"boolean","x-stream-index":"011"},"latest_answers":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array","x-stream-index":"017"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array"},"type":"object","x-stream-index":"016"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"008"},"name":{"type":"string","x-stream-index":"004"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest"},"type":"array","x-stream-index":"013"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array","x-stream-index":"018"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"022"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"012"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"014"},"voting_visibility":{"type":"string","x-stream-index":"006"}},"type":"object"},"PollResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"poll":{"$ref":"#/components/schemas/PollResponseData","x-stream-index":"001"}},"required":["poll","duration"],"type":"object"},"PollResponseData":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"allow_answers":{"type":"boolean","x-stream-index":"008"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"007"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"012"},"created_at":{"format":"date-time","type":"string","x-stream-index":"018"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"017"},"created_by_id":{"type":"string","x-stream-index":"016"},"description":{"type":"string","x-stream-index":"003"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"005"},"id":{"type":"string","x-stream-index":"001"},"is_closed":{"type":"boolean","x-stream-index":"009"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array"},"type":"object","x-stream-index":"014"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"006"},"name":{"type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionResponseData"},"type":"array","x-stream-index":"011"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array","x-stream-index":"015"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"019"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"010"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"013"},"voting_visibility":{"type":"string","x-stream-index":"004"}},"required":["id","name","description","voting_visibility","enforce_unique_vote","allow_user_suggested_options","allow_answers","vote_count","options","answers_count","vote_counts_by_option","latest_votes_by_option","own_votes","created_by_id","created_at","updated_at","Custom"],"type":"object"},"PollVote":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"004"},"is_answer":{"type":"boolean","x-stream-index":"006"},"option_id":{"type":"string","x-stream-index":"005"},"poll_id":{"type":"string","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"009"},"user_id":{"type":"string","x-stream-index":"008"}},"required":["poll_id","id","option_id","created_at","updated_at"],"type":"object"},"PollVoteRequest":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"004"},"is_answer":{"type":"boolean","x-stream-index":"006"},"option_id":{"type":"string","x-stream-index":"005"},"poll_id":{"type":"string","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"009"},"user_id":{"type":"string","x-stream-index":"008"}},"type":"object"},"PollVoteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVoteResponseData","x-stream-index":"001"}},"required":["duration"],"type":"object"},"PollVoteResponseData":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"005"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"id":{"type":"string","x-stream-index":"002"},"is_answer":{"type":"boolean","x-stream-index":"004"},"option_id":{"type":"string","x-stream-index":"003"},"poll_id":{"type":"string","x-stream-index":"001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"007"},"user_id":{"type":"string","x-stream-index":"006"}},"required":["poll_id","id","option_id","created_at","updated_at"],"type":"object"},"PollVotesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"votes":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array","x-stream-index":"001"}},"required":["votes","duration"],"type":"object"},"PushConfigRequest":{"properties":{"offline_only":{"type":"boolean","x-stream-index":"002"},"version":{"enum":["v1","v2"],"type":"string","x-stream-index":"001"}},"type":"object"},"PushNotificationFields":{"properties":{"apn":{"$ref":"#/components/schemas/APNConfigFields","x-stream-index":"002"},"firebase":{"$ref":"#/components/schemas/FirebaseConfigFields","x-stream-index":"003"},"huawei":{"$ref":"#/components/schemas/HuaweiConfigFields","x-stream-index":"004"},"offline_only":{"type":"boolean","x-stream-index":"001.002"},"providers":{"items":{"$ref":"#/components/schemas/PushProvider"},"type":"array","x-stream-index":"006"},"version":{"type":"string","x-stream-index":"001.001"},"xiaomi":{"$ref":"#/components/schemas/XiaomiConfigFields","x-stream-index":"005"}},"required":["version","offline_only","apn","firebase","huawei","xiaomi"],"type":"object"},"PushNotificationSettings":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushNotificationSettingsRequest":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushProvider":{"nullable":true,"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name","type","created_at","updated_at"],"type":"object"},"PushProviderRequest":{"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name"],"type":"object"},"PushProviderResponse":{"properties":{"apn_auth_key":{"type":"string","x-stream-index":"008"},"apn_auth_type":{"type":"string","x-stream-index":"013"},"apn_development":{"type":"boolean","x-stream-index":"014"},"apn_host":{"type":"string","x-stream-index":"015"},"apn_key_id":{"type":"string","x-stream-index":"009"},"apn_p12_cert":{"type":"string","x-stream-index":"010"},"apn_sandbox_certificate":{"type":"boolean","x-stream-index":"016"},"apn_supports_remote_notifications":{"type":"boolean","x-stream-index":"018"},"apn_supports_voip_notifications":{"type":"boolean","x-stream-index":"017"},"apn_team_id":{"type":"string","x-stream-index":"011"},"apn_topic":{"type":"string","x-stream-index":"012"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"006"},"disabled_reason":{"type":"string","x-stream-index":"007"},"firebase_apn_template":{"type":"string","x-stream-index":"023"},"firebase_credentials":{"type":"string","x-stream-index":"020"},"firebase_data_template":{"type":"string","x-stream-index":"021"},"firebase_host":{"type":"string","x-stream-index":"024"},"firebase_notification_template":{"type":"string","x-stream-index":"022"},"firebase_server_key":{"type":"string","x-stream-index":"019"},"huawei_app_id":{"type":"string","x-stream-index":"025"},"huawei_app_secret":{"type":"string","x-stream-index":"026"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"005"},"xiaomi_app_secret":{"type":"string","x-stream-index":"028"},"xiaomi_package_name":{"type":"string","x-stream-index":"027"}},"required":["name","type","created_at","updated_at"],"type":"object"},"QueryBannedUsersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"003.006"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.005"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"003.008"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.007"},"exclude_expired_bans":{"type":"boolean","x-stream-index":"006"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"type":"integer","x-stream-index":"004"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"005"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"required":["filter_conditions"],"type":"object"},"QueryBannedUsersResponse":{"nullable":true,"properties":{"bans":{"items":{"$ref":"#/components/schemas/BanResponse"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["bans","duration"],"type":"object"},"QueryChannelsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"description":"Number of channels to limit","format":"int32","title":"Limit","type":"integer","x-stream-index":"008"},"member_limit":{"description":"Number of members to limit","format":"int32","maximum":100,"minimum":0,"title":"Member limit","type":"integer","x-stream-index":"007"},"message_limit":{"description":"Number of messages to limit","format":"int32","minimum":0,"title":"Message limit","type":"integer","x-stream-index":"006"},"offset":{"description":"Channel pagination offset","format":"int32","title":"Offset","type":"integer","x-stream-index":"009"},"presence":{"title":"Presence","type":"boolean","x-stream-index":"005"},"sort":{"description":"List of sort parameters","items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"state":{"description":"Whether to update channel state or not","title":"State","type":"boolean","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"010.002"},"user_id":{"type":"string","x-stream-index":"010.001"},"watch":{"description":"Whether to start watching found channels or not","title":"Watch","type":"boolean","x-stream-index":"003"}},"title":"Query Channels Request","type":"object","x-stream-docs-page-id":"query_channels"},"QueryMembersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"006.010"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.009"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"006.012"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.011"},"filter_conditions":{"description":"Filter to apply to members","title":"Filter conditions","type":"object","x-stream-index":"004"},"id":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","x-stream-index":"002"},"limit":{"description":"Number of records to return","format":"int32","maximum":300,"minimum":0,"title":"Limit","type":"integer","x-stream-index":"006.003"},"members":{"description":"List of members to search in distinct channels","items":{"$ref":"#/components/schemas/ChannelMember"},"maximum":100,"title":"Members","type":"array","x-stream-index":"003"},"offset":{"description":"Number of records to offset","format":"int32","maximum":10000,"title":"Offset","type":"integer","x-stream-index":"006.004"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"title":"Sort","type":"array","x-stream-index":"005"},"type":{"description":"Channel type to interact with","maxLength":64,"title":"Channel type","type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"},"user_id_gt":{"type":"string","x-stream-index":"006.006"},"user_id_gte":{"type":"string","x-stream-index":"006.005"},"user_id_lt":{"type":"string","x-stream-index":"006.008"},"user_id_lte":{"type":"string","x-stream-index":"006.007"}},"required":["type","filter_conditions"],"type":"object"},"QueryMessageFlagsRequest":{"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"minimum":0,"type":"integer","x-stream-index":"003.003"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"003.004"},"show_deleted_messages":{"type":"boolean","x-stream-index":"002"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"type":"array","x-stream-index":"003.005"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"type":"object"},"QueryMessageFlagsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flags":{"items":{"$ref":"#/components/schemas/MessageFlag"},"type":"array","x-stream-index":"001"}},"required":["flags","duration"],"type":"object"},"QueryPollVotesRequest":{"nullable":true,"properties":{"filter":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"002"},"prev":{"type":"string","x-stream-index":"005.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"type":"array","x-stream-index":"004"}},"required":["poll_id"],"type":"object"},"QueryPollsRequest":{"nullable":true,"properties":{"filter":{"type":"object","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"prev":{"type":"string","x-stream-index":"005.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"type":"array","x-stream-index":"003"}},"type":"object"},"QueryPollsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"polls":{"items":{"$ref":"#/components/schemas/PollResponseData"},"type":"array","x-stream-index":"001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["polls","duration"],"type":"object"},"QueryThreadsRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"participant_limit":{"description":"Limit the number of participants returned per each thread","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","x-stream-index":"004"},"prev":{"type":"string","x-stream-index":"005.003"},"reply_limit":{"description":"Limit the number of replies returned per each thread","format":"int32","maximum":10,"minimum":0,"title":"Reply limit","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"type":"object"},"QueryThreadsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"threads":{"description":"List of enriched thread states","items":{"$ref":"#/components/schemas/ThreadStateResponse"},"title":"Threads","type":"array","x-stream-index":"001"}},"required":["threads","duration"],"type":"object"},"QueryUsersRequest":{"properties":{"filter_conditions":{"description":"User filters","title":"Filter conditions","type":"object","x-stream-docs-page-id":"query_users","x-stream-index":"001"},"id_gt":{"type":"string","x-stream-index":"005.006"},"id_gte":{"type":"string","x-stream-index":"005.005"},"id_lt":{"type":"string","x-stream-index":"005.008"},"id_lte":{"type":"string","x-stream-index":"005.007"},"include_deactivated_users":{"type":"boolean","x-stream-index":"004"},"limit":{"format":"int32","maximum":100,"minimum":0,"type":"integer","x-stream-index":"005.003"},"offset":{"format":"int32","maximum":1000,"type":"integer","x-stream-index":"005.004"},"presence":{"description":"Request user presence status","title":"Presence","type":"boolean","x-stream-index":"003"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"006.002"},"user_id":{"type":"string","x-stream-index":"006.001"}},"required":["filter_conditions"],"type":"object"},"Reaction":{"description":"Represents user reaction to a message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"008"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["message_id","type","score","created_at","updated_at","Custom"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionRemovalResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionRequest":{"description":"Represents user reaction to a message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["type"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactivateUserRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who's reactivating the user","title":"Created by ID","type":"string","x-stream-index":"004"},"name":{"description":"Set this field to put new name for the user","title":"Name","type":"string","x-stream-index":"003"},"restore_messages":{"description":"Restore previously deleted messages","title":"Restore messages","type":"boolean","x-stream-index":"002"},"user_id":{"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"ReactivateUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ReactivateUsersRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who's reactivating the users","title":"Created by ID","type":"string","x-stream-index":"003"},"restore_messages":{"description":"Restore previously deleted messages","title":"Restore messages","type":"boolean","x-stream-index":"002"},"user_ids":{"description":"User IDs to reactivate","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"ReactivateUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.002.001"},"task_id":{"type":"string","x-stream-index":"001.001"}},"required":["task_id","duration"],"type":"object"},"Read":{"nullable":true,"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"004"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["last_read","unread_messages"],"type":"object"},"RecordSettings":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RestoreUsersRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":100,"minimum":1,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"Role":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"custom":{"description":"Whether this is a custom role or built-in","title":"Custom","type":"boolean","x-stream-index":"002"},"name":{"description":"Unique role name","title":"Name","type":"string","x-stream-index":"001"},"scopes":{"description":"List of scopes where this role is currently present. `.app` means that role is present in app-level grants","items":{"type":"string"},"title":"Scopes","type":"array","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"}},"required":["name","custom","scopes","created_at","updated_at"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"SearchRequest":{"properties":{"filter_conditions":{"description":"Channel filter conditions","maximum":100,"minimum":1,"title":"Channel filter","type":"object","x-stream-docs-page-id":"query_channels","x-stream-index":"002"},"limit":{"description":"Number of messages to return","format":"int32","title":"Limit","type":"integer","x-stream-index":"004"},"message_filter_conditions":{"description":"Message filter conditions","title":"Message filter","type":"object","x-stream-index":"003"},"next":{"description":"Pagination parameter. Cannot be used with non-zero offset.","title":"Next","type":"string","x-stream-index":"007"},"offset":{"description":"Pagination offset. Cannot be used with sort or next.","format":"int32","title":"Offset","type":"integer","x-stream-index":"005"},"query":{"description":"Search phrase","title":"Query","type":"string","x-stream-index":"001"},"sort":{"description":"Sort parameters. Cannot be used with non-zero offset","items":{"$ref":"#/components/schemas/SortParam"},"title":"Sort","type":"array","x-stream-index":"006"}},"required":["filter_conditions"],"type":"object"},"SearchResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"next":{"description":"Value to pass to the next search query in order to paginate","title":"Next","type":"string","x-stream-index":"003"},"previous":{"description":"Value that points to the previous page. Pass as the next value in a search query to paginate backwards","title":"Previous","type":"string","x-stream-index":"004"},"results":{"description":"Search results","items":{"$ref":"#/components/schemas/SearchResult"},"title":"Results","type":"array","x-stream-index":"001"},"results_warning":{"$ref":"#/components/schemas/SearchWarning","description":"Warning about the search results","title":"Results Warning","x-stream-index":"002"}},"required":["results","duration"],"type":"object"},"SearchResult":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/SearchResultMessage","description":"Found message","title":"Message","x-stream-index":"001"}},"type":"object"},"SearchResultMessage":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.031"},"attachments":{"items":{"$ref":"#/components/schemas/Attachment"},"type":"array","x-stream-index":"001.011"},"before_message_send_failed":{"type":"boolean","x-stream-index":"001.043"},"channel":{"$ref":"#/components/schemas/ChannelResponse","description":"Channel object","title":"Channel","x-stream-index":"002"},"cid":{"type":"string","x-stream-index":"001.026"},"command":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.028"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"001.021"},"html":{"type":"string","x-stream-index":"001.007"},"i18n":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"001.041"},"id":{"type":"string","x-stream-index":"001.002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.037"},"latest_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.012"},"mentioned_users":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"001.049"},"mml":{"type":"string","x-stream-index":"001.005"},"own_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.013"},"parent_id":{"type":"string","x-stream-index":"001.017"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"001.048"},"pinned":{"type":"boolean","x-stream-index":"001.044"},"pinned_at":{"format":"date-time","type":"string","x-stream-index":"001.045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.047"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001.051"},"poll_id":{"type":"string","x-stream-index":"001.050"},"quoted_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.023"},"quoted_message_id":{"type":"string","x-stream-index":"001.022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.015"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.020"},"shadowed":{"type":"boolean","x-stream-index":"001.033"},"show_in_channel":{"type":"boolean","x-stream-index":"001.019"},"silent":{"type":"boolean","x-stream-index":"001.042"},"text":{"type":"string","x-stream-index":"001.004"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.025"},"type":{"type":"string","x-stream-index":"001.008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.029"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned","poll_id"],"type":"object"},"SearchWarning":{"properties":{"channel_search_cids":{"description":"Channel CIDs for the searched channels","items":{"type":"string"},"title":"Channel Search CIDs","type":"array","x-stream-index":"004"},"channel_search_count":{"description":"Number of channels searched","format":"int32","title":"Channel Search Count","type":"integer","x-stream-index":"003"},"warning_code":{"description":"Code corresponding to the warning","format":"int32","title":"Warning Code","type":"integer","x-stream-index":"002"},"warning_description":{"description":"Description of the warning","title":"Warning Description","type":"string","x-stream-index":"001"}},"required":["warning_description","warning_code"],"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/EventRequest","x-stream-index":"001"}},"required":["event"],"type":"object"},"SendMessageRequest":{"nullable":true,"properties":{"force_moderation":{"type":"boolean","x-stream-index":"007"},"keep_channel_hidden":{"type":"boolean","x-stream-index":"008"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"pending":{"type":"boolean","x-stream-index":"006"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"005"},"skip_enrich_url":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"SendMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"enforce_unique":{"description":"Whether to replace all existing user reactions","title":"Enforce unique","type":"boolean","x-stream-index":"003"},"reaction":{"$ref":"#/components/schemas/ReactionRequest","x-stream-index":"002"},"skip_push":{"description":"Skips any mobile push notifications","title":"Skip push","type":"boolean","x-stream-index":"004"}},"required":["reaction"],"type":"object"},"SendUserCustomEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/UserCustomEventRequest","x-stream-index":"002"}},"required":["event"],"type":"object"},"ShowChannelRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"ShowChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParam":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"Thread":{"description":"Represents a conversation thread linked to a specific message in a channel.","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"012"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"010"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom"],"title":"Thread","type":"object"},"ThreadParticipant":{"description":"Represents a user that is participating in a thread.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"app_pk":{"format":"int32","readOnly":true,"type":"integer","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"007"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"009"},"left_thread_at":{"description":"Left Thread At is the time when the user left the thread","format":"date-time","title":"Left Thread At","type":"string","x-stream-index":"008"},"thread_id":{"description":"Thead ID is unique string identifier of the thread","title":"ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserObject","description":"User is the user object","title":"User","x-stream-index":"006"},"user_id":{"description":"User ID is unique string identifier of the user","title":"User ID","type":"string","x-stream-index":"005"}},"required":["app_pk","channel_cid","created_at","last_read_at","Custom"],"title":"ThreadParticipant","type":"object"},"ThreadResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"created_by_user_id":{"type":"string","x-stream-index":"005"},"custom":{"type":"object","x-stream-index":"015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"010"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"004"},"parent_message_id":{"type":"string","x-stream-index":"003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"008"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"009"},"title":{"type":"string","x-stream-index":"014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom"],"type":"object"},"ThreadState":{"description":"Represents a conversation thread linked to a specific message in a channel.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"001.004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"001.003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"001.013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"001.008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"001.015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"001.012"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"001.006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"001.005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"001.010"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"001.009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"001.016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"001.014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom","latest_replies"],"title":"Thread","type":"object"},"ThreadStateResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.002"},"channel_cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.006"},"created_by_user_id":{"type":"string","x-stream-index":"001.005"},"custom":{"type":"object","x-stream-index":"001.015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"001.010"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.004"},"parent_message_id":{"type":"string","x-stream-index":"001.003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"001.008"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.009"},"title":{"type":"string","x-stream-index":"001.014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom","latest_replies"],"type":"object"},"Thresholds":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThresholdsRequest":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranslateMessageRequest":{"nullable":true,"properties":{"language":{"description":"Language to translate message to","enum":["af","sq","am","ar","az","bn","bs","bg","zh","zh-TW","hr","cs","da","fa-AF","nl","en","et","fi","fr","fr-CA","ka","de","el","ha","he","hi","hu","id","it","ja","ko","lv","ms","no","fa","ps","pl","pt","ro","ru","sr","sk","sl","so","es","es-MX","sw","sv","tl","ta","th","tr","uk","ur","vi"],"title":"Language","type":"string","x-stream-index":"002"}},"required":["language"],"type":"object"},"TruncateChannelRequest":{"nullable":true,"properties":{"hard_delete":{"description":"Permanently delete channel data (messages, reactions, etc.)","title":"Hard delete","type":"boolean","x-stream-index":"002"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"004"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"005"},"truncated_at":{"description":"Truncate channel data up to `truncated_at`. The system message (if provided) creation time is always greater than `truncated_at`","format":"date-time","title":"Truncated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"type":"object"},"TruncateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"003"}},"required":["duration"],"type":"object"},"UnmuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"001.002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"001.003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"required":["channel_cids"],"type":"object"},"UnmuteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["duration"],"type":"object"},"UnmuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"001.002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"001.003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"required":["target_ids"],"type":"object"},"UnreadCountsBatchRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":100,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"UnreadCountsBatchResponse":{"nullable":true,"properties":{"counts_by_user":{"additionalProperties":{"$ref":"#/components/schemas/UnreadCountsResponse"},"type":"object","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["counts_by_user","duration"],"type":"object"},"UnreadCountsChannel":{"properties":{"channel_id":{"type":"string","x-stream-index":"001"},"last_read":{"format":"date-time","type":"string","x-stream-index":"003"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["channel_id","unread_count","last_read"],"type":"object"},"UnreadCountsChannelType":{"properties":{"channel_count":{"format":"int32","type":"integer","x-stream-index":"002"},"channel_type":{"type":"string","x-stream-index":"001"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"003"}},"required":["channel_type","channel_count","unread_count"],"type":"object"},"UnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"003"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads"],"type":"object"},"UnreadCountsThread":{"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"003"},"parent_message_id":{"type":"string","x-stream-index":"004"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["unread_count","last_read","last_read_message_id","parent_message_id"],"type":"object"},"UpdateAppRequest":{"nullable":true,"properties":{"agora_options":{"$ref":"#/components/schemas/ConfigRequest","x-stream-index":"001.038"},"apn_config":{"$ref":"#/components/schemas/APNConfigRequest","x-stream-index":"001.003"},"async_moderation_config":{"$ref":"#/components/schemas/AsyncModerationConfigurationRequest","x-stream-index":"001.040"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.017"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.016"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.018"},"cdn_expiration_seconds":{"format":"int32","maximum":1209600,"minimum":14400,"type":"integer","x-stream-index":"001.036"},"channel_hide_members_only":{"type":"boolean","x-stream-index":"001.031"},"custom_action_handler_url":{"type":"string","x-stream-index":"001.019"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfoRequest","x-stream-index":"001.041"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.001"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.002"},"enforce_unique_usernames":{"enum":["no","app","team"],"type":"string","x-stream-index":"001.020"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfigRequest","x-stream-index":"001.028"},"firebase_config":{"$ref":"#/components/schemas/FirebaseConfigRequest","x-stream-index":"001.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/ConfigRequest","x-stream-index":"001.039"},"huawei_config":{"$ref":"#/components/schemas/HuaweiConfigRequest","x-stream-index":"001.005"},"image_moderation_block_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.014"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.012"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfigRequest","x-stream-index":"001.027"},"migrate_permissions_to_v2":{"type":"boolean","x-stream-index":"001.033"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.011"},"permission_version":{"enum":["v1","v2"],"type":"string","x-stream-index":"001.009"},"push_config":{"$ref":"#/components/schemas/PushConfigRequest","x-stream-index":"001.007"},"reminders_interval":{"format":"int32","maximum":86400,"minimum":60,"type":"integer","x-stream-index":"001.034"},"reminders_max_members":{"format":"int32","minimum":2,"type":"integer","x-stream-index":"001.035"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.029"},"sns_key":{"type":"string","x-stream-index":"001.025"},"sns_secret":{"type":"string","x-stream-index":"001.026"},"sns_topic_arn":{"type":"string","x-stream-index":"001.024"},"sqs_key":{"type":"string","x-stream-index":"001.022"},"sqs_secret":{"type":"string","x-stream-index":"001.023"},"sqs_url":{"type":"string","x-stream-index":"001.021"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.010"},"video_provider":{"enum":["agora","hms"],"type":"string","x-stream-index":"001.037"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.030"},"webhook_url":{"type":"string","x-stream-index":"001.008"},"xiaomi_config":{"$ref":"#/components/schemas/XiaomiConfigRequest","x-stream-index":"001.006"}},"type":"object"},"UpdateBlockListRequest":{"nullable":true,"properties":{"Name":{"type":"string","writeOnly":true,"x-stream-index":"001"},"words":{"description":"List of words to block","items":{"type":"string"},"minimum":1,"title":"Words","type":"array","x-stream-index":"002"}},"title":"Update block list","type":"object","x-stream-docs-page-id":"update_block_list"},"UpdateChannelPartialRequest":{"nullable":true,"properties":{"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["set","unset"],"type":"object"},"UpdateChannelPartialResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelRequest":{"nullable":true,"properties":{"accept_invite":{"description":"Set to `true` to accept the invite","title":"Accept invite","type":"boolean","x-stream-index":"008"},"add_members":{"description":"List of user IDs to add to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Add members","type":"array","x-stream-index":"001"},"add_moderators":{"description":"List of user IDs to make channel moderators","items":{"type":"string"},"maximum":100,"title":"Add moderators","type":"array","x-stream-index":"003"},"assign_roles":{"description":"List of channel member role assignments. If any specified user is not part of the channel, the request will fail","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Assign roles","type":"array","x-stream-index":"006"},"cooldown":{"description":"Sets cool down period for the channel in seconds","format":"int32","maximum":120,"minimum":0,"title":"Cool down","type":"integer","x-stream-index":"007"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"013.001"},"demote_moderators":{"description":"List of user IDs to take away moderators status from","items":{"type":"string"},"maximum":100,"title":"Demote moderators","type":"array","x-stream-index":"004"},"hide_history":{"description":"Set to `true` to hide channel's history when adding new members","title":"Hide history","type":"boolean","x-stream-index":"012"},"invites":{"description":"List of user IDs to invite to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Invites","type":"array","x-stream-index":"005"},"message":{"$ref":"#/components/schemas/MessageRequest","description":"Message to send to the chat when channel is successfully updated","title":"Message","x-stream-index":"010"},"reject_invite":{"description":"Set to `true` to reject the invite","title":"Reject invite","type":"boolean","x-stream-index":"009"},"remove_members":{"description":"List of user IDs to remove from the channel","items":{"type":"string"},"maximum":100,"title":"Remove members","type":"array","x-stream-index":"002"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"014.002"},"user_id":{"type":"string","x-stream-index":"014.001"}},"required":["remove_members","add_moderators","demote_moderators"],"title":"Channel update request","type":"object","x-stream-docs-page-id":"channel_update"},"UpdateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"003"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelTypeRequest":{"nullable":true,"properties":{"NameFromPath":{"type":"string","writeOnly":true,"x-stream-index":"001"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"007.001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"007.001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"007.001.020"},"automod_thresholds":{"$ref":"#/components/schemas/ThresholdsRequest","x-stream-index":"007.001.025"},"blocklist":{"type":"string","x-stream-index":"007.001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"007.001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptionsRequest"},"type":"array","x-stream-index":"007.001.023"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"007.003"},"connect_events":{"type":"boolean","x-stream-index":"007.001.004"},"custom_events":{"type":"boolean","x-stream-index":"007.001.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"004"},"mark_messages_pending":{"type":"boolean","x-stream-index":"007.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"007.001.018"},"message_retention":{"type":"string","x-stream-index":"007.001.017"},"mutes":{"type":"boolean","x-stream-index":"007.001.009"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest_1"},"type":"array","x-stream-index":"003"},"polls":{"type":"boolean","x-stream-index":"007.001.016"},"push_notifications":{"type":"boolean","x-stream-index":"007.001.013"},"quotes":{"type":"boolean","x-stream-index":"007.001.008"},"reactions":{"type":"boolean","x-stream-index":"007.001.006"},"read_events":{"type":"boolean","x-stream-index":"007.001.003"},"reminders":{"type":"boolean","x-stream-index":"007.001.014"},"replies":{"type":"boolean","x-stream-index":"007.001.007"},"search":{"type":"boolean","x-stream-index":"007.001.005"},"typing_events":{"type":"boolean","x-stream-index":"007.001.002"},"uploads":{"type":"boolean","x-stream-index":"007.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"007.001.011"}},"required":["automod"],"type":"object"},"UpdateChannelTypeResponse":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"003.001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"003.001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.001.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"003.001.025"},"blocklist":{"type":"string","x-stream-index":"003.001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"003.001.023"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"003.003"},"connect_events":{"type":"boolean","x-stream-index":"003.001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002.003"},"custom_events":{"type":"boolean","x-stream-index":"003.001.012"},"duration":{"type":"string","x-stream-index":"004.001"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"mark_messages_pending":{"type":"boolean","x-stream-index":"003.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"003.001.018"},"message_retention":{"type":"string","x-stream-index":"003.001.017"},"mutes":{"type":"boolean","x-stream-index":"003.001.009"},"name":{"type":"string","x-stream-index":"003.001.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"001"},"polls":{"type":"boolean","x-stream-index":"003.001.016"},"push_notifications":{"type":"boolean","x-stream-index":"003.001.013"},"quotes":{"type":"boolean","x-stream-index":"003.001.008"},"reactions":{"type":"boolean","x-stream-index":"003.001.006"},"read_events":{"type":"boolean","x-stream-index":"003.001.003"},"reminders":{"type":"boolean","x-stream-index":"003.001.014"},"replies":{"type":"boolean","x-stream-index":"003.001.007"},"search":{"type":"boolean","x-stream-index":"003.001.005"},"typing_events":{"type":"boolean","x-stream-index":"003.001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"003.002.004"},"uploads":{"type":"boolean","x-stream-index":"003.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"003.001.011"}},"required":["permissions","grants","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands","duration"],"type":"object"},"UpdateCommandRequest":{"description":"Represents custom chat command","nullable":true,"properties":{"Name":{"type":"string","writeOnly":true,"x-stream-index":"001"},"args":{"description":"Arguments help text, shown in commands auto-completion","maxLength":255,"title":"Arguments","type":"string","x-stream-index":"003"},"description":{"description":"Description, shown in commands auto-completion","maxLength":255,"title":"Description","type":"string","x-stream-index":"002"},"set":{"description":"Set name used for grouping commands","maxLength":255,"title":"Set","type":"string","x-stream-index":"004"}},"required":["description"],"title":"Command","type":"object"},"UpdateCommandResponse":{"nullable":true,"properties":{"command":{"$ref":"#/components/schemas/Command","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"UpdateMessagePartialRequest":{"nullable":true,"properties":{"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"skip_enrich_url":{"type":"boolean","x-stream-index":"001"},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["set","unset"],"type":"object"},"UpdateMessagePartialResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"UpdateMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdatePollOptionRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"id":{"maxLength":255,"type":"string","x-stream-index":"002"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"}},"required":["poll_id","id","text"],"type":"object"},"UpdatePollPartialRequest":{"nullable":true,"properties":{"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["poll_id","set","unset"],"type":"object"},"UpdatePollRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"011"},"allow_answers":{"type":"boolean","x-stream-index":"009"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"008"},"description":{"type":"string","x-stream-index":"003"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"005"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"is_closed":{"type":"boolean","x-stream-index":"010"},"max_votes_allowed":{"format":"int32","maximum":10,"type":"integer","x-stream-index":"007"},"name":{"type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest"},"maximum":100,"type":"array","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"012.002"},"user_id":{"type":"string","x-stream-index":"012.001"},"voting_visibility":{"enum":["anonymous","public"],"type":"string","x-stream-index":"006"}},"required":["id","name"],"type":"object"},"UpdateThreadPartialRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"set":{"type":"object","x-stream-index":"004.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"004.002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["set","unset"],"type":"object"},"UpdateThreadPartialResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadResponse","description":"Updated thread (not enriched)","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"UpdateUserPartialRequest":{"nullable":true,"properties":{"id":{"description":"User ID to update","title":"ID","type":"string","x-stream-index":"001"},"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["id","set","unset"],"type":"object"},"UpdateUsersRequest":{"nullable":true,"properties":{"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObjectRequest"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users"],"type":"object"},"UpdateUsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"membership_deletion_task_id":{"type":"string","x-stream-index":"002"},"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObject"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users","membership_deletion_task_id","duration"],"type":"object"},"UpsertPushProviderRequest":{"nullable":true,"properties":{"push_provider":{"$ref":"#/components/schemas/PushProviderRequest","x-stream-index":"001"}},"type":"object"},"UpsertPushProviderResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"push_provider":{"$ref":"#/components/schemas/PushProviderResponse","x-stream-index":"001"}},"required":["push_provider","duration"],"type":"object"},"UserCustomEventRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"type":{"type":"string","x-stream-index":"001"}},"required":["type"],"type":"object"},"UserMute":{"nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"target":{"$ref":"#/components/schemas/UserObject","description":"User who's muted","title":"Target","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"UserObject":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"007"},"deactivated_at":{"description":"Date of deactivation","format":"date-time","readOnly":true,"title":"Deactivated at","type":"string","x-stream-index":"012"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","readOnly":true,"title":"Deleted at","type":"string","x-stream-index":"011"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"last_active":{"description":"Date of last activity","format":"date-time","readOnly":true,"title":"Last active","type":"string","x-stream-index":"010"},"online":{"description":"Whether a user online or not","readOnly":true,"title":"Online","type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","banned","online"],"title":"User object","type":"object"},"UserObjectRequest":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettingsRequest","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"}},"required":["id"],"title":"User object","type":"object"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserRequest_1":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.005"},"ban_expires":{"format":"date-time","type":"string","x-stream-index":"001.015"},"banned":{"type":"boolean","x-stream-index":"001.014"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.007"},"deactivated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.012"},"deleted_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.011"},"id":{"type":"string","x-stream-index":"001.003"},"invisible":{"type":"boolean","x-stream-index":"001.021"},"language":{"type":"string","x-stream-index":"001.031"},"last_active":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.010"},"online":{"readOnly":true,"type":"boolean","x-stream-index":"001.020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"001.023"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.038"},"role":{"type":"string","x-stream-index":"001.004"},"shadow_banned":{"description":"Whether user is shadow banned or not","title":"Shadow banned","type":"boolean","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.032"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.008"}},"required":["id","role","Custom","banned","online","shadow_banned"],"type":"object"},"UsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"users":{"description":"List of found users","items":{"$ref":"#/components/schemas/UserResponse"},"title":"Users","type":"array","x-stream-index":"001"}},"required":["users","duration"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VoteDataRequest":{"properties":{"Option":{"$ref":"#/components/schemas/PollOptionRequest","x-stream-index":"003"},"answer_text":{"type":"string","x-stream-index":"002"},"option_id":{"maxLength":255,"type":"string","x-stream-index":"001"}},"type":"object"},"WSEvent":{"description":"Represents an BaseEvent that happened in Stream Chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"024"},"automoderation":{"type":"boolean","x-stream-index":"020"},"automoderation_scores":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"021"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"009"},"channel_id":{"type":"string","x-stream-index":"004"},"channel_type":{"type":"string","x-stream-index":"005"},"cid":{"type":"string","x-stream-index":"003"},"connection_id":{"type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"025"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"019"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"016"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"011"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"006"},"message_update":{"$ref":"#/components/schemas/MessageUpdate","x-stream-index":"007"},"parent_id":{"type":"string","x-stream-index":"022"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"012"},"poll_vote":{"$ref":"#/components/schemas/PollVote","x-stream-index":"013"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"008"},"reason":{"type":"string","x-stream-index":"018"},"team":{"type":"string","x-stream-index":"023"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"010"},"type":{"type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"014"},"user_id":{"type":"string","x-stream-index":"015"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"017"}},"required":["type","Custom","created_at"],"title":"Event","type":"object","x-stream-docs-page-id":"event_object"},"WrappedUnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"001.004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"001.005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001.001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"001.002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads","duration"],"type":"object"},"XiaomiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"package_name":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"XiaomiConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"003"},"package_name":{"type":"string","x-stream-index":"001"},"secret":{"type":"string","x-stream-index":"002"}},"type":"object"},"connectRequestQueryRequest":{"nullable":true,"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v105.1.0"},"openapi":"3.0.3","paths":{"/app":{"get":{"description":"This Method returns the application settings\n","operationId":"GetApp","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetApplicationResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get App Settings","tags":["Settings"]},"patch":{"description":"This Method updates one or more application settings\n","operationId":"UpdateApp","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAppRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update App Settings","tags":["Settings"]}},"/blocklists":{"get":{"description":"Returns all available block lists\n","operationId":"ListBlockLists","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListBlockListResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List block lists","tags":["Settings","Moderation"]},"post":{"description":"Creates a new application blocklist, once created the blocklist can be used by any channel type\n","operationId":"CreateBlockList","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBlockListRequest"}}},"description":"Block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create block list","tags":["Settings","Moderation"]}},"/blocklists/{name}":{"delete":{"description":"Deletes previously created application blocklist\n","operationId":"DeleteBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete block list","tags":["Settings","Moderation"]},"get":{"description":"Returns block list by given name\n","operationId":"GetBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBlockListResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get block list","tags":["Settings","Moderation"]},"put":{"description":"Updates contents of the block list\n","operationId":"UpdateBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateBlockListRequest"}}},"description":"Update block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update block list","tags":["Settings","Moderation"]}},"/blocklists/{type}/validate":{"post":{"description":"Runs specific blocklist validation, returns an appropriate error if the blocklist is invalid\n","operationId":"ValidateBlockList","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBlockListRequest"}}},"description":"Block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Validate Blocklist","tags":["Moderation"]}},"/calls":{"post":{"description":"Retrieves the token to join a call\n\nRequired permissions:\n- JoinCall\n- ReadChannel\n","operationId":"GetCallToken","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Token"}},"/calls/{call_id}":{"post":{"description":"Retrieves the token to join a call\n\nRequired permissions:\n- JoinCall\n- ReadChannel\n","operationId":"GetCallToken","parameters":[{"in":"path","name":"call_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTokenResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Token"}},"/channels":{"post":{"description":"Query channels with filter query\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryChannelsRequest"}}},"description":"Query Channels Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelsResponse"}}},"description":"Channels list"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query channels","tags":["Channels"]}},"/channels/delete":{"post":{"description":"Allows to delete several channels at once asynchronously\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deletes channels asynchronously","tags":["Channels","GDPR"]}},"/channels/read":{"post":{"description":"Marks channels as read up to the specific message. If no channels is given, mark all channel as read\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkChannelsRead","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChannelsReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark channels as read","tags":["Channels","Messages"]}},"/channels/{type}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/channels/{type}/{id}":{"delete":{"description":"Deletes channel\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"hard_delete","schema":{"type":"boolean","x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel","tags":["Channels"]},"patch":{"description":"Updates certain fields of the channel\n\nSends events:\n- channel.updated\n\nRequired permissions:\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n","operationId":"UpdateChannelPartial","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update channel","tags":["Channels"]},"post":{"description":"Change channel data\n\nSends events:\n- channel.updated\n- member.added\n- member.removed\n- member.updated\n- message.new\n\nRequired permissions:\n- AddOwnChannelMembership\n- RemoveOwnChannelMembership\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n- UpdateChannelMembers\n","operationId":"UpdateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelRequest"}}},"description":"Channel update request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel","tags":["Channels"]}},"/channels/{type}/{id}/call":{"post":{"description":"Creates a call\n\nRequired permissions:\n- CreateCall\n- ReadChannel\n","operationId":"CreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create a call"}},"/channels/{type}/{id}/event":{"post":{"description":"Sends event to the channel\n\nRequired permissions:\n- SendCustomEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send event","tags":["Events"]}},"/channels/{type}/{id}/file":{"delete":{"description":"Deletes previously uploaded file\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete file","tags":["Messages","Files"]},"post":{"description":"Uploads file\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload file","tags":["Messages","Files"]}},"/channels/{type}/{id}/hide":{"post":{"description":"Marks channel as hidden for current user\n\nSends events:\n- channel.hidden\n\nRequired permissions:\n- ReadChannel\n","operationId":"HideChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Hide channel","tags":["Channels"]}},"/channels/{type}/{id}/image":{"delete":{"description":"Deletes previously uploaded image\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete image","tags":["Messages","Files"]},"post":{"description":"Uploads image\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ImageUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload image","tags":["Messages","Files"]}},"/channels/{type}/{id}/message":{"post":{"description":"Sends new message to the specified channel\n\nSends events:\n- message.new\n- message.updated\n\nRequired permissions:\n- AddLinks\n- CreateMessage\n- PinMessage\n- SkipChannelCooldown\n- SkipMessageModeration\n- UseFrozenChannel\n","operationId":"SendMessage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"009.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"009.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send new message","tags":["Messages"]}},"/channels/{type}/{id}/messages":{"get":{"description":"Returns list messages found by IDs\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetManyMessages","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"ids","schema":{"description":"List of comma-separated IDs","items":{"type":"string"},"maximum":50,"minimum":1,"title":"IDs","type":"array","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetManyMessagesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get many messages","tags":["Messages"]}},"/channels/{type}/{id}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID (maximum length of 64 characters)","title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/channels/{type}/{id}/read":{"post":{"description":"Marks channel as read up to the specific message\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkRead","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark read","tags":["Channels","Messages"]}},"/channels/{type}/{id}/show":{"post":{"description":"Shows previously hidden channel\n\nSends events:\n- channel.visible\n","operationId":"ShowChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Show channel","tags":["Channels"]}},"/channels/{type}/{id}/truncate":{"post":{"description":"Truncates channel\n\nSends events:\n- channel.truncated\n\nRequired permissions:\n- DeleteChannel\n- TruncateChannel\n","operationId":"TruncateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Truncate channel","tags":["Channels"]}},"/channels/{type}/{id}/unread":{"post":{"description":"Marks channel as unread from a specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkUnread","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkUnreadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark unread","tags":["Channels","Messages"]}},"/channeltypes":{"get":{"description":"Lists all available channel types\n","operationId":"ListChannelTypes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListChannelTypesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List channel types","tags":["Settings","Channel types"]},"post":{"description":"Creates new channel type\n","operationId":"CreateChannelType","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateChannelTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateChannelTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create channel type","tags":["Settings","Channel types"]}},"/channeltypes/{name}":{"delete":{"description":"Deletes channel type\n","operationId":"DeleteChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Channel type name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel type","tags":["Settings","Channel types"]},"get":{"description":"Gets channel type\n","operationId":"GetChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Channel type name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get channel type","tags":["Settings","Channel types"]},"put":{"description":"Updates channel type\n","operationId":"UpdateChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel type","tags":["Settings","Channel types"]}},"/check_push":{"post":{"description":"Sends a test message via push, this is a test endpoint to verify your push settings\n","operationId":"CheckPush","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckPushRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckPushResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check push","tags":["Settings","Testing"]}},"/check_sns":{"post":{"description":"Validates Amazon SNS configuration\n","operationId":"CheckSNS","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSNSRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSNSResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check SNS","tags":["Settings","Testing"]}},"/check_sqs":{"post":{"description":"Validates Amazon SQS credentials\n","operationId":"CheckSQS","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSQSRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSQSResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check SQS","tags":["Settings","Testing"]}},"/commands":{"get":{"description":"Returns all custom commands\n","operationId":"ListCommands","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListCommandsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List commands","tags":["Custom commands"]},"post":{"description":"Creates custom chat command\n","operationId":"CreateCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommandRequest"}}},"description":"Command","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create command","tags":["Custom commands"]}},"/commands/{name}":{"delete":{"description":"Deletes custom chat command\n","operationId":"DeleteCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete command","tags":["Custom commands"]},"get":{"description":"Returns custom command by its name\n","operationId":"GetCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get command","tags":["Custom commands"]},"put":{"description":"Updates custom chat command\n","operationId":"UpdateCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Unique command name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCommandRequest"}}},"description":"Command","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update command","tags":["Custom commands"]}},"/connect":{"get":{"description":"Establishes WebSocket connection for user\n\nSends events:\n- user.updated\n","operationId":"Connect","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Connect (WebSocket)","tags":["Users"]}},"/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device","tags":["Devices"]},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices","tags":["Devices"]},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device","tags":["Devices","Push"]}},"/export/users":{"post":{"description":"Exports user profile, reactions and messages for list of given users\n","operationId":"ExportUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export users","tags":["Users"]}},"/export_channels":{"post":{"description":"Exports channel data to JSON file\n","operationId":"ExportChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export channels","tags":["Channels"]}},"/export_channels/{id}":{"get":{"description":"\n","operationId":"GetExportChannelsStatus","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Task ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetExportChannelsStatusResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export channels status","tags":["Channels"]}},"/guest":{"post":{"description":"Creates guest user\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create guest","tags":["Users"]}},"/import_urls":{"post":{"description":"Creates a new import URL\n","operationId":"CreateImportURL","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportURLRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportURLResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create import URL","tags":["Imports"]}},"/imports":{"get":{"description":"Gets an import\n","operationId":"ListImports","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListImportsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get import","tags":["Imports"]},"post":{"description":"Creates a new import\n","operationId":"CreateImport","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create import","tags":["Imports"]}},"/imports/{id}":{"get":{"description":"Gets an import\n","operationId":"GetImport","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetImportResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get import","tags":["Imports"]}},"/longpoll":{"get":{"description":"WebSocket fallback transport endpoint\n\nSends events:\n- user.updated\n","operationId":"LongPoll","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"},{"in":"query","name":"connection_id","schema":{"maxLength":36,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Long Poll (Transport)","tags":["Users"]}},"/members":{"get":{"description":"Find and filter channel members\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryMembers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query members","tags":["Channels"]}},"/messages/{id}":{"delete":{"description":"Deletes message\n\nSends events:\n- message.deleted\n\nRequired permissions:\n- DeleteMessage\n","operationId":"DeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"hard","schema":{"description":"Delete all message reactions and replies as well","title":"Hard","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"deleted_by","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete message","tags":["Messages"]},"get":{"description":"Returns message by ID\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"show_deleted_message","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageWithPendingMetadataResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get message","tags":["Messages"]},"post":{"description":"Updates message with new data\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update message","tags":["Messages"]},"put":{"description":"Updates certain fields of the message\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessagePartial","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially message update","tags":["Messages"]}},"/messages/{id}/action":{"post":{"description":"Executes message command action with given parameters\n\nSends events:\n- message.new\n\nRequired permissions:\n- RunMessageAction\n","operationId":"RunMessageAction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageActionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Run message command action","tags":["Messages"]}},"/messages/{id}/commit":{"post":{"description":"Commits a pending message, which will make it visible in the channel\n\nSends events:\n- message.new\n- message.updated\n","operationId":"CommitMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Commit message"}},"/messages/{id}/reaction":{"post":{"description":"Sends reaction to specified message\n\nSends events:\n- reaction.new\n- reaction.updated\n\nRequired permissions:\n- CreateReaction\n- UseFrozenChannel\n","operationId":"SendReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to send reaction for","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction","tags":["Messages","Reactions"]}},"/messages/{id}/reaction/{type}":{"delete":{"description":"Removes user reaction from the message\n\nSends events:\n- reaction.deleted\n\nRequired permissions:\n- DeleteReaction\n","operationId":"DeleteReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to remove reaction from","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"type","required":true,"schema":{"description":"Reaction type to remove","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionRemovalResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete reaction","tags":["Messages","Reactions"]}},"/messages/{id}/reactions":{"get":{"description":"Returns list of reactions of specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReactions","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"limit","schema":{"description":"Number of records to return","format":"int32","title":"Limit","type":"integer","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"offset","schema":{"description":"Number of records to offset","format":"int32","title":"Offset","type":"integer","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetReactionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get reactions","tags":["Messages","Reactions"]}},"/messages/{id}/translate":{"post":{"description":"Translates message to a given language using automated translation software\n\nSends events:\n- message.updated\n\nRequired permissions:\n- ReadChannel\n","operationId":"TranslateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Translate message","tags":["Messages"]}},"/messages/{id}/undelete":{"post":{"description":"Undelete a message that was previously soft-deleted\n\nSends events:\n- message.undeleted\n","operationId":"UndeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Undelete message","tags":["Messages"]}},"/messages/{message_id}/polls/{poll_id}/vote":{"post":{"description":"Cast a vote on a poll\n\nSends events:\n- poll.vote_casted\n\nRequired permissions:\n- CastVote\n","operationId":"CastPollVote","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CastPollVoteRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVoteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Cast vote","tags":["Polls"]}},"/messages/{message_id}/polls/{poll_id}/vote/{vote_id}":{"delete":{"description":"Delete a vote from a poll\n\nSends events:\n- poll.vote_removed\n\nRequired permissions:\n- CastVote\n","operationId":"RemovePollVote","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"path","name":"vote_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"004"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVoteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete vote","tags":["Polls"]}},"/messages/{parent_id}/replies":{"get":{"description":"Returns replies (thread) of the message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReplies","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"description":"ID of a message which replies to return","title":"Parent ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"id_gte","schema":{"type":"string","x-stream-index":"002.001.003"}},{"in":"query","name":"id_gt","schema":{"type":"string","x-stream-index":"002.001.004"}},{"in":"query","name":"id_lte","schema":{"type":"string","x-stream-index":"002.001.005"}},{"in":"query","name":"id_lt","schema":{"type":"string","x-stream-index":"002.001.006"}},{"in":"query","name":"created_at_after_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.007"}},{"in":"query","name":"created_at_after","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.008"}},{"in":"query","name":"created_at_before_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.009"}},{"in":"query","name":"created_at_before","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.010"}},{"in":"query","name":"id_around","schema":{"type":"string","x-stream-index":"002.001.011"}},{"in":"query","name":"created_at_around","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.012"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get replies","tags":["Messages"]}},"/moderation/ban":{"delete":{"description":"Removes previously applied ban\n\nSends events:\n- user.unbanned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Unban","parameters":[{"in":"query","name":"target_user_id","schema":{"type":"string","x-stream-index":"001"}},{"in":"query","name":"type","schema":{"type":"string","x-stream-index":"002"}},{"in":"query","name":"id","schema":{"type":"string","x-stream-index":"003"}},{"in":"query","name":"created_by","schema":{"type":"string","x-stream-index":"004"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unban user","tags":["Users","Moderation"]},"post":{"description":"Restricts user activity either in specific channel or globally\n\nSends events:\n- user.banned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Ban","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BanRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Ban user","tags":["Users","Moderation"]}},"/moderation/flag":{"post":{"description":"Reports message or user for review by moderators\n\nSends events:\n- message.flagged\n- user.flagged\n\nRequired permissions:\n- FlagMessage\n- FlagUser\n","operationId":"Flag","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Flag","tags":["Moderation","Messages","Users"]}},"/moderation/flags/message":{"get":{"description":"Find and filter message flags\n\nRequired permissions:\n- ReadMessageFlags\n","operationId":"QueryMessageFlags","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Message Flags","tags":["Messages","Moderation"]}},"/moderation/mute":{"post":{"description":"Mutes one or several users\n\nSends events:\n- user.muted\n\nRequired permissions:\n- MuteUser\n","operationId":"MuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute user","tags":["Users","Moderation"]}},"/moderation/mute/channel":{"post":{"description":"Mutes channel for user\n\nSends events:\n- channel.muted\n\nRequired permissions:\n- MuteChannel\n","operationId":"MuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute channel","tags":["Channels"]}},"/moderation/unmute":{"post":{"description":"Unmutes previously muted user\n\nSends events:\n- user.unmuted\n\nRequired permissions:\n- MuteUser\n","operationId":"UnmuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute user","tags":["Users","Moderation"]}},"/moderation/unmute/channel":{"post":{"description":"Unmutes channel for user\n\nSends events:\n- channel.unmuted\n\nRequired permissions:\n- MuteChannel\n","operationId":"UnmuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute channel","tags":["Channels"]}},"/og":{"get":{"description":"Get an OpenGraph attachment for a link\n","operationId":"GetOG","parameters":[{"in":"query","name":"url","schema":{"description":"URL to be scraped","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOGResponse"}}},"description":"Get OG Attachment"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get OG","tags":["Messages"]}},"/permissions":{"get":{"description":"Lists all available permissions\n","operationId":"ListPermissions","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List permissions","tags":["Permissions V2"]}},"/permissions/{id}":{"get":{"description":"Gets custom permission\n","operationId":"GetPermission","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Permission ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCustomPermissionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get permission","tags":["Permissions V2"]}},"/polls":{"post":{"description":"Creates a new poll\n\nSends events:\n- poll.created\n\nRequired permissions:\n- CreatePoll\n","operationId":"CreatePoll","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePollRequest"}}},"description":"Create Poll Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create poll","tags":["Polls"]},"put":{"description":"Updates a poll\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePoll","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update poll","tags":["Polls"]}},"/polls/query":{"post":{"description":"Queries polls\n","operationId":"QueryPolls","parameters":[{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query polls","tags":["Polls"]}},"/polls/{poll_id}":{"delete":{"description":"Deletes a poll\n\nSends events:\n- poll.deleted\n\nRequired permissions:\n- DeletePoll\n","operationId":"DeletePoll","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete poll","tags":["Polls"]},"get":{"description":"Retrieves a poll\n","operationId":"GetPoll","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get poll","tags":["Polls"]},"patch":{"description":"Updates a poll partially\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePollPartial","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partial update poll","tags":["Polls"]}},"/polls/{poll_id}/options":{"post":{"description":"Creates a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- CastVote\n- UpdatePoll\n","operationId":"CreatePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePollOptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create poll option","tags":["Polls"]},"put":{"description":"Updates a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollOptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update poll option","tags":["Polls"]}},"/polls/{poll_id}/options/{option_id}":{"delete":{"description":"Deletes a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"DeletePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"path","name":"option_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete poll option","tags":["Polls"]},"get":{"description":"Retrieves a poll option\n","operationId":"GetPollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"path","name":"option_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get poll option","tags":["Polls"]}},"/polls/{poll_id}/votes":{"post":{"description":"Queries votes\n","operationId":"QueryPollVotes","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollVotesRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVotesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query votes","tags":["Polls"]}},"/push_providers":{"get":{"description":"List details of all push providers.\n","operationId":"ListPushProviders","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPushProvidersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List push providers","tags":["Push","Settings"]},"post":{"description":"Upsert a push provider for v2 with multi bundle/package support\n","operationId":"UpsertPushProvider","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertPushProviderRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertPushProviderResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert a push provider","tags":["Server-side"]}},"/push_providers/{type}/{name}":{"delete":{"description":"Delete a push provider from v2 with multi bundle/package support. v1 isn't supported in this endpoint\n","operationId":"DeletePushProvider","parameters":[{"in":"path","name":"type","required":true,"schema":{"enum":["apn","firebase","huawei","xiaomi"],"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"name","required":true,"schema":{"maxLength":36,"minLength":1,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete a push provider","tags":["Push","Settings"]}},"/query_banned_users":{"get":{"description":"Find and filter channel scoped or global user bans\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryBannedUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Banned Users","tags":["Users","Moderation"]}},"/rate_limits":{"get":{"description":"Get rate limits usage and quotas\n","operationId":"GetRateLimits","parameters":[{"in":"query","name":"server_side","schema":{"description":"Whether to include server-side platform limits or not","title":"Server-side","type":"boolean","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"android","schema":{"description":"Whether to include Android platform limits or not","title":"Android","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"ios","schema":{"description":"Whether to include iOS platform limits or not","title":"iOS","type":"boolean","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"web","schema":{"description":"Whether to include web platform limits or not","title":"Web","type":"boolean","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"endpoints","schema":{"description":"Specific endpoints to show limits for, as a comma-separated list of values","title":"Endpoints","type":"string","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRateLimitsResponse"}}},"description":"Get Rate Limits Response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get rate limits","tags":["Settings"]}},"/roles":{"get":{"description":"Lists all available roles\n","operationId":"ListRoles","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRolesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List roles","tags":["Permissions V2"]},"post":{"description":"Creates custom role\n","operationId":"CreateRole","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create role","tags":["Permissions V2"]}},"/roles/{name}":{"delete":{"description":"Deletes custom role\n","operationId":"DeleteRole","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Role name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete role","tags":["Permissions V2"]}},"/search":{"get":{"description":"Search messages across channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Search","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest","description":"JSON object with search payload","title":"Payload","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Search messages","tags":["Channels","Messages"]}},"/tasks/{id}":{"get":{"description":"Gets status of a task\n","operationId":"GetTask","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Task ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTaskResponse"}}},"description":"Get Task Response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get status of a task","tags":["Tasks"]}},"/threads":{"post":{"description":"Returns the list of threads for specific user\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryThreads","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Threads","tags":["Threads"]}},"/threads/{message_id}":{"get":{"description":"Return a specific thread\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetThread","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"watch","schema":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"reply_limit","schema":{"description":"Limit the number of replies returned","format":"int32","minimum":0,"title":"Reply limit","type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"participant_limit","schema":{"description":"Limit the number of participants returned","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetThreadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Thread","tags":["Threads"]},"patch":{"description":"Updates certain fields of the thread\n\nSends events:\n- thread.updated\n\nRequired permissions:\n- ReadChannel\n- UpdateThread\n","operationId":"UpdateThreadPartial","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update thread","tags":["Threads","Channels"]}},"/unread":{"get":{"description":"Fetch unread counts for a single user\n","operationId":"UnreadCounts","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WrappedUnreadCountsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unread counts","tags":["Channels"]}},"/unread_batch":{"post":{"description":"Fetch unread counts in batch for multiple users in one call\n","operationId":"UnreadCountsBatch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnreadCountsBatchRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnreadCountsBatchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Batch unread counts","tags":["Channels"]}},"/users":{"get":{"description":"Find and filter users\n\nRequired permissions:\n- SearchUser\n","operationId":"QueryUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query users","tags":["Users"]},"patch":{"description":"Updates certain fields of the user\n\nSends events:\n- user.presence.changed\n- user.updated\n","operationId":"UpdateUsersPartial","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update user","tags":["Users"]},"post":{"description":"Update or create users in bulk\n\nSends events:\n- user.updated\n","operationId":"UpdateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert users","tags":["Users"]}},"/users/deactivate":{"post":{"description":"Deactivate users in batches\n\nSends events:\n- user.deactivated\n","operationId":"DeactivateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deactivate users","tags":["Users","GDPR","Moderation"]}},"/users/delete":{"post":{"description":"Deletes users and optionally all their belongings asynchronously.\n\nSends events:\n- channel.deleted\n- user.deleted\n","operationId":"DeleteUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete Users","tags":["Users","GDPR","Moderation"]}},"/users/reactivate":{"post":{"description":"Reactivate users in batches\n\nSends events:\n- user.reactivated\n","operationId":"ReactivateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reactivate users","tags":["Users","GDPR","Moderation"]}},"/users/restore":{"post":{"description":"Restore soft deleted users\n","operationId":"RestoreUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestoreUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Restore users","tags":["Users"]}},"/users/{user_id}/deactivate":{"post":{"description":"Deactivates user with possibility to activate it back\n\nSends events:\n- user.deactivated\n","operationId":"DeactivateUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User ID","type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deactivate user","tags":["Users","GDPR","Moderation"]}},"/users/{user_id}/event":{"post":{"description":"Sends a custom event to a user\n\nSends events:\n- custom\n","operationId":"SendUserCustomEvent","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendUserCustomEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send user event","tags":["Events"]}},"/users/{user_id}/export":{"get":{"description":"Exports the user's profile, reactions and messages. Raises an error if a user has more than 10k messages or reactions\n","operationId":"ExportUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export user","tags":["Users"]}},"/users/{user_id}/reactivate":{"post":{"description":"Activates user who's been deactivated previously\n\nSends events:\n- user.reactivated\n","operationId":"ReactivateUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User ID","type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reactivate user","tags":["Users","GDPR","Moderation"]}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file diff --git a/openapi/chat-openapi.yaml b/openapi/chat-openapi.yaml index 6f3f0e3b..a5f76da0 100644 --- a/openapi/chat-openapi.yaml +++ b/openapi/chat-openapi.yaml @@ -193,7 +193,7 @@ components: properties: agora_options: $ref: '#/components/schemas/Config' - x-stream-index: "001.038" + x-stream-index: "001.039" allowed_flag_reasons: items: type: string @@ -219,7 +219,7 @@ components: cdn_expiration_seconds: format: int32 type: integer - x-stream-index: "001.036" + x-stream-index: "001.037" channel_configs: additionalProperties: $ref: '#/components/schemas/ChannelConfig' @@ -234,7 +234,7 @@ components: x-stream-index: "001.021" datadog_info: $ref: '#/components/schemas/DataDogInfo' - x-stream-index: "001.041" + x-stream-index: "001.042" disable_auth_checks: type: boolean x-stream-index: "001.010" @@ -251,7 +251,7 @@ components: items: $ref: '#/components/schemas/GeofenceResponse' type: array - x-stream-index: "001.040" + x-stream-index: "001.041" grants: additionalProperties: items: @@ -261,7 +261,7 @@ components: x-stream-index: "001.032" hms_options: $ref: '#/components/schemas/Config' - x-stream-index: "001.039" + x-stream-index: "001.040" image_moderation_enabled: type: boolean x-stream-index: "001.015" @@ -292,13 +292,16 @@ components: type: array type: object x-stream-index: "001.007" + polls_enabled: + type: boolean + x-stream-index: "001.034" push_notifications: $ref: '#/components/schemas/PushNotificationFields' x-stream-index: "001.003" reminders_interval: format: int32 type: integer - x-stream-index: "001.035" + x-stream-index: "001.036" revoke_tokens_issued_before: format: date-time type: string @@ -334,12 +337,12 @@ components: x-stream-index: "001.013" video_provider: type: string - x-stream-index: "001.037" + x-stream-index: "001.038" webhook_events: items: type: string type: array - x-stream-index: "001.034" + x-stream-index: "001.035" webhook_url: type: string x-stream-index: "001.004" @@ -372,6 +375,7 @@ components: - image_upload_config - grants - campaign_enabled + - polls_enabled - webhook_events - reminders_interval - cdn_expiration_seconds @@ -406,7 +410,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "018" + x-stream-index: "020" actions: items: $ref: '#/components/schemas/Action' @@ -443,21 +447,27 @@ components: x-stream-index: "014" giphy: $ref: '#/components/schemas/Images' - x-stream-index: "019" + x-stream-index: "021" image_url: type: string x-stream-index: "011" og_scrape_url: type: string - x-stream-index: "020" + x-stream-index: "022" original_height: format: int32 type: integer - x-stream-index: "022" + x-stream-index: "024" original_width: format: int32 type: integer - x-stream-index: "021" + x-stream-index: "023" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "019" + poll_id: + type: string + x-stream-index: "018" pretext: type: string x-stream-index: "004" @@ -474,7 +484,7 @@ components: type: string x-stream-index: "009" type: - description: Attachment type (e.g. image, video, url) + description: Attachment type (e.g. image, video, url, poll) title: Type type: string x-stream-index: "001" @@ -489,7 +499,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "018" + x-stream-index: "020" actions: items: $ref: '#/components/schemas/ActionRequest' @@ -526,21 +536,27 @@ components: x-stream-index: "014" giphy: $ref: '#/components/schemas/ImagesRequest' - x-stream-index: "019" + x-stream-index: "021" image_url: type: string x-stream-index: "011" og_scrape_url: type: string - x-stream-index: "020" + x-stream-index: "022" original_height: format: int32 type: integer - x-stream-index: "022" + x-stream-index: "024" original_width: format: int32 type: integer - x-stream-index: "021" + x-stream-index: "023" + poll: + $ref: '#/components/schemas/PollRequest' + x-stream-index: "019" + poll_id: + type: string + x-stream-index: "018" pretext: type: string x-stream-index: "004" @@ -557,7 +573,7 @@ components: type: string x-stream-index: "009" type: - description: Attachment type (e.g. image, video, url) + description: Attachment type (e.g. image, video, url, poll) title: Type type: string x-stream-index: "001" @@ -578,6 +594,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettings' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -891,6 +910,25 @@ components: - UpdatedAt - ExternalStorage type: object + CastPollVoteRequest: + nullable: true + properties: + poll_id: + maxLength: 255 + type: string + x-stream-index: "002" + user: + $ref: '#/components/schemas/UserRequest' + x-stream-index: "004.002" + user_id: + type: string + x-stream-index: "004.001" + vote: + $ref: '#/components/schemas/VoteDataRequest' + x-stream-index: "003" + required: + - poll_id + type: object Channel: properties: Custom: @@ -984,39 +1022,39 @@ components: items: type: string type: array - x-stream-index: "001.023" + x-stream-index: "001.024" automod: enum: - disabled - simple - AI type: string - x-stream-index: "001.018" + x-stream-index: "001.019" automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: "001.019" + x-stream-index: "001.020" automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: "001.024" + x-stream-index: "001.025" blocklist: type: string - x-stream-index: "001.020" + x-stream-index: "001.021" blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: "001.021" + x-stream-index: "001.022" blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: "001.022" + x-stream-index: "001.023" commands: description: List of commands that channel supports items: @@ -1041,16 +1079,19 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: "001.017" + x-stream-index: "001.018" message_retention: type: string - x-stream-index: "001.016" + x-stream-index: "001.017" mutes: type: boolean x-stream-index: "001.009" name: type: string x-stream-index: "001.001" + polls: + type: boolean + x-stream-index: "001.016" push_notifications: type: boolean x-stream-index: "001.013" @@ -1101,6 +1142,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -1182,39 +1224,39 @@ components: items: type: string type: array - x-stream-index: 001.002.023 + x-stream-index: 001.002.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 001.002.018 + x-stream-index: 001.002.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.002.019 + x-stream-index: 001.002.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 001.002.024 + x-stream-index: 001.002.025 blocklist: type: string - x-stream-index: 001.002.020 + x-stream-index: 001.002.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.002.021 + x-stream-index: 001.002.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 001.002.022 + x-stream-index: 001.002.023 commands: items: $ref: '#/components/schemas/Command' @@ -1249,16 +1291,19 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 001.002.017 + x-stream-index: 001.002.018 message_retention: type: string - x-stream-index: 001.002.016 + x-stream-index: 001.002.017 mutes: type: boolean x-stream-index: 001.002.009 name: type: string x-stream-index: 001.002.001 + polls: + type: boolean + x-stream-index: 001.002.016 push_notifications: type: boolean x-stream-index: 001.002.013 @@ -1311,6 +1356,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -1933,39 +1979,39 @@ components: items: type: string type: array - x-stream-index: 003.002.023 + x-stream-index: 003.002.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 003.002.018 + x-stream-index: 003.002.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 003.002.019 + x-stream-index: 003.002.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 003.002.024 + x-stream-index: 003.002.025 blocklist: type: string - x-stream-index: 003.002.020 + x-stream-index: 003.002.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 003.002.021 + x-stream-index: 003.002.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 003.002.022 + x-stream-index: 003.002.023 commands: description: List of commands that channel supports items: @@ -1997,10 +2043,10 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 003.002.017 + x-stream-index: 003.002.018 message_retention: type: string - x-stream-index: 003.002.016 + x-stream-index: 003.002.017 mutes: type: boolean x-stream-index: 003.002.009 @@ -2012,6 +2058,9 @@ components: $ref: '#/components/schemas/PolicyRequest' type: array x-stream-index: "001" + polls: + type: boolean + x-stream-index: 003.002.016 push_notifications: type: boolean x-stream-index: 003.002.013 @@ -2066,6 +2115,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -2485,7 +2535,7 @@ components: - AI title: Auto moderation type: string - x-stream-index: "016" + x-stream-index: "017" automod_behavior: description: Sets behavior of automatic moderation enum: @@ -2493,12 +2543,12 @@ components: - block title: Auto moderation behavior type: string - x-stream-index: "017" + x-stream-index: "018" blocklist: description: Name of the blocklist to use title: Blocklist type: string - x-stream-index: "021" + x-stream-index: "022" blocklist_behavior: description: Sets behavior of blocklist enum: @@ -2507,19 +2557,19 @@ components: - shadow_block title: Blocklist behavior type: string - x-stream-index: "022" + x-stream-index: "023" blocklists: items: $ref: '#/components/schemas/BlockListOptionsRequest' type: array - x-stream-index: "023" + x-stream-index: "024" commands: description: List of commands that channel supports items: type: string title: Commands type: array - x-stream-index: "018" + x-stream-index: "019" connect_events: description: Connect events support title: Connect events @@ -2536,7 +2586,7 @@ components: type: string type: array type: object - x-stream-index: "020" + x-stream-index: "021" mark_messages_pending: description: Marks messages as pending by default title: Mark messages pending @@ -2547,7 +2597,7 @@ components: format: int32 title: Maximum message length type: integer - x-stream-index: "015" + x-stream-index: "016" mutes: description: Enables mutes title: Mutes @@ -2564,7 +2614,12 @@ components: $ref: '#/components/schemas/PolicyRequest_1' title: Permissions type: array - x-stream-index: "019" + x-stream-index: "020" + polls: + description: Enables polls + title: Polls + type: boolean + x-stream-index: "014" push_notifications: description: Enables push notifications title: Push notifications @@ -2616,39 +2671,39 @@ components: items: type: string type: array - x-stream-index: 001.001.023 + x-stream-index: 001.001.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 001.001.018 + x-stream-index: 001.001.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.001.019 + x-stream-index: 001.001.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 001.001.024 + x-stream-index: 001.001.025 blocklist: type: string - x-stream-index: 001.001.020 + x-stream-index: 001.001.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.001.021 + x-stream-index: 001.001.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 001.001.022 + x-stream-index: 001.001.023 commands: items: type: string @@ -2681,10 +2736,10 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 001.001.017 + x-stream-index: 001.001.018 message_retention: type: string - x-stream-index: 001.001.016 + x-stream-index: 001.001.017 mutes: type: boolean x-stream-index: 001.001.009 @@ -2696,6 +2751,9 @@ components: $ref: '#/components/schemas/PolicyRequest' type: array x-stream-index: "002" + polls: + type: boolean + x-stream-index: 001.001.016 push_notifications: type: boolean x-stream-index: 001.001.013 @@ -2746,6 +2804,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -2889,6 +2948,103 @@ components: - upload_url - duration type: object + CreatePollOptionRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "004" + poll_id: + maxLength: 255 + type: string + x-stream-index: "001" + position: + format: int32 + type: integer + x-stream-index: "003" + text: + type: string + x-stream-index: "002" + user: + $ref: '#/components/schemas/UserRequest' + x-stream-index: "005.002" + user_id: + type: string + x-stream-index: "005.001" + required: + - poll_id + - text + type: object + CreatePollRequest: + description: Contains all information needed to create a new poll + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "011" + allow_answers: + description: Indicates whether users can suggest user defined answers + title: Allow answers + type: boolean + x-stream-index: "009" + allow_user_suggested_options: + type: boolean + x-stream-index: "008" + description: + description: A description of the poll + title: Description + type: string + x-stream-index: "003" + enforce_unique_vote: + description: Indicates whether users can cast multiple votes + title: Multiple choice + type: boolean + x-stream-index: "006" + id: + maxLength: 255 + type: string + x-stream-index: "001" + is_closed: + description: Indicates whether the poll is open for voting + title: Is closed + type: boolean + x-stream-index: "010" + max_votes_allowed: + description: Indicates the maximum amount of votes a user can cast + format: int32 + maximum: 10 + title: Maximum votes allowed + type: integer + x-stream-index: "007" + name: + description: The name of the poll + title: Name + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionRequest_1' + maximum: 100 + type: array + x-stream-index: "004" + user: + $ref: '#/components/schemas/UserRequest' + x-stream-index: "012.002" + user_id: + type: string + x-stream-index: "012.001" + voting_visibility: + enum: + - anonymous + - public + type: string + x-stream-index: "005" + required: + - name + title: Create Poll Request + type: object CreateRoleRequest: nullable: true properties: @@ -4005,7 +4161,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "001.018" + x-stream-index: "001.020" actions: items: $ref: '#/components/schemas/Action' @@ -4051,7 +4207,7 @@ components: x-stream-index: "001.014" giphy: $ref: '#/components/schemas/Images' - x-stream-index: "001.019" + x-stream-index: "001.021" image_url: description: URL of detected image title: Image URL @@ -4061,15 +4217,21 @@ components: description: extracted url from the text title: OG Scrape URL type: string - x-stream-index: "001.020" + x-stream-index: "001.022" original_height: format: int32 type: integer - x-stream-index: "001.022" + x-stream-index: "001.024" original_width: format: int32 type: integer - x-stream-index: "001.021" + x-stream-index: "001.023" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001.019" + poll_id: + type: string + x-stream-index: "001.018" pretext: type: string x-stream-index: "001.004" @@ -5119,6 +5281,14 @@ components: title: Pinned by x-stream-docs-page-id: pinned_messages x-stream-index: "047" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "051" + poll_id: + description: Identifier of the poll to include in the message + title: Poll ID + type: string + x-stream-index: "050" quoted_message: $ref: '#/components/schemas/Message' description: Contains quoted message @@ -5228,6 +5398,7 @@ components: - mentioned_users - silent - pinned + - poll_id title: Message type: object x-stream-docs-page-id: send_message @@ -5525,6 +5696,9 @@ components: nullable: true type: string x-stream-index: "014" + poll_id: + type: string + x-stream-index: "038" quoted_message_id: type: string x-stream-index: "009" @@ -5726,6 +5900,18 @@ components: required: - duration type: object + NoiseCancellationSettings: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + required: + - mode + type: object NotificationSettings: properties: call_live_started: @@ -6123,412 +6309,937 @@ components: - name - priority type: object - PushConfigRequest: + Poll: properties: - offline_only: - type: boolean - x-stream-index: "002" - version: - enum: - - v1 - - v2 + Custom: + type: object + writeOnly: true + x-stream-index: "023" + allow_answers: + type: boolean + x-stream-index: "010" + allow_user_suggested_options: + type: boolean + x-stream-index: "009" + answers_count: + format: int32 + type: integer + x-stream-index: "015" + created_at: + format: date-time + type: string + x-stream-index: "021" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "020" + created_by_id: + type: string + x-stream-index: "019" + description: + type: string + x-stream-index: "005" + enforce_unique_vote: + type: boolean + x-stream-index: "007" + id: type: string - x-stream-index: "001" - type: object - PushNotificationFields: - properties: - apn: - $ref: '#/components/schemas/APNConfigFields' - x-stream-index: "002" - firebase: - $ref: '#/components/schemas/FirebaseConfigFields' x-stream-index: "003" - huawei: - $ref: '#/components/schemas/HuaweiConfigFields' - x-stream-index: "004" - offline_only: + is_closed: type: boolean - x-stream-index: "001.002" - providers: + x-stream-index: "011" + latest_answers: items: - $ref: '#/components/schemas/PushProvider' + $ref: '#/components/schemas/PollVote' type: array - x-stream-index: "006" - version: + x-stream-index: "017" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVote' + type: array + type: object + x-stream-index: "016" + max_votes_allowed: + format: int32 + type: integer + x-stream-index: "008" + name: type: string - x-stream-index: "001.001" - xiaomi: - $ref: '#/components/schemas/XiaomiConfigFields' - x-stream-index: "005" + x-stream-index: "004" + options: + items: + $ref: '#/components/schemas/PollOption' + type: array + x-stream-index: "013" + own_votes: + items: + $ref: '#/components/schemas/PollVote' + type: array + x-stream-index: "018" + updated_at: + format: date-time + type: string + x-stream-index: "022" + vote_count: + format: int32 + type: integer + x-stream-index: "012" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "014" + voting_visibility: + type: string + x-stream-index: "006" required: - - version - - offline_only - - apn - - firebase - - huawei - - xiaomi + - id + - name + - description + - enforce_unique_vote + - allow_user_suggested_options + - allow_answers + - vote_count + - options + - vote_counts_by_option + - answers_count + - latest_votes_by_option + - latest_answers + - own_votes + - created_by_id + - created_at + - updated_at + - Custom type: object - PushNotificationSettings: + PollOption: + nullable: true properties: - disabled: - type: boolean + custom: + type: object + x-stream-index: "003" + id: + maxLength: 255 + type: string x-stream-index: "001" - disabled_until: - format: date-time + text: type: string x-stream-index: "002" + required: + - id + - text + - custom type: object - PushNotificationSettingsRequest: + PollOptionRequest: + nullable: true properties: - disabled: - type: boolean + custom: + type: object + x-stream-index: "003" + id: + maxLength: 255 + type: string x-stream-index: "001" - disabled_until: - format: date-time + text: type: string x-stream-index: "002" + required: + - id type: object - PushProvider: + PollOptionRequest_1: nullable: true properties: - apn_auth_key: - type: string - x-stream-index: "012" - apn_auth_type: - type: string - x-stream-index: "017" - apn_development: - type: boolean - x-stream-index: "018" - apn_host: - type: string - x-stream-index: "019" - apn_key_id: + custom: + type: object + x-stream-index: "003" + text: type: string - x-stream-index: "013" - apn_notification_template: + x-stream-index: "002" + type: object + PollOptionResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "020" - apn_p12_cert: + x-stream-index: "002.001" + poll_option: + $ref: '#/components/schemas/PollOptionResponseData' + x-stream-index: "001" + required: + - poll_option + - duration + type: object + PollOptionResponseData: + nullable: true + properties: + custom: + type: object + x-stream-index: "003" + id: type: string - x-stream-index: "014" - apn_team_id: + x-stream-index: "001" + text: type: string + x-stream-index: "002" + required: + - id + - text + - custom + type: object + PollRequest: + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "023" + allow_answers: + type: boolean + x-stream-index: "010" + allow_user_suggested_options: + type: boolean + x-stream-index: "009" + answers_count: + format: int32 + type: integer x-stream-index: "015" - apn_topic: - type: string - x-stream-index: "016" created_at: format: date-time type: string - x-stream-index: "008" + x-stream-index: "021" + created_by: + $ref: '#/components/schemas/UserObjectRequest' + x-stream-index: "020" + created_by_id: + type: string + x-stream-index: "019" description: - maxLength: 128 type: string + x-stream-index: "005" + enforce_unique_vote: + type: boolean x-stream-index: "007" - disabled_at: - format: date-time - type: string - x-stream-index: "010" - disabled_reason: - maxLength: 255 + id: type: string + x-stream-index: "003" + is_closed: + type: boolean x-stream-index: "011" - firebase_apn_template: + latest_answers: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + x-stream-index: "017" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + type: object + x-stream-index: "016" + max_votes_allowed: + format: int32 + type: integer + x-stream-index: "008" + name: type: string - x-stream-index: "025" - firebase_credentials: + x-stream-index: "004" + options: + items: + $ref: '#/components/schemas/PollOptionRequest' + type: array + x-stream-index: "013" + own_votes: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + x-stream-index: "018" + updated_at: + format: date-time type: string x-stream-index: "022" - firebase_data_template: + vote_count: + format: int32 + type: integer + x-stream-index: "012" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "014" + voting_visibility: type: string - x-stream-index: "023" - firebase_host: + x-stream-index: "006" + type: object + PollResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "026" - firebase_notification_template: - type: string - x-stream-index: "024" - firebase_server_key: - type: string - x-stream-index: "021" - huawei_app_id: + x-stream-index: "002.001" + poll: + $ref: '#/components/schemas/PollResponseData' + x-stream-index: "001" + required: + - poll + - duration + type: object + PollResponseData: + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "020" + allow_answers: + type: boolean + x-stream-index: "008" + allow_user_suggested_options: + type: boolean + x-stream-index: "007" + answers_count: + format: int32 + type: integer + x-stream-index: "012" + created_at: + format: date-time type: string - x-stream-index: "027" - huawei_app_secret: + x-stream-index: "018" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "017" + created_by_id: type: string - x-stream-index: "028" - name: - maxLength: 36 - minLength: 1 + x-stream-index: "016" + description: type: string + x-stream-index: "003" + enforce_unique_vote: + type: boolean x-stream-index: "005" - type: + id: + type: string + x-stream-index: "001" + is_closed: + type: boolean + x-stream-index: "009" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array + type: object + x-stream-index: "014" + max_votes_allowed: + format: int32 type: integer x-stream-index: "006" + name: + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionResponseData' + type: array + x-stream-index: "011" + own_votes: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array + x-stream-index: "015" updated_at: format: date-time type: string - x-stream-index: "009" - xiaomi_app_secret: - type: string - x-stream-index: "030" - xiaomi_package_name: + x-stream-index: "019" + vote_count: + format: int32 + type: integer + x-stream-index: "010" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "013" + voting_visibility: type: string - x-stream-index: "029" + x-stream-index: "004" required: + - id - name - - type + - description + - voting_visibility + - enforce_unique_vote + - allow_user_suggested_options + - allow_answers + - vote_count + - options + - answers_count + - vote_counts_by_option + - latest_votes_by_option + - own_votes + - created_by_id - created_at - updated_at + - Custom type: object - PushProviderRequest: + PollVote: + nullable: true properties: - apn_auth_key: - type: string - x-stream-index: "012" - apn_auth_type: - type: string - x-stream-index: "017" - apn_development: - type: boolean - x-stream-index: "018" - apn_host: + answer_text: type: string - x-stream-index: "019" - apn_key_id: - type: string - x-stream-index: "013" - apn_notification_template: + x-stream-index: "007" + created_at: + format: date-time type: string - x-stream-index: "020" - apn_p12_cert: + x-stream-index: "010" + id: type: string - x-stream-index: "014" - apn_team_id: + x-stream-index: "004" + is_answer: + type: boolean + x-stream-index: "006" + option_id: type: string - x-stream-index: "015" - apn_topic: + x-stream-index: "005" + poll_id: type: string - x-stream-index: "016" - created_at: + x-stream-index: "003" + updated_at: format: date-time + type: string + x-stream-index: "011" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "009" + user_id: type: string x-stream-index: "008" - description: - maxLength: 128 + required: + - poll_id + - id + - option_id + - created_at + - updated_at + type: object + PollVoteRequest: + nullable: true + properties: + answer_text: type: string x-stream-index: "007" - disabled_at: + created_at: format: date-time type: string x-stream-index: "010" - disabled_reason: - maxLength: 255 - type: string - x-stream-index: "011" - firebase_apn_template: - type: string - x-stream-index: "025" - firebase_credentials: - type: string - x-stream-index: "022" - firebase_data_template: - type: string - x-stream-index: "023" - firebase_host: - type: string - x-stream-index: "026" - firebase_notification_template: - type: string - x-stream-index: "024" - firebase_server_key: - type: string - x-stream-index: "021" - huawei_app_id: - type: string - x-stream-index: "027" - huawei_app_secret: + id: type: string - x-stream-index: "028" - name: - maxLength: 36 - minLength: 1 + x-stream-index: "004" + is_answer: + type: boolean + x-stream-index: "006" + option_id: type: string x-stream-index: "005" - type: - type: integer - x-stream-index: "006" + poll_id: + type: string + x-stream-index: "003" updated_at: format: date-time type: string + x-stream-index: "011" + user: + $ref: '#/components/schemas/UserObjectRequest' x-stream-index: "009" - xiaomi_app_secret: + user_id: type: string - x-stream-index: "030" - xiaomi_package_name: + x-stream-index: "008" + type: object + PollVoteResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "029" + x-stream-index: "002.001" + vote: + $ref: '#/components/schemas/PollVoteResponseData' + x-stream-index: "001" required: - - name + - duration type: object - PushProviderResponse: + PollVoteResponseData: + nullable: true properties: - apn_auth_key: - type: string - x-stream-index: "008" - apn_auth_type: - type: string - x-stream-index: "013" - apn_development: - type: boolean - x-stream-index: "014" - apn_host: - type: string - x-stream-index: "015" - apn_key_id: - type: string - x-stream-index: "009" - apn_p12_cert: - type: string - x-stream-index: "010" - apn_sandbox_certificate: - type: boolean - x-stream-index: "016" - apn_supports_remote_notifications: - type: boolean - x-stream-index: "018" - apn_supports_voip_notifications: - type: boolean - x-stream-index: "017" - apn_team_id: - type: string - x-stream-index: "011" - apn_topic: + answer_text: type: string - x-stream-index: "012" + x-stream-index: "005" created_at: format: date-time type: string + x-stream-index: "008" + id: + type: string + x-stream-index: "002" + is_answer: + type: boolean x-stream-index: "004" - description: + option_id: type: string x-stream-index: "003" - disabled_at: - format: date-time + poll_id: type: string - x-stream-index: "006" - disabled_reason: + x-stream-index: "001" + updated_at: + format: date-time type: string + x-stream-index: "009" + user: + $ref: '#/components/schemas/UserObject' x-stream-index: "007" - firebase_apn_template: - type: string - x-stream-index: "023" - firebase_credentials: - type: string - x-stream-index: "020" - firebase_data_template: + user_id: type: string - x-stream-index: "021" - firebase_host: + x-stream-index: "006" + required: + - poll_id + - id + - option_id + - created_at + - updated_at + type: object + PollVotesResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "024" - firebase_notification_template: + x-stream-index: "003.001" + next: + type: string + x-stream-index: "002.001" + prev: + type: string + x-stream-index: "002.002" + votes: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array + x-stream-index: "001" + required: + - votes + - duration + type: object + PushConfigRequest: + properties: + offline_only: + type: boolean + x-stream-index: "002" + version: + enum: + - v1 + - v2 + type: string + x-stream-index: "001" + type: object + PushNotificationFields: + properties: + apn: + $ref: '#/components/schemas/APNConfigFields' + x-stream-index: "002" + firebase: + $ref: '#/components/schemas/FirebaseConfigFields' + x-stream-index: "003" + huawei: + $ref: '#/components/schemas/HuaweiConfigFields' + x-stream-index: "004" + offline_only: + type: boolean + x-stream-index: "001.002" + providers: + items: + $ref: '#/components/schemas/PushProvider' + type: array + x-stream-index: "006" + version: + type: string + x-stream-index: "001.001" + xiaomi: + $ref: '#/components/schemas/XiaomiConfigFields' + x-stream-index: "005" + required: + - version + - offline_only + - apn + - firebase + - huawei + - xiaomi + type: object + PushNotificationSettings: + properties: + disabled: + type: boolean + x-stream-index: "001" + disabled_until: + format: date-time + type: string + x-stream-index: "002" + type: object + PushNotificationSettingsRequest: + properties: + disabled: + type: boolean + x-stream-index: "001" + disabled_until: + format: date-time + type: string + x-stream-index: "002" + type: object + PushProvider: + nullable: true + properties: + apn_auth_key: + type: string + x-stream-index: "012" + apn_auth_type: + type: string + x-stream-index: "017" + apn_development: + type: boolean + x-stream-index: "018" + apn_host: + type: string + x-stream-index: "019" + apn_key_id: + type: string + x-stream-index: "013" + apn_notification_template: + type: string + x-stream-index: "020" + apn_p12_cert: + type: string + x-stream-index: "014" + apn_team_id: + type: string + x-stream-index: "015" + apn_topic: + type: string + x-stream-index: "016" + created_at: + format: date-time + type: string + x-stream-index: "008" + description: + maxLength: 128 + type: string + x-stream-index: "007" + disabled_at: + format: date-time + type: string + x-stream-index: "010" + disabled_reason: + maxLength: 255 + type: string + x-stream-index: "011" + firebase_apn_template: + type: string + x-stream-index: "025" + firebase_credentials: type: string x-stream-index: "022" + firebase_data_template: + type: string + x-stream-index: "023" + firebase_host: + type: string + x-stream-index: "026" + firebase_notification_template: + type: string + x-stream-index: "024" firebase_server_key: type: string - x-stream-index: "019" + x-stream-index: "021" huawei_app_id: type: string - x-stream-index: "025" + x-stream-index: "027" huawei_app_secret: type: string - x-stream-index: "026" + x-stream-index: "028" name: + maxLength: 36 + minLength: 1 type: string - x-stream-index: "001" + x-stream-index: "005" type: - type: string - x-stream-index: "002" + type: integer + x-stream-index: "006" updated_at: format: date-time type: string - x-stream-index: "005" + x-stream-index: "009" xiaomi_app_secret: type: string - x-stream-index: "028" + x-stream-index: "030" xiaomi_package_name: type: string - x-stream-index: "027" + x-stream-index: "029" required: - name - type - created_at - updated_at type: object - QueryBannedUsersRequest: + PushProviderRequest: properties: - created_at_after: - format: date-time + apn_auth_key: type: string - x-stream-index: "003.006" - created_at_after_or_equal: - format: date-time + x-stream-index: "012" + apn_auth_type: type: string - x-stream-index: "003.005" - created_at_before: - format: date-time + x-stream-index: "017" + apn_development: + type: boolean + x-stream-index: "018" + apn_host: type: string - x-stream-index: "003.008" - created_at_before_or_equal: + x-stream-index: "019" + apn_key_id: + type: string + x-stream-index: "013" + apn_notification_template: + type: string + x-stream-index: "020" + apn_p12_cert: + type: string + x-stream-index: "014" + apn_team_id: + type: string + x-stream-index: "015" + apn_topic: + type: string + x-stream-index: "016" + created_at: format: date-time type: string - x-stream-index: "003.007" - exclude_expired_bans: - type: boolean - x-stream-index: "006" - filter_conditions: - type: object - x-stream-index: "001" - limit: - format: int32 - maximum: 300 - type: integer - x-stream-index: "004" - offset: - format: int32 - maximum: 10000 - type: integer - x-stream-index: "005" - sort: - items: - $ref: '#/components/schemas/SortParam' - maximum: 1 - type: array - x-stream-index: "002" - user: - $ref: '#/components/schemas/UserRequest_1' - x-stream-index: "007.002" - user_id: + x-stream-index: "008" + description: + maxLength: 128 type: string - x-stream-index: "007.001" - required: - - filter_conditions - type: object - QueryBannedUsersResponse: - nullable: true - properties: - bans: - items: - $ref: '#/components/schemas/BanResponse' - type: array - x-stream-index: "001" - duration: - description: Duration of the request in human-readable format - title: Duration + x-stream-index: "007" + disabled_at: + format: date-time type: string - x-stream-index: "002.001" + x-stream-index: "010" + disabled_reason: + maxLength: 255 + type: string + x-stream-index: "011" + firebase_apn_template: + type: string + x-stream-index: "025" + firebase_credentials: + type: string + x-stream-index: "022" + firebase_data_template: + type: string + x-stream-index: "023" + firebase_host: + type: string + x-stream-index: "026" + firebase_notification_template: + type: string + x-stream-index: "024" + firebase_server_key: + type: string + x-stream-index: "021" + huawei_app_id: + type: string + x-stream-index: "027" + huawei_app_secret: + type: string + x-stream-index: "028" + name: + maxLength: 36 + minLength: 1 + type: string + x-stream-index: "005" + type: + type: integer + x-stream-index: "006" + updated_at: + format: date-time + type: string + x-stream-index: "009" + xiaomi_app_secret: + type: string + x-stream-index: "030" + xiaomi_package_name: + type: string + x-stream-index: "029" + required: + - name + type: object + PushProviderResponse: + properties: + apn_auth_key: + type: string + x-stream-index: "008" + apn_auth_type: + type: string + x-stream-index: "013" + apn_development: + type: boolean + x-stream-index: "014" + apn_host: + type: string + x-stream-index: "015" + apn_key_id: + type: string + x-stream-index: "009" + apn_p12_cert: + type: string + x-stream-index: "010" + apn_sandbox_certificate: + type: boolean + x-stream-index: "016" + apn_supports_remote_notifications: + type: boolean + x-stream-index: "018" + apn_supports_voip_notifications: + type: boolean + x-stream-index: "017" + apn_team_id: + type: string + x-stream-index: "011" + apn_topic: + type: string + x-stream-index: "012" + created_at: + format: date-time + type: string + x-stream-index: "004" + description: + type: string + x-stream-index: "003" + disabled_at: + format: date-time + type: string + x-stream-index: "006" + disabled_reason: + type: string + x-stream-index: "007" + firebase_apn_template: + type: string + x-stream-index: "023" + firebase_credentials: + type: string + x-stream-index: "020" + firebase_data_template: + type: string + x-stream-index: "021" + firebase_host: + type: string + x-stream-index: "024" + firebase_notification_template: + type: string + x-stream-index: "022" + firebase_server_key: + type: string + x-stream-index: "019" + huawei_app_id: + type: string + x-stream-index: "025" + huawei_app_secret: + type: string + x-stream-index: "026" + name: + type: string + x-stream-index: "001" + type: + type: string + x-stream-index: "002" + updated_at: + format: date-time + type: string + x-stream-index: "005" + xiaomi_app_secret: + type: string + x-stream-index: "028" + xiaomi_package_name: + type: string + x-stream-index: "027" + required: + - name + - type + - created_at + - updated_at + type: object + QueryBannedUsersRequest: + properties: + created_at_after: + format: date-time + type: string + x-stream-index: "003.006" + created_at_after_or_equal: + format: date-time + type: string + x-stream-index: "003.005" + created_at_before: + format: date-time + type: string + x-stream-index: "003.008" + created_at_before_or_equal: + format: date-time + type: string + x-stream-index: "003.007" + exclude_expired_bans: + type: boolean + x-stream-index: "006" + filter_conditions: + type: object + x-stream-index: "001" + limit: + format: int32 + maximum: 300 + type: integer + x-stream-index: "004" + offset: + format: int32 + maximum: 10000 + type: integer + x-stream-index: "005" + sort: + items: + $ref: '#/components/schemas/SortParam' + maximum: 1 + type: array + x-stream-index: "002" + user: + $ref: '#/components/schemas/UserRequest_1' + x-stream-index: "007.002" + user_id: + type: string + x-stream-index: "007.001" + required: + - filter_conditions + type: object + QueryBannedUsersResponse: + nullable: true + properties: + bans: + items: + $ref: '#/components/schemas/BanResponse' + type: array + x-stream-index: "001" + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "002.001" required: - bans - duration @@ -6733,12 +7444,12 @@ components: - flags - duration type: object - QueryThreadsRequest: + QueryPollVotesRequest: nullable: true properties: - connection_id: - type: string - x-stream-index: "002" + filter: + type: object + x-stream-index: "003" limit: format: int32 maximum: 25 @@ -6748,36 +7459,115 @@ components: next: type: string x-stream-index: "005.002" - participant_limit: - description: Limit the number of participants returned per each thread - format: int32 - maximum: 100 - minimum: 0 - title: Participant limit - type: integer - x-stream-index: "004" + poll_id: + maxLength: 255 + type: string + x-stream-index: "002" prev: type: string x-stream-index: "005.003" - reply_limit: - description: Limit the number of replies returned per each thread - format: int32 - maximum: 10 - minimum: 0 - title: Reply limit - type: integer - x-stream-index: "003" - user: - $ref: '#/components/schemas/UserRequest' - x-stream-index: "007.002" - user_id: - type: string - x-stream-index: "007.001" + sort: + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 + type: array + x-stream-index: "004" + required: + - poll_id type: object - QueryThreadsResponse: + QueryPollsRequest: nullable: true properties: - duration: + filter: + type: object + x-stream-index: "002" + limit: + format: int32 + maximum: 25 + minimum: 0 + type: integer + x-stream-index: "005.001" + next: + type: string + x-stream-index: "005.002" + prev: + type: string + x-stream-index: "005.003" + sort: + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 + type: array + x-stream-index: "003" + type: object + QueryPollsResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "003.001" + next: + type: string + x-stream-index: "002.001" + polls: + items: + $ref: '#/components/schemas/PollResponseData' + type: array + x-stream-index: "001" + prev: + type: string + x-stream-index: "002.002" + required: + - polls + - duration + type: object + QueryThreadsRequest: + nullable: true + properties: + connection_id: + type: string + x-stream-index: "002" + limit: + format: int32 + maximum: 25 + minimum: 0 + type: integer + x-stream-index: "005.001" + next: + type: string + x-stream-index: "005.002" + participant_limit: + description: Limit the number of participants returned per each thread + format: int32 + maximum: 100 + minimum: 0 + title: Participant limit + type: integer + x-stream-index: "004" + prev: + type: string + x-stream-index: "005.003" + reply_limit: + description: Limit the number of replies returned per each thread + format: int32 + maximum: 10 + minimum: 0 + title: Reply limit + type: integer + x-stream-index: "003" + user: + $ref: '#/components/schemas/UserRequest' + x-stream-index: "007.002" + user_id: + type: string + x-stream-index: "007.001" + type: object + QueryThreadsResponse: + nullable: true + properties: + duration: type: string x-stream-index: "003.001" next: @@ -7372,6 +8162,12 @@ components: pinned_by: $ref: '#/components/schemas/UserObject' x-stream-index: "001.047" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001.051" + poll_id: + type: string + x-stream-index: "001.050" quoted_message: $ref: '#/components/schemas/Message' x-stream-index: "001.023" @@ -7441,6 +8237,7 @@ components: - mentioned_users - silent - pinned + - poll_id type: object SearchWarning: properties: @@ -8735,39 +9532,39 @@ components: items: type: string type: array - x-stream-index: 007.001.023 + x-stream-index: 007.001.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 007.001.018 + x-stream-index: 007.001.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 007.001.019 + x-stream-index: 007.001.020 automod_thresholds: $ref: '#/components/schemas/ThresholdsRequest' - x-stream-index: 007.001.024 + x-stream-index: 007.001.025 blocklist: type: string - x-stream-index: 007.001.020 + x-stream-index: 007.001.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 007.001.021 + x-stream-index: 007.001.022 blocklists: items: $ref: '#/components/schemas/BlockListOptionsRequest' type: array - x-stream-index: 007.001.022 + x-stream-index: 007.001.023 commands: description: List of commands that channel supports items: @@ -8795,10 +9592,10 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 007.001.017 + x-stream-index: 007.001.018 message_retention: type: string - x-stream-index: 007.001.016 + x-stream-index: 007.001.017 mutes: type: boolean x-stream-index: 007.001.009 @@ -8807,6 +9604,9 @@ components: $ref: '#/components/schemas/PolicyRequest_1' type: array x-stream-index: "003" + polls: + type: boolean + x-stream-index: 007.001.016 push_notifications: type: boolean x-stream-index: 007.001.013 @@ -8847,39 +9647,39 @@ components: items: type: string type: array - x-stream-index: 003.001.023 + x-stream-index: 003.001.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 003.001.018 + x-stream-index: 003.001.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 003.001.019 + x-stream-index: 003.001.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 003.001.024 + x-stream-index: 003.001.025 blocklist: type: string - x-stream-index: 003.001.020 + x-stream-index: 003.001.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 003.001.021 + x-stream-index: 003.001.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 003.001.022 + x-stream-index: 003.001.023 commands: items: type: string @@ -8912,10 +9712,10 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 003.001.017 + x-stream-index: 003.001.018 message_retention: type: string - x-stream-index: 003.001.016 + x-stream-index: 003.001.017 mutes: type: boolean x-stream-index: 003.001.009 @@ -8927,6 +9727,9 @@ components: $ref: '#/components/schemas/PolicyRequest' type: array x-stream-index: "001" + polls: + type: boolean + x-stream-index: 003.001.016 push_notifications: type: boolean x-stream-index: 003.001.013 @@ -8979,6 +9782,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -9114,6 +9918,125 @@ components: - message - duration type: object + UpdatePollOptionRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "004" + id: + maxLength: 255 + type: string + x-stream-index: "002" + poll_id: + maxLength: 255 + type: string + x-stream-index: "001" + text: + type: string + x-stream-index: "003" + user: + $ref: '#/components/schemas/UserRequest' + x-stream-index: "005.002" + user_id: + type: string + x-stream-index: "005.001" + required: + - poll_id + - id + - text + type: object + UpdatePollPartialRequest: + nullable: true + properties: + poll_id: + maxLength: 255 + type: string + x-stream-index: "001" + set: + description: Sets new field values + title: Set + type: object + x-stream-index: "002.001" + x-stream-map: + description: New value to set + key: field + title: Value + unset: + description: Array of field names to unset + items: + type: string + title: Unset + type: array + x-stream-index: "002.002" + user: + $ref: '#/components/schemas/UserRequest' + x-stream-index: "003.002" + user_id: + type: string + x-stream-index: "003.001" + required: + - poll_id + - set + - unset + type: object + UpdatePollRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "011" + allow_answers: + type: boolean + x-stream-index: "009" + allow_user_suggested_options: + type: boolean + x-stream-index: "008" + description: + type: string + x-stream-index: "003" + enforce_unique_vote: + type: boolean + x-stream-index: "005" + id: + maxLength: 255 + type: string + x-stream-index: "001" + is_closed: + type: boolean + x-stream-index: "010" + max_votes_allowed: + format: int32 + maximum: 10 + type: integer + x-stream-index: "007" + name: + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionRequest' + maximum: 100 + type: array + x-stream-index: "004" + user: + $ref: '#/components/schemas/UserRequest' + x-stream-index: "012.002" + user_id: + type: string + x-stream-index: "012.001" + voting_visibility: + enum: + - anonymous + - public + type: string + x-stream-index: "006" + required: + - id + - name + type: object UpdateThreadPartialRequest: nullable: true properties: @@ -9640,19 +10563,32 @@ components: - camera_default_on - camera_facing type: object + VoteDataRequest: + properties: + Option: + $ref: '#/components/schemas/PollOptionRequest' + x-stream-index: "003" + answer_text: + type: string + x-stream-index: "002" + option_id: + maxLength: 255 + type: string + x-stream-index: "001" + type: object WSEvent: description: Represents an BaseEvent that happened in Stream Chat properties: Custom: type: object writeOnly: true - x-stream-index: "022" + x-stream-index: "024" automoderation: type: boolean - x-stream-index: "018" + x-stream-index: "020" automoderation_scores: $ref: '#/components/schemas/ModerationResponse' - x-stream-index: "019" + x-stream-index: "021" channel: $ref: '#/components/schemas/ChannelResponse' x-stream-index: "009" @@ -9671,13 +10607,13 @@ components: created_at: format: date-time type: string - x-stream-index: "023" + x-stream-index: "025" created_by: $ref: '#/components/schemas/UserObject' - x-stream-index: "017" + x-stream-index: "019" me: $ref: '#/components/schemas/OwnUser' - x-stream-index: "014" + x-stream-index: "016" member: $ref: '#/components/schemas/ChannelMember' x-stream-index: "011" @@ -9689,16 +10625,22 @@ components: x-stream-index: "007" parent_id: type: string - x-stream-index: "020" + x-stream-index: "022" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "012" + poll_vote: + $ref: '#/components/schemas/PollVote' + x-stream-index: "013" reaction: $ref: '#/components/schemas/Reaction' x-stream-index: "008" reason: type: string - x-stream-index: "016" + x-stream-index: "018" team: type: string - x-stream-index: "021" + x-stream-index: "023" thread: $ref: '#/components/schemas/Thread' x-stream-index: "010" @@ -9707,14 +10649,14 @@ components: x-stream-index: "001" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "012" + x-stream-index: "014" user_id: type: string - x-stream-index: "013" + x-stream-index: "015" watcher_count: format: int32 type: integer - x-stream-index: "015" + x-stream-index: "017" required: - type - Custom @@ -9832,7 +10774,7 @@ components: type: apiKey info: title: Stream API - version: v104.0.1 + version: v105.1.0 openapi: 3.0.3 paths: /app: @@ -9877,7 +10819,394 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Update App Settings + tags: + - Settings + /blocklists: + get: + description: | + Returns all available block lists + operationId: ListBlockLists + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/ListBlockListResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: List block lists + tags: + - Settings + - Moderation + post: + description: | + Creates a new application blocklist, once created the blocklist can be used by any channel type + operationId: CreateBlockList + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateBlockListRequest' + description: Block list + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Create block list + tags: + - Settings + - Moderation + /blocklists/{name}: + delete: + description: | + Deletes previously created application blocklist + operationId: DeleteBlockList + parameters: + - in: path + name: name + required: true + schema: + description: Block list name + title: Name + type: string + writeOnly: true + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete block list + tags: + - Settings + - Moderation + get: + description: | + Returns block list by given name + operationId: GetBlockList + parameters: + - in: path + name: name + required: true + schema: + description: Block list name + title: Name + type: string + writeOnly: true + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/GetBlockListResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get block list + tags: + - Settings + - Moderation + put: + description: | + Updates contents of the block list + operationId: UpdateBlockList + parameters: + - in: path + name: name + required: true + schema: + description: Block list name + title: Name + type: string + writeOnly: true + x-stream-index: "001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateBlockListRequest' + description: Update block list + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Update block list + tags: + - Settings + - Moderation + /blocklists/{type}/validate: + post: + description: | + Runs specific blocklist validation, returns an appropriate error if the blocklist is invalid + operationId: ValidateBlockList + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateBlockListRequest' + description: Block list + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Validate Blocklist + tags: + - Moderation + /calls: + post: + description: | + Retrieves the token to join a call + + Required permissions: + - JoinCall + - ReadChannel + operationId: GetCallToken + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GetCallTokenRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/GetCallTokenResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get Call Token + /calls/{call_id}: + post: + description: | + Retrieves the token to join a call + + Required permissions: + - JoinCall + - ReadChannel + operationId: GetCallToken + parameters: + - in: path + name: call_id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GetCallTokenRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/GetCallTokenResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get Call Token + /channels: + post: + description: | + Query channels with filter query + + Required permissions: + - ReadChannel + operationId: QueryChannels + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryChannelsRequest' + description: Query Channels Request + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/ChannelsResponse' + description: Channels list + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Query channels + tags: + - Channels + /channels/{type}/{id}: + delete: + description: | + Deletes channel + + Sends events: + - channel.deleted + + Required permissions: + - DeleteChannel + operationId: DeleteChannel + parameters: + - in: path + name: type + required: true + schema: + description: Channel type to interact with + title: Channel type + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "001.002" + - in: query + name: hard_delete + schema: + type: boolean + x-stream-index: "002" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/DeleteChannelResponse' description: Successful response "400": content: @@ -9891,20 +11220,48 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update App Settings + summary: Delete channel tags: - - Settings - /blocklists: - get: + - Channels + patch: description: | - Returns all available block lists - operationId: ListBlockLists + Updates certain fields of the channel + + Sends events: + - channel.updated + + Required permissions: + - UpdateChannel + - UpdateChannelCooldown + - UpdateChannelFrozen + operationId: UpdateChannelPartial + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelPartialRequest' + required: true responses: "200": content: application/json: schema: - $ref: '#/components/schemas/ListBlockListResponse' + $ref: '#/components/schemas/UpdateChannelPartialResponse' description: Successful response "400": content: @@ -9918,27 +11275,56 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: List block lists + summary: Partially update channel tags: - - Settings - - Moderation + - Channels post: description: | - Creates a new application blocklist, once created the blocklist can be used by any channel type - operationId: CreateBlockList + Change channel data + + Sends events: + - channel.updated + - member.added + - member.removed + - member.updated + - message.new + + Required permissions: + - AddOwnChannelMembership + - RemoveOwnChannelMembership + - UpdateChannel + - UpdateChannelCooldown + - UpdateChannelFrozen + - UpdateChannelMembers + operationId: UpdateChannel + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: 013.002.001 + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: 013.002.002 requestBody: content: application/json: schema: - $ref: '#/components/schemas/CreateBlockListRequest' - description: Block list + $ref: '#/components/schemas/UpdateChannelRequest' + description: Channel update request required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/UpdateChannelResponse' description: Successful response "400": content: @@ -9952,31 +11338,45 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create block list + summary: Update channel tags: - - Settings - - Moderation - /blocklists/{name}: - delete: + - Channels + /channels/{type}/{id}/call: + post: description: | - Deletes previously created application blocklist - operationId: DeleteBlockList + Creates a call + + Required permissions: + - CreateCall + - ReadChannel + operationId: CreateCall parameters: - in: path - name: name + name: type required: true schema: - description: Block list name - title: Name type: string writeOnly: true x-stream-index: "001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateCallRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/CreateCallResponse' description: Successful response "400": content: @@ -9990,30 +11390,46 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete block list - tags: - - Settings - - Moderation - get: + summary: Create a call + /channels/{type}/{id}/event: + post: description: | - Returns block list by given name - operationId: GetBlockList + Sends event to the channel + + Required permissions: + - SendCustomEvent + operationId: SendEvent parameters: - in: path - name: name + name: type required: true schema: - description: Block list name - title: Name + description: Channel type to interact with + title: Channel type type: string writeOnly: true - x-stream-index: "001" + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "002.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SendEventRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetBlockListResponse' + $ref: '#/components/schemas/EventResponse' description: Successful response "400": content: @@ -10027,37 +11443,50 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get block list + summary: Send event tags: - - Settings - - Moderation - put: + - Events + /channels/{type}/{id}/file: + delete: description: | - Updates contents of the block list - operationId: UpdateBlockList + Deletes previously uploaded file + + Required permissions: + - DeleteAttachment + operationId: DeleteFile parameters: - in: path - name: name + name: type required: true schema: - description: Block list name - title: Name + description: The type of file + title: Type type: string writeOnly: true - x-stream-index: "001" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateBlockListRequest' - description: Update block list + x-stream-index: "002.001" + - in: path + name: id required: true + schema: + description: File ID + title: ID + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: url + schema: + description: File URL to delete + title: URL + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/FileDeleteResponse' description: Successful response "400": content: @@ -10071,28 +11500,44 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update block list + summary: Delete file tags: - - Settings - - Moderation - /blocklists/{type}/validate: + - Messages + - Files post: description: | - Runs specific blocklist validation, returns an appropriate error if the blocklist is invalid - operationId: ValidateBlockList + Uploads file + + Required permissions: + - UploadAttachment + operationId: UploadFile + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.002" requestBody: content: - application/json: + multipart/form-data: schema: - $ref: '#/components/schemas/CreateBlockListRequest' - description: Block list + $ref: '#/components/schemas/FileUploadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/FileUploadResponse' description: Successful response "400": content: @@ -10106,30 +11551,48 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Validate Blocklist + summary: Upload file tags: - - Moderation - /calls: + - Messages + - Files + /channels/{type}/{id}/hide: post: description: | - Retrieves the token to join a call + Marks channel as hidden for current user + + Sends events: + - channel.hidden Required permissions: - - JoinCall - ReadChannel - operationId: GetCallToken + operationId: HideChannel + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/GetCallTokenRequest' + $ref: '#/components/schemas/HideChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/GetCallTokenResponse' + $ref: '#/components/schemas/HideChannelResponse' description: Successful response "400": content: @@ -10143,36 +11606,50 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get Call Token - /calls/{call_id}: - post: + summary: Hide channel + tags: + - Channels + /channels/{type}/{id}/image: + delete: description: | - Retrieves the token to join a call + Deletes previously uploaded image Required permissions: - - JoinCall - - ReadChannel - operationId: GetCallToken + - DeleteAttachment + operationId: DeleteImage parameters: - in: path - name: call_id + name: type required: true schema: + description: The type of file + title: Type type: string writeOnly: true - x-stream-index: "001" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GetCallTokenRequest' + x-stream-index: "002.001" + - in: path + name: id required: true + schema: + description: File ID + title: ID + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: url + schema: + description: File URL to delete + title: URL + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/GetCallTokenResponse' + $ref: '#/components/schemas/FileDeleteResponse' description: Successful response "400": content: @@ -10186,29 +11663,45 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get Call Token - /channels: + summary: Delete image + tags: + - Messages + - Files post: description: | - Query channels with filter query + Uploads image Required permissions: - - ReadChannel - operationId: QueryChannels + - UploadAttachment + operationId: UploadImage + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: 001.001.001 + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: 001.001.002 requestBody: content: - application/json: + multipart/form-data: schema: - $ref: '#/components/schemas/QueryChannelsRequest' - description: Query Channels Request + $ref: '#/components/schemas/ImageUploadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ChannelsResponse' - description: Channels list + $ref: '#/components/schemas/ImageUploadResponse' + description: Successful response "400": content: application/json: @@ -10221,20 +11714,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query channels + summary: Upload image tags: - - Channels - /channels/{type}/{id}: - delete: + - Messages + - Files + /channels/{type}/{id}/message: + post: description: | - Deletes channel + Sends new message to the specified channel Sends events: - - channel.deleted + - message.new + - message.updated Required permissions: - - DeleteChannel - operationId: DeleteChannel + - AddLinks + - CreateMessage + - PinMessage + - SkipChannelCooldown + - SkipMessageModeration + - UseFrozenChannel + operationId: SendMessage parameters: - in: path name: type @@ -10244,7 +11744,7 @@ paths: title: Channel type type: string writeOnly: true - x-stream-index: "001.001" + x-stream-index: "009.001" - in: path name: id required: true @@ -10253,18 +11753,19 @@ paths: title: Channel ID type: string writeOnly: true - x-stream-index: "001.002" - - in: query - name: hard_delete - schema: - type: boolean - x-stream-index: "002" + x-stream-index: "009.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SendMessageRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelResponse' + $ref: '#/components/schemas/SendMessageResponse' description: Successful response "400": content: @@ -10278,21 +11779,17 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete channel + summary: Send new message tags: - - Channels - patch: + - Messages + /channels/{type}/{id}/messages: + get: description: | - Updates certain fields of the channel - - Sends events: - - channel.updated + Returns list messages found by IDs Required permissions: - - UpdateChannel - - UpdateChannelCooldown - - UpdateChannelFrozen - operationId: UpdateChannelPartial + - ReadChannel + operationId: GetManyMessages parameters: - in: path name: type @@ -10300,26 +11797,31 @@ paths: schema: type: string writeOnly: true - x-stream-index: "001.001" + x-stream-index: "002.001" - in: path name: id required: true schema: type: string writeOnly: true - x-stream-index: "001.002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateChannelPartialRequest' - required: true + x-stream-index: "002.002" + - in: query + name: ids + schema: + description: List of comma-separated IDs + items: + type: string + maximum: 50 + minimum: 1 + title: IDs + type: array + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelPartialResponse' + $ref: '#/components/schemas/GetManyMessagesResponse' description: Successful response "400": content: @@ -10333,56 +11835,53 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Partially update channel + summary: Get many messages tags: - - Channels + - Messages + /channels/{type}/{id}/query: post: description: | - Change channel data + This Method creates a channel or returns an existing one with matching attributes Sends events: - - channel.updated + - channel.created - member.added - member.removed - member.updated - - message.new - - Required permissions: - - AddOwnChannelMembership - - RemoveOwnChannelMembership - - UpdateChannel - - UpdateChannelCooldown - - UpdateChannelFrozen - - UpdateChannelMembers - operationId: UpdateChannel + - user.watching.start + operationId: GetOrCreateChannel parameters: - in: path name: type required: true schema: + description: Channel type + maxLength: 64 + title: Type type: string writeOnly: true - x-stream-index: 013.002.001 + x-stream-index: "002" - in: path name: id required: true schema: + description: Channel ID (maximum length of 64 characters) + title: ID type: string writeOnly: true - x-stream-index: 013.002.002 + x-stream-index: "003" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelRequest' - description: Channel update request + $ref: '#/components/schemas/ChannelGetOrCreateRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelResponse' + $ref: '#/components/schemas/ChannelStateResponse' description: Successful response "400": content: @@ -10396,18 +11895,20 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update channel + summary: Get or create channel tags: - Channels - /channels/{type}/{id}/call: + /channels/{type}/{id}/read: post: description: | - Creates a call + Marks channel as read up to the specific message + + Sends events: + - message.read Required permissions: - - CreateCall - ReadChannel - operationId: CreateCall + operationId: MarkRead parameters: - in: path name: type @@ -10415,26 +11916,26 @@ paths: schema: type: string writeOnly: true - x-stream-index: "001" + x-stream-index: "002.001" - in: path name: id required: true schema: type: string writeOnly: true - x-stream-index: "002" + x-stream-index: "002.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/CreateCallRequest' + $ref: '#/components/schemas/MarkReadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/CreateCallResponse' + $ref: '#/components/schemas/MarkReadResponse' description: Successful response "400": content: @@ -10448,15 +11949,18 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create a call - /channels/{type}/{id}/event: + summary: Mark read + tags: + - Channels + - Messages + /channels/{type}/{id}/show: post: description: | - Sends event to the channel + Shows previously hidden channel - Required permissions: - - SendCustomEvent - operationId: SendEvent + Sends events: + - channel.visible + operationId: ShowChannel parameters: - in: path name: type @@ -10466,7 +11970,7 @@ paths: title: Channel type type: string writeOnly: true - x-stream-index: "002.001" + x-stream-index: "001.001" - in: path name: id required: true @@ -10475,19 +11979,19 @@ paths: title: Channel ID type: string writeOnly: true - x-stream-index: "002.002" + x-stream-index: "001.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/SendEventRequest' + $ref: '#/components/schemas/ShowChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/EventResponse' + $ref: '#/components/schemas/ShowChannelResponse' description: Successful response "400": content: @@ -10501,50 +12005,48 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send event + summary: Show channel tags: - - Events - /channels/{type}/{id}/file: - delete: + - Channels + /channels/{type}/{id}/truncate: + post: description: | - Deletes previously uploaded file + Truncates channel + + Sends events: + - channel.truncated Required permissions: - - DeleteAttachment - operationId: DeleteFile + - DeleteChannel + - TruncateChannel + operationId: TruncateChannel parameters: - in: path name: type required: true schema: - description: The type of file - title: Type type: string writeOnly: true - x-stream-index: "002.001" + x-stream-index: "001.001" - in: path name: id required: true schema: - description: File ID - title: ID - type: string - writeOnly: true - x-stream-index: "002.002" - - in: query - name: url - schema: - description: File URL to delete - title: URL type: string writeOnly: true - x-stream-index: "001" + x-stream-index: "001.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TruncateChannelRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/FileDeleteResponse' + $ref: '#/components/schemas/TruncateChannelResponse' description: Successful response "400": content: @@ -10558,17 +12060,17 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete file + summary: Truncate channel tags: - - Messages - - Files + - Channels + /channels/{type}/{id}/unread: post: description: | - Uploads file + Marks channel as unread from a specific message Required permissions: - - UploadAttachment - operationId: UploadFile + - ReadChannel + operationId: MarkUnread parameters: - in: path name: type @@ -10576,26 +12078,26 @@ paths: schema: type: string writeOnly: true - x-stream-index: "001.001" + x-stream-index: "002.001" - in: path name: id required: true schema: type: string writeOnly: true - x-stream-index: "001.002" + x-stream-index: "002.002" requestBody: content: - multipart/form-data: + application/json: schema: - $ref: '#/components/schemas/FileUploadRequest' + $ref: '#/components/schemas/MarkUnreadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/FileUploadResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -10609,48 +12111,45 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Upload file + summary: Mark unread tags: + - Channels - Messages - - Files - /channels/{type}/{id}/hide: + /channels/{type}/query: post: description: | - Marks channel as hidden for current user + This Method creates a channel or returns an existing one with matching attributes Sends events: - - channel.hidden - - Required permissions: - - ReadChannel - operationId: HideChannel + - channel.created + - member.added + - member.removed + - member.updated + - user.watching.start + operationId: GetOrCreateChannel parameters: - in: path name: type required: true schema: + description: Channel type + maxLength: 64 + title: Type type: string writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.002" + x-stream-index: "002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/HideChannelRequest' + $ref: '#/components/schemas/ChannelGetOrCreateRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/HideChannelResponse' + $ref: '#/components/schemas/ChannelStateResponse' description: Successful response "400": content: @@ -10664,50 +12163,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Hide channel + summary: Get or create channel tags: - Channels - /channels/{type}/{id}/image: - delete: + /channels/delete: + post: description: | - Deletes previously uploaded image + Allows to delete several channels at once asynchronously + + Sends events: + - channel.deleted Required permissions: - - DeleteAttachment - operationId: DeleteImage - parameters: - - in: path - name: type - required: true - schema: - description: The type of file - title: Type - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id + - DeleteChannel + operationId: DeleteChannels + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DeleteChannelsRequest' required: true - schema: - description: File ID - title: ID - type: string - writeOnly: true - x-stream-index: "002.002" - - in: query - name: url - schema: - description: File URL to delete - title: URL - type: string - writeOnly: true - x-stream-index: "001" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/FileDeleteResponse' + $ref: '#/components/schemas/DeleteChannelsResponse' description: Successful response "400": content: @@ -10721,44 +12202,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete image + summary: Deletes channels asynchronously tags: - - Messages - - Files + - Channels + - GDPR + /channels/read: post: description: | - Uploads image + Marks channels as read up to the specific message. If no channels is given, mark all channel as read + + Sends events: + - message.read Required permissions: - - UploadAttachment - operationId: UploadImage - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: 001.001.001 - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: 001.001.002 + - ReadChannel + operationId: MarkChannelsRead requestBody: content: - multipart/form-data: + application/json: schema: - $ref: '#/components/schemas/ImageUploadRequest' + $ref: '#/components/schemas/MarkChannelsReadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ImageUploadResponse' + $ref: '#/components/schemas/MarkReadResponse' description: Successful response "400": content: @@ -10772,58 +12242,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Upload image + summary: Mark channels as read tags: + - Channels - Messages - - Files - /channels/{type}/{id}/message: - post: + /channeltypes: + get: description: | - Sends new message to the specified channel - - Sends events: - - message.new - - message.updated - - Required permissions: - - AddLinks - - CreateMessage - - PinMessage - - SkipChannelCooldown - - SkipMessageModeration - - UseFrozenChannel - operationId: SendMessage - parameters: - - in: path - name: type - required: true - schema: - description: Channel type to interact with - title: Channel type - type: string - writeOnly: true - x-stream-index: "009.001" - - in: path - name: id - required: true - schema: - description: Channel ID to interact with - title: Channel ID - type: string - writeOnly: true - x-stream-index: "009.002" + Lists all available channel types + operationId: ListChannelTypes + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/ListChannelTypesResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: List channel types + tags: + - Settings + - Channel types + post: + description: | + Creates new channel type + operationId: CreateChannelType requestBody: content: application/json: schema: - $ref: '#/components/schemas/SendMessageRequest' + $ref: '#/components/schemas/CreateChannelTypeRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/SendMessageResponse' + $ref: '#/components/schemas/CreateChannelTypeResponse' description: Successful response "400": content: @@ -10837,49 +12303,31 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send new message + summary: Create channel type tags: - - Messages - /channels/{type}/{id}/messages: - get: + - Settings + - Channel types + /channeltypes/{name}: + delete: description: | - Returns list messages found by IDs - - Required permissions: - - ReadChannel - operationId: GetManyMessages + Deletes channel type + operationId: DeleteChannelType parameters: - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id + name: name required: true schema: + description: Channel type name + title: Name type: string writeOnly: true - x-stream-index: "002.002" - - in: query - name: ids - schema: - description: List of comma-separated IDs - items: - type: string - maximum: 50 - minimum: 1 - title: IDs - type: array x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/GetManyMessagesResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -10893,53 +12341,30 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get many messages + summary: Delete channel type tags: - - Messages - /channels/{type}/{id}/query: - post: + - Settings + - Channel types + get: description: | - This Method creates a channel or returns an existing one with matching attributes - - Sends events: - - channel.created - - member.added - - member.removed - - member.updated - - user.watching.start - operationId: GetOrCreateChannel + Gets channel type + operationId: GetChannelType parameters: - in: path - name: type - required: true - schema: - description: Channel type - maxLength: 64 - title: Type - type: string - writeOnly: true - x-stream-index: "002" - - in: path - name: id + name: name required: true schema: - description: Channel ID (maximum length of 64 characters) - title: ID + description: Channel type name + title: Name type: string writeOnly: true - x-stream-index: "003" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelGetOrCreateRequest' - required: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/ChannelStateResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -10953,47 +12378,34 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get or create channel + summary: Get channel type tags: - - Channels - /channels/{type}/{id}/read: - post: + - Settings + - Channel types + put: description: | - Marks channel as read up to the specific message - - Sends events: - - message.read - - Required permissions: - - ReadChannel - operationId: MarkRead + Updates channel type + operationId: UpdateChannelType parameters: - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id + name: name required: true schema: type: string writeOnly: true - x-stream-index: "002.002" + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/MarkReadRequest' + $ref: '#/components/schemas/UpdateChannelTypeRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MarkReadResponse' + $ref: '#/components/schemas/UpdateChannelTypeResponse' description: Successful response "400": content: @@ -11007,49 +12419,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark read + summary: Update channel type tags: - - Channels - - Messages - /channels/{type}/{id}/show: + - Settings + - Channel types + /check_push: post: description: | - Shows previously hidden channel - - Sends events: - - channel.visible - operationId: ShowChannel - parameters: - - in: path - name: type - required: true - schema: - description: Channel type to interact with - title: Channel type - type: string - writeOnly: true - x-stream-index: "001.001" - - in: path - name: id - required: true - schema: - description: Channel ID to interact with - title: Channel ID - type: string - writeOnly: true - x-stream-index: "001.002" + Sends a test message via push, this is a test endpoint to verify your push settings + operationId: CheckPush requestBody: content: application/json: schema: - $ref: '#/components/schemas/ShowChannelRequest' + $ref: '#/components/schemas/CheckPushRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ShowChannelResponse' + $ref: '#/components/schemas/CheckPushResponse' description: Successful response "400": content: @@ -11063,48 +12453,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Show channel + summary: Check push tags: - - Channels - /channels/{type}/{id}/truncate: + - Settings + - Testing + /check_sns: post: description: | - Truncates channel - - Sends events: - - channel.truncated - - Required permissions: - - DeleteChannel - - TruncateChannel - operationId: TruncateChannel - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "001.001" - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "001.002" + Validates Amazon SNS configuration + operationId: CheckSNS requestBody: content: application/json: schema: - $ref: '#/components/schemas/TruncateChannelRequest' + $ref: '#/components/schemas/CheckSNSRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/TruncateChannelResponse' + $ref: '#/components/schemas/CheckSNSResponse' description: Successful response "400": content: @@ -11118,44 +12487,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Truncate channel + summary: Check SNS tags: - - Channels - /channels/{type}/{id}/unread: - post: - description: | - Marks channel as unread from a specific message - - Required permissions: - - ReadChannel - operationId: MarkUnread - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.002" + - Settings + - Testing + /check_sqs: + post: + description: | + Validates Amazon SQS credentials + operationId: CheckSQS requestBody: content: application/json: schema: - $ref: '#/components/schemas/MarkUnreadRequest' + $ref: '#/components/schemas/CheckSQSRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/CheckSQSResponse' description: Successful response "400": content: @@ -11169,45 +12521,21 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark unread + summary: Check SQS tags: - - Channels - - Messages - /channels/{type}/query: - post: + - Settings + - Testing + /commands: + get: description: | - This Method creates a channel or returns an existing one with matching attributes - - Sends events: - - channel.created - - member.added - - member.removed - - member.updated - - user.watching.start - operationId: GetOrCreateChannel - parameters: - - in: path - name: type - required: true - schema: - description: Channel type - maxLength: 64 - title: Type - type: string - writeOnly: true - x-stream-index: "002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelGetOrCreateRequest' - required: true + Returns all custom commands + operationId: ListCommands responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/ChannelStateResponse' + $ref: '#/components/schemas/ListCommandsResponse' description: Successful response "400": content: @@ -11221,32 +12549,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get or create channel + summary: List commands tags: - - Channels - /channels/delete: + - Custom commands post: description: | - Allows to delete several channels at once asynchronously - - Sends events: - - channel.deleted - - Required permissions: - - DeleteChannel - operationId: DeleteChannels + Creates custom chat command + operationId: CreateCommand requestBody: content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelsRequest' + $ref: '#/components/schemas/CreateCommandRequest' + description: Command required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelsResponse' + $ref: '#/components/schemas/CreateCommandResponse' description: Successful response "400": content: @@ -11260,33 +12582,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Deletes channels asynchronously + summary: Create command tags: - - Channels - - GDPR - /channels/read: - post: + - Custom commands + /commands/{name}: + delete: description: | - Marks channels as read up to the specific message. If no channels is given, mark all channel as read - - Sends events: - - message.read - - Required permissions: - - ReadChannel - operationId: MarkChannelsRead - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MarkChannelsReadRequest' + Deletes custom chat command + operationId: DeleteCommand + parameters: + - in: path + name: name required: true + schema: + type: string + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MarkReadResponse' + $ref: '#/components/schemas/DeleteCommandResponse' description: Successful response "400": content: @@ -11300,21 +12616,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark channels as read + summary: Delete command tags: - - Channels - - Messages - /channeltypes: + - Custom commands get: description: | - Lists all available channel types - operationId: ListChannelTypes + Returns custom command by its name + operationId: GetCommand + parameters: + - in: path + name: name + required: true + schema: + type: string + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/ListChannelTypesResponse' + $ref: '#/components/schemas/GetCommandResponse' description: Successful response "400": content: @@ -11328,26 +12649,36 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: List channel types + summary: Get command tags: - - Settings - - Channel types - post: + - Custom commands + put: description: | - Creates new channel type - operationId: CreateChannelType + Updates custom chat command + operationId: UpdateCommand + parameters: + - in: path + name: name + required: true + schema: + description: Unique command name + title: Name + type: string + writeOnly: true + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/CreateChannelTypeRequest' + $ref: '#/components/schemas/UpdateCommandRequest' + description: Command required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/CreateChannelTypeResponse' + $ref: '#/components/schemas/UpdateCommandResponse' description: Successful response "400": content: @@ -11361,25 +12692,63 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create channel type + summary: Update command tags: - - Settings - - Channel types - /channeltypes/{name}: + - Custom commands + /connect: + get: + description: | + Establishes WebSocket connection for user + + Sends events: + - user.updated + operationId: Connect + parameters: + - content: + application/json: + schema: + $ref: '#/components/schemas/ConnectRequest' + x-stream-index: "001" + in: query + name: json + responses: + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Connect (WebSocket) + tags: + - Users + /devices: delete: description: | - Deletes channel type - operationId: DeleteChannelType + Deletes one device + operationId: DeleteDevice parameters: - - in: path - name: name - required: true + - in: query + name: id schema: - description: Channel type name - title: Name + description: Device ID to delete + title: ID type: string writeOnly: true x-stream-index: "001" + - in: query + name: user_id + schema: + description: '**Server-side only**. User ID which server acts upon' + title: User ID + type: string + writeOnly: true + x-stream-index: "002.001" responses: "200": content: @@ -11399,30 +12768,28 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete channel type + summary: Delete device tags: - - Settings - - Channel types + - Devices get: description: | - Gets channel type - operationId: GetChannelType + Returns all available devices + operationId: ListDevices parameters: - - in: path - name: name - required: true + - in: query + name: user_id schema: - description: Channel type name - title: Name + description: '**Server-side only**. User ID which server acts upon' + title: User ID type: string writeOnly: true - x-stream-index: "001" + x-stream-index: "001.001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/ListDevicesResponse' description: Successful response "400": content: @@ -11436,34 +12803,53 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get channel type + summary: List devices + tags: + - Devices + post: + description: | + Adds a new device to a user, if the same device already exists the call will have no effect + operationId: CreateDevice + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateDeviceRequest' + required: true + responses: + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Create device tags: - - Settings - - Channel types - put: + - Devices + - Push + /export/users: + post: description: | - Updates channel type - operationId: UpdateChannelType - parameters: - - in: path - name: name - required: true - schema: - type: string - writeOnly: true - x-stream-index: "001" + Exports user profile, reactions and messages for list of given users + operationId: ExportUsers requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelTypeRequest' + $ref: '#/components/schemas/ExportUsersRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelTypeResponse' + $ref: '#/components/schemas/ExportUsersResponse' description: Successful response "400": content: @@ -11477,27 +12863,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update channel type + summary: Export users tags: - - Settings - - Channel types - /check_push: + - Users + /export_channels: post: description: | - Sends a test message via push, this is a test endpoint to verify your push settings - operationId: CheckPush + Exports channel data to JSON file + operationId: ExportChannels requestBody: content: application/json: schema: - $ref: '#/components/schemas/CheckPushRequest' + $ref: '#/components/schemas/ExportChannelsRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/CheckPushResponse' + $ref: '#/components/schemas/ExportChannelsResponse' description: Successful response "400": content: @@ -11511,27 +12896,30 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Check push + summary: Export channels tags: - - Settings - - Testing - /check_sns: - post: - description: | - Validates Amazon SNS configuration - operationId: CheckSNS - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CheckSNSRequest' + - Channels + /export_channels/{id}: + get: + description: |2+ + + operationId: GetExportChannelsStatus + parameters: + - in: path + name: id required: true + schema: + description: Task ID + title: ID + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/CheckSNSResponse' + $ref: '#/components/schemas/GetExportChannelsStatusResponse' description: Successful response "400": content: @@ -11545,27 +12933,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Check SNS + summary: Export channels status tags: - - Settings - - Testing - /check_sqs: + - Channels + /guest: post: description: | - Validates Amazon SQS credentials - operationId: CheckSQS + Creates guest user + operationId: CreateGuest requestBody: content: application/json: schema: - $ref: '#/components/schemas/CheckSQSRequest' + $ref: '#/components/schemas/GuestRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/CheckSQSResponse' + $ref: '#/components/schemas/GuestResponse' description: Successful response "400": content: @@ -11579,21 +12966,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Check SQS + summary: Create guest tags: - - Settings - - Testing - /commands: - get: + - Users + /import_urls: + post: description: | - Returns all custom commands - operationId: ListCommands + Creates a new import URL + operationId: CreateImportURL + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateImportURLRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/ListCommandsResponse' + $ref: '#/components/schemas/CreateImportURLResponse' description: Successful response "400": content: @@ -11607,26 +12999,20 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: List commands + summary: Create import URL tags: - - Custom commands - post: + - Imports + /imports: + get: description: | - Creates custom chat command - operationId: CreateCommand - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateCommandRequest' - description: Command - required: true + Gets an import + operationId: ListImports responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/CreateCommandResponse' + $ref: '#/components/schemas/ListImportsResponse' description: Successful response "400": content: @@ -11640,27 +13026,25 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create command + summary: Get import tags: - - Custom commands - /commands/{name}: - delete: + - Imports + post: description: | - Deletes custom chat command - operationId: DeleteCommand - parameters: - - in: path - name: name + Creates a new import + operationId: CreateImport + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateImportRequest' required: true - schema: - type: string - x-stream-index: "001" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/DeleteCommandResponse' + $ref: '#/components/schemas/CreateImportResponse' description: Successful response "400": content: @@ -11674,26 +13058,28 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete command + summary: Create import tags: - - Custom commands + - Imports + /imports/{id}: get: description: | - Returns custom command by its name - operationId: GetCommand + Gets an import + operationId: GetImport parameters: - in: path - name: name + name: id required: true schema: type: string + writeOnly: true x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/GetCommandResponse' + $ref: '#/components/schemas/GetImportResponse' description: Successful response "400": content: @@ -11707,37 +13093,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get command + summary: Get import tags: - - Custom commands - put: + - Imports + /longpoll: + get: description: | - Updates custom chat command - operationId: UpdateCommand + WebSocket fallback transport endpoint + + Sends events: + - user.updated + operationId: LongPoll parameters: - - in: path - name: name - required: true + - content: + application/json: + schema: + $ref: '#/components/schemas/ConnectRequest' + x-stream-index: "001" + in: query + name: json + - in: query + name: connection_id schema: - description: Unique command name - title: Name + maxLength: 36 type: string writeOnly: true - x-stream-index: "001" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateCommandRequest' - description: Command - required: true + x-stream-index: "002" responses: - "201": - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateCommandResponse' - description: Successful response "400": content: application/json: @@ -11750,26 +13132,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update command + summary: Long Poll (Transport) tags: - - Custom commands - /connect: + - Users + /members: get: description: | - Establishes WebSocket connection for user + Find and filter channel members - Sends events: - - user.updated - operationId: Connect + Required permissions: + - ReadChannel + operationId: QueryMembers parameters: - content: application/json: schema: - $ref: '#/components/schemas/ConnectRequest' + $ref: '#/components/schemas/QueryMembersRequest' x-stream-index: "001" in: query - name: json + name: payload responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/MembersResponse' + description: Successful response "400": content: application/json: @@ -11782,37 +13170,50 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Connect (WebSocket) + summary: Query members tags: - - Users - /devices: + - Channels + /messages/{id}: delete: description: | - Deletes one device - operationId: DeleteDevice + Deletes message + + Sends events: + - message.deleted + + Required permissions: + - DeleteMessage + operationId: DeleteMessage parameters: - - in: query + - in: path name: id + required: true schema: - description: Device ID to delete + description: Message ID to delete title: ID type: string writeOnly: true x-stream-index: "001" - in: query - name: user_id + name: hard + schema: + description: Delete all message reactions and replies as well + title: Hard + type: boolean + writeOnly: true + x-stream-index: "002" + - in: query + name: deleted_by schema: - description: '**Server-side only**. User ID which server acts upon' - title: User ID type: string writeOnly: true - x-stream-index: "002.001" + x-stream-index: "003" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -11826,28 +13227,38 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete device + summary: Delete message tags: - - Devices + - Messages get: description: | - Returns all available devices - operationId: ListDevices + Returns message by ID + + Required permissions: + - ReadChannel + operationId: GetMessage parameters: - - in: query - name: user_id + - in: path + name: id + required: true schema: - description: '**Server-side only**. User ID which server acts upon' - title: User ID + description: Message ID + title: ID type: string writeOnly: true - x-stream-index: "001.001" + x-stream-index: "002" + - in: query + name: show_deleted_message + schema: + type: boolean + writeOnly: true + x-stream-index: "003" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/ListDevicesResponse' + $ref: '#/components/schemas/MessageWithPendingMetadataResponse' description: Successful response "400": content: @@ -11861,20 +13272,43 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: List devices + summary: Get message tags: - - Devices + - Messages post: description: | - Adds a new device to a user, if the same device already exists the call will have no effect - operationId: CreateDevice + Updates message with new data + + Sends events: + - message.updated + + Required permissions: + - AddLinks + - PinMessage + - SkipMessageModeration + - UpdateMessage + operationId: UpdateMessage + parameters: + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "003.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/CreateDeviceRequest' + $ref: '#/components/schemas/UpdateMessageRequest' required: true responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateMessageResponse' + description: Successful response "400": content: application/json: @@ -11887,27 +13321,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create device + summary: Update message tags: - - Devices - - Push - /export/users: - post: + - Messages + put: description: | - Exports user profile, reactions and messages for list of given users - operationId: ExportUsers + Updates certain fields of the message + + Sends events: + - message.updated + + Required permissions: + - AddLinks + - PinMessage + - SkipMessageModeration + - UpdateMessage + operationId: UpdateMessagePartial + parameters: + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "003.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/ExportUsersRequest' + $ref: '#/components/schemas/UpdateMessagePartialRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ExportUsersResponse' + $ref: '#/components/schemas/UpdateMessagePartialResponse' description: Successful response "400": content: @@ -11921,26 +13370,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Export users + summary: Partially message update tags: - - Users - /export_channels: + - Messages + /messages/{id}/action: post: description: | - Exports channel data to JSON file - operationId: ExportChannels + Executes message command action with given parameters + + Sends events: + - message.new + + Required permissions: + - RunMessageAction + operationId: RunMessageAction + parameters: + - in: path + name: id + required: true + schema: + description: Message ID + title: ID + type: string + writeOnly: true + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/ExportChannelsRequest' + $ref: '#/components/schemas/MessageActionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ExportChannelsResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -11954,30 +13419,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Export channels + summary: Run message command action tags: - - Channels - /export_channels/{id}: - get: - description: |2+ + - Messages + /messages/{id}/commit: + post: + description: | + Commits a pending message, which will make it visible in the channel - operationId: GetExportChannelsStatus + Sends events: + - message.new + - message.updated + operationId: CommitMessage parameters: - in: path name: id required: true schema: - description: Task ID - title: ID type: string writeOnly: true x-stream-index: "001" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetExportChannelsStatusResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -11991,26 +13458,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Export channels status - tags: - - Channels - /guest: + summary: Commit message + /messages/{id}/reaction: post: description: | - Creates guest user - operationId: CreateGuest + Sends reaction to specified message + + Sends events: + - reaction.new + - reaction.updated + + Required permissions: + - CreateReaction + - UseFrozenChannel + operationId: SendReaction + parameters: + - in: path + name: id + required: true + schema: + description: Message ID to send reaction for + title: ID + type: string + writeOnly: true + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/GuestRequest' + $ref: '#/components/schemas/SendReactionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/GuestResponse' + $ref: '#/components/schemas/ReactionResponse' description: Successful response "400": content: @@ -12024,26 +13507,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create guest + summary: Send reaction tags: - - Users - /import_urls: - post: + - Messages + - Reactions + /messages/{id}/reaction/{type}: + delete: description: | - Creates a new import URL - operationId: CreateImportURL - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateImportURLRequest' + Removes user reaction from the message + + Sends events: + - reaction.deleted + + Required permissions: + - DeleteReaction + operationId: DeleteReaction + parameters: + - in: path + name: id + required: true + schema: + description: Message ID to remove reaction from + title: ID + type: string + writeOnly: true + x-stream-index: "001" + - in: path + name: type required: true + schema: + description: Reaction type to remove + title: Type + type: string + writeOnly: true + x-stream-index: "002" + - in: query + name: user_id + schema: + description: '**Server-side only**. User ID which server acts upon' + title: User ID + type: string + writeOnly: true + x-stream-index: "003" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/CreateImportURLResponse' + $ref: '#/components/schemas/ReactionRemovalResponse' description: Successful response "400": content: @@ -12057,20 +13568,52 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create import URL + summary: Delete reaction tags: - - Imports - /imports: + - Messages + - Reactions + /messages/{id}/reactions: get: description: | - Gets an import - operationId: ListImports + Returns list of reactions of specific message + + Required permissions: + - ReadChannel + operationId: GetReactions + parameters: + - in: path + name: id + required: true + schema: + description: Message ID + title: ID + type: string + writeOnly: true + x-stream-index: "001" + - in: query + name: limit + schema: + description: Number of records to return + format: int32 + title: Limit + type: integer + writeOnly: true + x-stream-index: "002" + - in: query + name: offset + schema: + description: Number of records to offset + format: int32 + title: Offset + type: integer + writeOnly: true + x-stream-index: "003" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/ListImportsResponse' + $ref: '#/components/schemas/GetReactionsResponse' description: Successful response "400": content: @@ -12084,25 +13627,43 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get import + summary: Get reactions tags: - - Imports + - Messages + - Reactions + /messages/{id}/translate: post: description: | - Creates a new import - operationId: CreateImport + Translates message to a given language using automated translation software + + Sends events: + - message.updated + + Required permissions: + - ReadChannel + operationId: TranslateMessage + parameters: + - in: path + name: id + required: true + schema: + description: Message ID + title: ID + type: string + writeOnly: true + x-stream-index: "001.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/CreateImportRequest' + $ref: '#/components/schemas/TranslateMessageRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/CreateImportResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -12116,14 +13677,17 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create import + summary: Translate message tags: - - Imports - /imports/{id}: - get: + - Messages + /messages/{id}/undelete: + post: description: | - Gets an import - operationId: GetImport + Undelete a message that was previously soft-deleted + + Sends events: + - message.undeleted + operationId: UndeleteMessage parameters: - in: path name: id @@ -12131,13 +13695,19 @@ paths: schema: type: string writeOnly: true - x-stream-index: "001" + x-stream-index: "003.001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateMessageRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetImportResponse' + $ref: '#/components/schemas/UpdateMessageResponse' description: Successful response "400": content: @@ -12151,33 +13721,48 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get import + summary: Undelete message tags: - - Imports - /longpoll: - get: + - Messages + /messages/{message_id}/polls/{poll_id}/vote: + post: description: | - WebSocket fallback transport endpoint + Cast a vote on a poll Sends events: - - user.updated - operationId: LongPoll + - poll.vote_casted + + Required permissions: + - CastVote + operationId: CastPollVote parameters: - - content: - application/json: - schema: - $ref: '#/components/schemas/ConnectRequest' - x-stream-index: "001" - in: query - name: json - - in: query - name: connection_id + - in: path + name: message_id + required: true schema: - maxLength: 36 type: string writeOnly: true + x-stream-index: "001" + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string x-stream-index: "002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CastPollVoteRequest' + required: true responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/PollVoteResponse' + description: Successful response "400": content: application/json: @@ -12190,31 +13775,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Long Poll (Transport) + summary: Cast vote tags: - - Users - /members: - get: + - Polls + /messages/{message_id}/polls/{poll_id}/vote/{vote_id}: + delete: description: | - Find and filter channel members + Delete a vote from a poll + + Sends events: + - poll.vote_removed Required permissions: - - ReadChannel - operationId: QueryMembers + - CastVote + operationId: RemovePollVote parameters: - - content: - application/json: - schema: - $ref: '#/components/schemas/QueryMembersRequest' - x-stream-index: "001" - in: query - name: payload + - in: path + name: message_id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002" + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: path + name: vote_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "004" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/MembersResponse' + $ref: '#/components/schemas/PollVoteResponse' description: Successful response "400": content: @@ -12228,50 +13836,88 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query members + summary: Delete vote tags: - - Channels - /messages/{id}: - delete: + - Polls + /messages/{parent_id}/replies: + get: description: | - Deletes message - - Sends events: - - message.deleted + Returns replies (thread) of the message Required permissions: - - DeleteMessage - operationId: DeleteMessage + - ReadChannel + operationId: GetReplies parameters: - in: path - name: id + name: parent_id required: true schema: - description: Message ID to delete - title: ID + description: ID of a message which replies to return + title: Parent ID type: string writeOnly: true x-stream-index: "001" - in: query - name: hard + name: id_gte schema: - description: Delete all message reactions and replies as well - title: Hard - type: boolean - writeOnly: true - x-stream-index: "002" + type: string + x-stream-index: 002.001.003 + - in: query + name: id_gt + schema: + type: string + x-stream-index: 002.001.004 + - in: query + name: id_lte + schema: + type: string + x-stream-index: 002.001.005 + - in: query + name: id_lt + schema: + type: string + x-stream-index: 002.001.006 + - in: query + name: created_at_after_or_equal + schema: + format: date-time + type: string + x-stream-index: 002.001.007 + - in: query + name: created_at_after + schema: + format: date-time + type: string + x-stream-index: 002.001.008 + - in: query + name: created_at_before_or_equal + schema: + format: date-time + type: string + x-stream-index: 002.001.009 + - in: query + name: created_at_before + schema: + format: date-time + type: string + x-stream-index: 002.001.010 + - in: query + name: id_around + schema: + type: string + x-stream-index: 002.001.011 - in: query - name: deleted_by + name: created_at_around schema: + format: date-time type: string - writeOnly: true - x-stream-index: "003" + x-stream-index: 002.001.012 responses: "200": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/GetRepliesResponse' description: Successful response "400": content: @@ -12285,38 +13931,48 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete message + summary: Get replies tags: - Messages - get: + /moderation/ban: + delete: description: | - Returns message by ID + Removes previously applied ban + + Sends events: + - user.unbanned Required permissions: - - ReadChannel - operationId: GetMessage + - BanChannelMember + - BanUser + operationId: Unban parameters: - - in: path - name: id - required: true + - in: query + name: target_user_id + schema: + type: string + x-stream-index: "001" + - in: query + name: type schema: - description: Message ID - title: ID type: string - writeOnly: true x-stream-index: "002" - in: query - name: show_deleted_message + name: id schema: - type: boolean - writeOnly: true + type: string x-stream-index: "003" + - in: query + name: created_by + schema: + type: string + x-stream-index: "004" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/MessageWithPendingMetadataResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -12330,42 +13986,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get message + summary: Unban user tags: - - Messages + - Users + - Moderation post: description: | - Updates message with new data + Restricts user activity either in specific channel or globally Sends events: - - message.updated + - user.banned Required permissions: - - AddLinks - - PinMessage - - SkipMessageModeration - - UpdateMessage - operationId: UpdateMessage - parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "003.001" + - BanChannelMember + - BanUser + operationId: Ban requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageRequest' + $ref: '#/components/schemas/BanRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -12379,42 +14026,35 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update message + summary: Ban user tags: - - Messages - put: + - Users + - Moderation + /moderation/flag: + post: description: | - Updates certain fields of the message + Reports message or user for review by moderators Sends events: - - message.updated + - message.flagged + - user.flagged Required permissions: - - AddLinks - - PinMessage - - SkipMessageModeration - - UpdateMessage - operationId: UpdateMessagePartial - parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "003.001" + - FlagMessage + - FlagUser + operationId: Flag requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateMessagePartialRequest' + $ref: '#/components/schemas/FlagRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessagePartialResponse' + $ref: '#/components/schemas/FlagResponse' description: Successful response "400": content: @@ -12428,42 +14068,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Partially message update + summary: Flag tags: + - Moderation - Messages - /messages/{id}/action: - post: + - Users + /moderation/flags/message: + get: description: | - Executes message command action with given parameters - - Sends events: - - message.new + Find and filter message flags Required permissions: - - RunMessageAction - operationId: RunMessageAction + - ReadMessageFlags + operationId: QueryMessageFlags parameters: - - in: path - name: id - required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001" - requestBody: - content: + - content: application/json: schema: - $ref: '#/components/schemas/MessageActionRequest' - required: true + $ref: '#/components/schemas/QueryMessageFlagsRequest' + x-stream-index: "001" + in: query + name: payload responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/QueryMessageFlagsResponse' description: Successful response "400": content: @@ -12477,32 +14108,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Run message command action + summary: Query Message Flags tags: - Messages - /messages/{id}/commit: + - Moderation + /moderation/mute: post: description: | - Commits a pending message, which will make it visible in the channel + Mutes one or several users Sends events: - - message.new - - message.updated - operationId: CommitMessage - parameters: - - in: path - name: id + - user.muted + + Required permissions: + - MuteUser + operationId: MuteUser + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/MuteUserRequest' required: true - schema: - type: string - writeOnly: true - x-stream-index: "001" responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/MuteUserResponse' description: Successful response "400": content: @@ -12516,42 +14148,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Commit message - /messages/{id}/reaction: + summary: Mute user + tags: + - Users + - Moderation + /moderation/mute/channel: post: description: | - Sends reaction to specified message + Mutes channel for user Sends events: - - reaction.new - - reaction.updated + - channel.muted Required permissions: - - CreateReaction - - UseFrozenChannel - operationId: SendReaction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID to send reaction for - title: ID - type: string - writeOnly: true - x-stream-index: "001" + - MuteChannel + operationId: MuteChannel requestBody: content: application/json: schema: - $ref: '#/components/schemas/SendReactionRequest' + $ref: '#/components/schemas/MuteChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ReactionResponse' + $ref: '#/components/schemas/MuteChannelResponse' description: Successful response "400": content: @@ -12565,54 +14188,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send reaction + summary: Mute channel tags: - - Messages - - Reactions - /messages/{id}/reaction/{type}: - delete: + - Channels + /moderation/unmute: + post: description: | - Removes user reaction from the message + Unmutes previously muted user Sends events: - - reaction.deleted - - Required permissions: - - DeleteReaction - operationId: DeleteReaction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID to remove reaction from - title: ID - type: string - writeOnly: true - x-stream-index: "001" - - in: path - name: type - required: true - schema: - description: Reaction type to remove - title: Type - type: string - writeOnly: true - x-stream-index: "002" - - in: query - name: user_id - schema: - description: '**Server-side only**. User ID which server acts upon' - title: User ID - type: string - writeOnly: true - x-stream-index: "003" + - user.unmuted + + Required permissions: + - MuteUser + operationId: UnmuteUser + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UnmuteUserRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/ReactionRemovalResponse' + $ref: '#/components/schemas/UnmuteResponse' description: Successful response "400": content: @@ -12626,52 +14227,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete reaction + summary: Unmute user tags: - - Messages - - Reactions - /messages/{id}/reactions: - get: + - Users + - Moderation + /moderation/unmute/channel: + post: description: | - Returns list of reactions of specific message + Unmutes channel for user + + Sends events: + - channel.unmuted Required permissions: - - ReadChannel - operationId: GetReactions - parameters: - - in: path - name: id + - MuteChannel + operationId: UnmuteChannel + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UnmuteChannelRequest' required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001" - - in: query - name: limit - schema: - description: Number of records to return - format: int32 - title: Limit - type: integer - writeOnly: true - x-stream-index: "002" - - in: query - name: offset - schema: - description: Number of records to offset - format: int32 - title: Offset - type: integer - writeOnly: true - x-stream-index: "003" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetReactionsResponse' + $ref: '#/components/schemas/UnmuteResponse' description: Successful response "400": content: @@ -12685,44 +14267,30 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get reactions + summary: Unmute channel tags: - - Messages - - Reactions - /messages/{id}/translate: - post: + - Channels + /og: + get: description: | - Translates message to a given language using automated translation software - - Sends events: - - message.updated - - Required permissions: - - ReadChannel - operationId: TranslateMessage + Get an OpenGraph attachment for a link + operationId: GetOG parameters: - - in: path - name: id - required: true + - in: query + name: url schema: - description: Message ID - title: ID + description: URL to be scraped + title: URL type: string writeOnly: true - x-stream-index: "001.001" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TranslateMessageRequest' - required: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' - description: Successful response + $ref: '#/components/schemas/GetOGResponse' + description: Get OG Attachment "400": content: application/json: @@ -12735,37 +14303,20 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Translate message + summary: Get OG tags: - Messages - /messages/{id}/undelete: - post: + /permissions: + get: description: | - Undelete a message that was previously soft-deleted - - Sends events: - - message.undeleted - operationId: UndeleteMessage - parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "003.001" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateMessageRequest' - required: true + Lists all available permissions + operationId: ListPermissions responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageResponse' + $ref: '#/components/schemas/ListPermissionsResponse' description: Successful response "400": content: @@ -12779,88 +14330,30 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Undelete message + summary: List permissions tags: - - Messages - /messages/{parent_id}/replies: + - Permissions V2 + /permissions/{id}: get: description: | - Returns replies (thread) of the message - - Required permissions: - - ReadChannel - operationId: GetReplies + Gets custom permission + operationId: GetPermission parameters: - in: path - name: parent_id + name: id required: true schema: - description: ID of a message which replies to return - title: Parent ID + description: Permission ID + title: ID type: string writeOnly: true x-stream-index: "001" - - in: query - name: id_gte - schema: - type: string - x-stream-index: 002.001.003 - - in: query - name: id_gt - schema: - type: string - x-stream-index: 002.001.004 - - in: query - name: id_lte - schema: - type: string - x-stream-index: 002.001.005 - - in: query - name: id_lt - schema: - type: string - x-stream-index: 002.001.006 - - in: query - name: created_at_after_or_equal - schema: - format: date-time - type: string - x-stream-index: 002.001.007 - - in: query - name: created_at_after - schema: - format: date-time - type: string - x-stream-index: 002.001.008 - - in: query - name: created_at_before_or_equal - schema: - format: date-time - type: string - x-stream-index: 002.001.009 - - in: query - name: created_at_before - schema: - format: date-time - type: string - x-stream-index: 002.001.010 - - in: query - name: id_around - schema: - type: string - x-stream-index: 002.001.011 - - in: query - name: created_at_around - schema: - format: date-time - type: string - x-stream-index: 002.001.012 responses: "200": content: application/json: schema: - $ref: '#/components/schemas/GetRepliesResponse' + $ref: '#/components/schemas/GetCustomPermissionResponse' description: Successful response "400": content: @@ -12874,48 +14367,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get replies + summary: Get permission tags: - - Messages - /moderation/ban: - delete: + - Permissions V2 + /polls: + post: description: | - Removes previously applied ban - - Sends events: - - user.unbanned - - Required permissions: - - BanChannelMember - - BanUser - operationId: Unban - parameters: - - in: query - name: target_user_id - schema: - type: string - x-stream-index: "001" - - in: query - name: type - schema: - type: string - x-stream-index: "002" - - in: query - name: id - schema: - type: string - x-stream-index: "003" - - in: query - name: created_by - schema: - type: string - x-stream-index: "004" + Creates a new poll + + Sends events: + - poll.created + + Required permissions: + - CreatePoll + operationId: CreatePoll + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreatePollRequest' + description: Create Poll Request + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -12929,33 +14407,31 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unban user + summary: Create poll tags: - - Users - - Moderation - post: + - Polls + put: description: | - Restricts user activity either in specific channel or globally + Updates a poll Sends events: - - user.banned + - poll.updated Required permissions: - - BanChannelMember - - BanUser - operationId: Ban + - UpdatePoll + operationId: UpdatePoll requestBody: content: application/json: schema: - $ref: '#/components/schemas/BanRequest' + $ref: '#/components/schemas/UpdatePollRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -12969,35 +14445,40 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Ban user + summary: Update poll tags: - - Users - - Moderation - /moderation/flag: - post: + - Polls + /polls/{poll_id}: + delete: description: | - Reports message or user for review by moderators + Deletes a poll Sends events: - - message.flagged - - user.flagged + - poll.deleted Required permissions: - - FlagMessage - - FlagUser - operationId: Flag - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FlagRequest' + - DeletePoll + operationId: DeletePoll + parameters: + - in: path + name: poll_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/FlagResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -13011,33 +14492,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Flag + summary: Delete poll tags: - - Moderation - - Messages - - Users - /moderation/flags/message: + - Polls get: description: | - Find and filter message flags - - Required permissions: - - ReadMessageFlags - operationId: QueryMessageFlags + Retrieves a poll + operationId: GetPoll parameters: - - content: - application/json: - schema: - $ref: '#/components/schemas/QueryMessageFlagsRequest' - x-stream-index: "001" - in: query - name: payload + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/QueryMessageFlagsResponse' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -13051,33 +14532,39 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query Message Flags + summary: Get poll tags: - - Messages - - Moderation - /moderation/mute: - post: + - Polls + patch: description: | - Mutes one or several users + Updates a poll partially Sends events: - - user.muted + - poll.updated Required permissions: - - MuteUser - operationId: MuteUser + - UpdatePoll + operationId: UpdatePollPartial + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/MuteUserRequest' + $ref: '#/components/schemas/UpdatePollPartialRequest' required: true responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MuteUserResponse' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -13091,33 +14578,41 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mute user + summary: Partial update poll tags: - - Users - - Moderation - /moderation/mute/channel: + - Polls + /polls/{poll_id}/options: post: description: | - Mutes channel for user + Creates a poll option Sends events: - - channel.muted + - poll.updated Required permissions: - - MuteChannel - operationId: MuteChannel + - CastVote + - UpdatePoll + operationId: CreatePollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/MuteChannelRequest' + $ref: '#/components/schemas/CreatePollOptionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MuteChannelResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -13131,32 +14626,39 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mute channel + summary: Create poll option tags: - - Channels - /moderation/unmute: - post: + - Polls + put: description: | - Unmutes previously muted user + Updates a poll option Sends events: - - user.unmuted + - poll.updated Required permissions: - - MuteUser - operationId: UnmuteUser + - UpdatePoll + operationId: UpdatePollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UnmuteUserRequest' + $ref: '#/components/schemas/UpdatePollOptionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UnmuteResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -13170,33 +14672,47 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unmute user + summary: Update poll option tags: - - Users - - Moderation - /moderation/unmute/channel: - post: + - Polls + /polls/{poll_id}/options/{option_id}: + delete: description: | - Unmutes channel for user + Deletes a poll option Sends events: - - channel.unmuted + - poll.updated Required permissions: - - MuteChannel - operationId: UnmuteChannel - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UnmuteChannelRequest' + - UpdatePoll + operationId: DeletePollOption + parameters: + - in: path + name: poll_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: path + name: option_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/UnmuteResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -13210,20 +14726,31 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unmute channel + summary: Delete poll option tags: - - Channels - /og: + - Polls get: description: | - Get an OpenGraph attachment for a link - operationId: GetOG + Retrieves a poll option + operationId: GetPollOption parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: path + name: option_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" - in: query - name: url + name: user_id schema: - description: URL to be scraped - title: URL type: string writeOnly: true x-stream-index: "001" @@ -13232,8 +14759,8 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/GetOGResponse' - description: Get OG Attachment + $ref: '#/components/schemas/PollOptionResponse' + description: Successful response "400": content: application/json: @@ -13246,20 +14773,40 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get OG + summary: Get poll option tags: - - Messages - /permissions: - get: + - Polls + /polls/{poll_id}/votes: + post: description: | - Lists all available permissions - operationId: ListPermissions + Queries votes + operationId: QueryPollVotes + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryPollVotesRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/ListPermissionsResponse' + $ref: '#/components/schemas/PollVotesResponse' description: Successful response "400": content: @@ -13273,30 +14820,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: List permissions + summary: Query votes tags: - - Permissions V2 - /permissions/{id}: - get: + - Polls + /polls/query: + post: description: | - Gets custom permission - operationId: GetPermission + Queries polls + operationId: QueryPolls parameters: - - in: path - name: id - required: true + - in: query + name: user_id schema: - description: Permission ID - title: ID type: string writeOnly: true x-stream-index: "001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryPollsRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetCustomPermissionResponse' + $ref: '#/components/schemas/QueryPollsResponse' description: Successful response "400": content: @@ -13310,9 +14860,9 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get permission + summary: Query polls tags: - - Permissions V2 + - Polls /push_providers: get: description: | diff --git a/openapi/clientside-api.json b/openapi/clientside-api.json index 976af127..36a38eb0 100644 --- a/openapi/clientside-api.json +++ b/openapi/clientside-api.json @@ -1 +1 @@ -{"components":{"schemas":{"APIError":{"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNConfigFields":{"properties":{"auth_key":{"type":"string","x-stream-index":"009"},"auth_type":{"type":"string","x-stream-index":"003"},"bundle_id":{"type":"string","x-stream-index":"006"},"development":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"},"host":{"type":"string","x-stream-index":"005"},"key_id":{"type":"string","x-stream-index":"008"},"notification_template":{"type":"string","x-stream-index":"004"},"p12_cert":{"type":"string","x-stream-index":"010"},"team_id":{"type":"string","x-stream-index":"007"}},"required":["enabled","development","notification_template"],"type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"AcceptCallRequest":{"nullable":true,"type":"object"},"AcceptCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Action":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"required":["name","text","type"],"type":"object"},"ActionRequest":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"type":"object"},"AnyEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"custom","type":"string","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"AnyEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"App":{"properties":{"agora_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.038"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.018"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.016"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.019"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.020"},"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallType"},"type":"object","x-stream-index":"001.006"},"campaign_enabled":{"type":"boolean","x-stream-index":"001.033"},"cdn_expiration_seconds":{"format":"int32","type":"integer","x-stream-index":"001.036"},"channel_configs":{"additionalProperties":{"$ref":"#/components/schemas/ChannelConfig"},"description":"Object with channel configs","title":"Channel configs","type":"object","x-stream-index":"001.005","x-stream-map":{"key":"channel_type"}},"custom_action_handler_url":{"type":"string","x-stream-index":"001.021"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfo","x-stream-index":"001.041"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.010"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.011"},"enforce_unique_usernames":{"type":"string","x-stream-index":"001.022"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.029"},"geofences":{"items":{"$ref":"#/components/schemas/GeofenceResponse"},"type":"array","x-stream-index":"001.040"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.039"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.015"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.017"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.030"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.014"},"name":{"type":"string","x-stream-index":"001.001"},"organization":{"type":"string","x-stream-index":"001.002"},"permission_version":{"type":"string","x-stream-index":"001.012"},"policies":{"additionalProperties":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"type":"object","x-stream-index":"001.007"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationFields","x-stream-index":"001.003"},"reminders_interval":{"format":"int32","type":"integer","x-stream-index":"001.035"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.031"},"sns_key":{"type":"string","x-stream-index":"001.027"},"sns_secret":{"type":"string","x-stream-index":"001.028"},"sns_topic_arn":{"type":"string","x-stream-index":"001.026"},"sqs_key":{"type":"string","x-stream-index":"001.024"},"sqs_secret":{"type":"string","x-stream-index":"001.025"},"sqs_url":{"type":"string","x-stream-index":"001.023"},"suspended":{"type":"boolean","x-stream-index":"001.008"},"suspended_explanation":{"type":"string","x-stream-index":"001.009"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"video_provider":{"type":"string","x-stream-index":"001.037"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.034"},"webhook_url":{"type":"string","x-stream-index":"001.004"}},"required":["name","organization","push_notifications","webhook_url","channel_configs","call_types","policies","suspended","suspended_explanation","disable_auth_checks","disable_permissions_checks","permission_version","user_search_disallowed_roles","multi_tenant_enabled","image_moderation_enabled","async_url_enrich_enabled","custom_action_handler_url","enforce_unique_usernames","sqs_url","sqs_key","sqs_secret","sns_topic_arn","sns_key","sns_secret","file_upload_config","image_upload_config","grants","campaign_enabled","webhook_events","reminders_interval","cdn_expiration_seconds","video_provider"],"type":"object"},"Attachment":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"019"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"021"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url)","title":"Type","type":"string","x-stream-index":"001"}},"required":["Custom"],"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AttachmentRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"actions":{"items":{"$ref":"#/components/schemas/ActionRequest"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/FieldRequest"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/ImagesRequest","x-stream-index":"019"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"021"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url)","title":"Type","type":"string","x-stream-index":"001"}},"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AudioSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["default_device"],"type":"object"},"AutomodDetails":{"properties":{"action":{"type":"string","x-stream-index":"001"},"image_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"message_details":{"$ref":"#/components/schemas/FlagMessageDetails","x-stream-index":"004"},"original_message_type":{"type":"string","x-stream-index":"002"},"result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"003"}},"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BackstageSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"BanRequest":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserRequest","description":"User who issued a ban","title":"Banned by","x-stream-index":"009"},"banned_by_id":{"description":"User ID who issued a ban","title":"Banned by ID","type":"string","x-stream-index":"008"},"id":{"description":"Channel ID to ban user in","title":"ID","type":"string","x-stream-index":"005"},"ip_ban":{"description":"Whether to perform IP ban or not","title":"IP ban","type":"boolean","x-stream-index":"007"},"reason":{"description":"Ban reason","title":"Reason","type":"string","x-stream-index":"003"},"shadow":{"description":"Whether to perform shadow ban or not","title":"Shadow","type":"boolean","x-stream-index":"006"},"target_user_id":{"description":"ID of user to ban","title":"Target user ID","type":"string","x-stream-index":"001"},"timeout":{"description":"Timeout of ban in minutes. User will be unbanned after this period of time","title":"Timeout","type":"integer","x-stream-index":"002"},"type":{"description":"Channel type to ban user in","title":"Type","type":"string","x-stream-index":"004"}},"required":["target_user_id"],"type":"object"},"BanResponse":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"expires":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"required":["created_at"],"type":"object"},"BlockListOptions":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"required":["blocklist","behavior"],"type":"object"},"BlockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to block","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"BlockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"BlockedUserEvent":{"description":"This event is sent to call participants to notify when a user is blocked on a call, clients can use this event to show a notification. \nIf the user is the current user, the client should leave the call screen as well","properties":{"blocked_by_user":{"$ref":"#/components/schemas/UserResponse","description":"The user that blocked the user, null if the user was blocked by server-side","title":"Blocked by","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.blocked_user","description":"The type of event: \"call.blocked_user\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that was blocked","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user"],"title":"BlockedUserEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"BroadcastSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettings","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"BroadcastSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsRequest","x-stream-index":"002"}},"type":"object"},"BroadcastSettingsResponse":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsResponse","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"CallAcceptedEvent":{"description":"This event is sent when a user accepts a notification to join a call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.accepted","description":"The type of event: \"call.accepted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who accepted the call","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call","user"],"title":"CallAcceptedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallClosedCaption":{"description":"CallClosedCaption represents a closed caption of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the closed caption.","type":"string","x-stream-index":"003"},"speaker_id":{"title":"The speaker ID of the closed caption.","type":"string","x-stream-index":"004"},"start_time":{"format":"date-time","title":"The start time of the closed caption.","type":"string","x-stream-index":"002"},"text":{"title":"The text of the closed caption.","type":"string","x-stream-index":"001"}},"required":["text","start_time","end_time","speaker_id"],"type":"object"},"CallCreatedEvent":{"description":"This event is sent when a call is created. Clients receiving this event should check if the ringing \nfield is set to true and if so, show the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the members added to this call","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.created","description":"The type of event: \"call.created\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallCreatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallDeletedEvent":{"description":"This event is sent when a call is deleted. Clients receiving this event should leave the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.deleted","description":"The type of event: \"call.deleted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call"],"title":"CallDeletedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallEndedEvent":{"description":"This event is sent when a call is mark as ended for all its participants. Clients receiving this event should leave the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.ended","description":"The type of event: \"call.ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who ended the call, null if the call was ended by the server","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call"],"title":"CallEndedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallEvent":{"nullable":true,"properties":{"description":{"type":"string","x-stream-index":"003"},"severity":{"format":"int32","type":"integer","x-stream-index":"002"},"timestamp":{"format":"int32","type":"integer","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"004"}},"required":["timestamp","severity","description","type"],"type":"object"},"CallHLSBroadcastingFailedEvent":{"description":"This event is sent when HLS broadcasting has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.hls_broadcasting_failed","description":"The type of event: \"call.hls_broadcasting_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallHLSBroadcastingFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallHLSBroadcastingStartedEvent":{"description":"This event is sent when HLS broadcasting has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"hls_playlist_url":{"type":"string","x-stream-index":"003"},"type":{"default":"call.hls_broadcasting_started","description":"The type of event: \"call.hls_broadcasting_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","hls_playlist_url"],"title":"CallHLSBroadcastingStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallHLSBroadcastingStoppedEvent":{"description":"This event is sent when HLS broadcasting has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.hls_broadcasting_stopped","description":"The type of event: \"call.hls_broadcasting_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallHLSBroadcastingStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallIngressResponse":{"properties":{"rtmp":{"$ref":"#/components/schemas/RTMPIngress","x-stream-index":"001"}},"required":["rtmp"],"title":"Call inputs","type":"object"},"CallLiveStartedEvent":{"description":"This event is sent when a call is started. Clients receiving this event should start the call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.live_started","description":"The type of event: \"call.live_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call"],"title":"CallLiveStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberAddedEvent":{"description":"This event is sent when one or more members are added to a call","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the members added to this call","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_added","description":"The type of event: \"call.member_added\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberAddedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberRemovedEvent":{"description":"This event is sent when one or more members are removed from a call","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the list of member IDs removed from the call","items":{"type":"string"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_removed","description":"The type of event: \"call.member_removed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberRemovedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberUpdatedEvent":{"description":"This event is sent when one or more members are updated","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"The list of members that were updated","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_updated","description":"The type of event: \"call.member_updated\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberUpdatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberUpdatedPermissionEvent":{"description":"This event is sent when one or more members get its role updated","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"capabilities_by_role":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"The capabilities by role for this call","title":"CapabilitiesByRole","type":"object","x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"The list of members that were updated","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"005"},"type":{"default":"call.member_updated_permission","description":"The type of event: \"call.member_added\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","capabilities_by_role","members"],"title":"CallMemberUpdatedPermissionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallNotificationEvent":{"description":"This event is sent to all call members to notify they are getting called","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"Call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"005"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.notification","description":"The type of event: \"call.notification\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that sent the call notification","title":"User","x-stream-index":"006"}},"required":["type","created_at","call_cid","session_id","call","members","user"],"title":"CallNotificationEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallParticipantResponse":{"properties":{"joined_at":{"format":"date-time","type":"string","x-stream-index":"004"},"role":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_session_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_session_id","role","joined_at"],"type":"object"},"CallReactionEvent":{"description":"This event is sent when a reaction is sent in a call, clients should use this to show the reaction in the call screen","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"reaction":{"$ref":"#/components/schemas/ReactionResponse","description":"the reaction object sent by the user on the call","title":"reaction","x-stream-index":"003"},"type":{"default":"call.reaction_new","description":"The type of event: \"call.reaction_new\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","reaction"],"title":"CallReactionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecording":{"description":"CallRecording represents a recording of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the recording.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the recording.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the recording.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the recording.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallRecordingFailedEvent":{"description":"This event is sent when call recording has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_failed","description":"The type of event: \"call.recording_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingReadyEvent":{"description":"This event is sent when call recording is ready","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"call_recording":{"$ref":"#/components/schemas/CallRecording","description":"The call recording object","title":"CallRecording","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_ready","description":"The type of event: \"call.recording_ready\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call_recording"],"title":"CallRecordingReadyEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingStartedEvent":{"description":"This event is sent when call recording has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_started","description":"The type of event: \"call.recording_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingStoppedEvent":{"description":"This event is sent when call recording has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_stopped","description":"The type of event: \"call.recording_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRejectedEvent":{"description":"This event is sent when a user rejects a notification to join a call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.rejected","description":"The type of event: \"call.rejected\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who rejected the call","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call","user"],"title":"CallRejectedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRequest":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"members":{"items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"type":"array","x-stream-index":"005"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"006"},"starts_at":{"format":"date-time","type":"string","x-stream-index":"007"},"team":{"type":"string","x-stream-index":"001"}},"type":"object"},"CallResponse":{"description":"Represents a call","properties":{"backstage":{"type":"boolean","x-stream-index":"015"},"blocked_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"017"},"cid":{"description":"The unique identifier for a call (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"004"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserResponse","description":"The user that created the call","title":"Created By","x-stream-index":"007"},"current_session_id":{"type":"string","x-stream-index":"005"},"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"008"},"egress":{"$ref":"#/components/schemas/EgressResponse","x-stream-index":"020"},"ended_at":{"description":"Date/time when the call ended","format":"date-time","title":"Ended At","type":"string","x-stream-index":"013"},"id":{"description":"Call ID","title":"ID","type":"string","x-stream-index":"003"},"ingress":{"$ref":"#/components/schemas/CallIngressResponse","x-stream-index":"018"},"recording":{"type":"boolean","x-stream-index":"011"},"session":{"$ref":"#/components/schemas/CallSessionResponse","x-stream-index":"019"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"016"},"starts_at":{"description":"Date/time when the call will start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"014"},"team":{"type":"string","x-stream-index":"006"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailResponse","x-stream-index":"021"},"transcribing":{"type":"boolean","x-stream-index":"012"},"type":{"description":"The type of call","title":"Type","type":"string","x-stream-index":"002"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"}},"required":["type","id","cid","current_session_id","created_by","custom","created_at","updated_at","recording","transcribing","backstage","settings","blocked_user_ids","ingress","egress"],"title":"Call","type":"object"},"CallRingEvent":{"description":"This event is sent to all call members to notify they are getting called","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"005"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"Call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"006"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.ring","description":"The type of event: \"call.notification\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that sent the call notification","title":"User","x-stream-index":"007"}},"required":["type","created_at","call_cid","session_id","call","members","user"],"title":"CallRingEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionEndedEvent":{"description":"This event is sent when a call session ends","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_ended","description":"The type of event: \"call.session_ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","call"],"title":"CallSessionEndedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionParticipantJoinedEvent":{"description":"This event is sent when a participant joins a call session","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"participant":{"$ref":"#/components/schemas/CallParticipantResponse","description":"The participant that joined the session","title":"Participant","x-stream-index":"004"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_participant_joined","description":"The type of event: \"call.session_participant_joined\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","participant"],"title":"CallSessionParticipantJoinedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionParticipantLeftEvent":{"description":"This event is sent when a participant leaves a call session","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"participant":{"$ref":"#/components/schemas/CallParticipantResponse","description":"The participant that left the session","title":"Participant","x-stream-index":"004"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_participant_left","description":"The type of event: \"call.session_participant_left\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","participant"],"title":"CallSessionParticipantLeftEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionResponse":{"properties":{"accepted_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"007"},"ended_at":{"format":"date-time","type":"string","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"live_ended_at":{"format":"date-time","type":"string","x-stream-index":"009"},"live_started_at":{"format":"date-time","type":"string","x-stream-index":"008"},"participants":{"items":{"$ref":"#/components/schemas/CallParticipantResponse"},"type":"array","x-stream-index":"004"},"participants_count_by_role":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"005"},"rejected_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"006"},"started_at":{"format":"date-time","type":"string","x-stream-index":"002"}},"required":["id","participants","participants_count_by_role","rejected_by","accepted_by"],"type":"object"},"CallSessionStartedEvent":{"description":"This event is sent when a call session starts","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_started","description":"The type of event: \"call.session_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","call"],"title":"CallSessionStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSettings":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettings","x-stream-index":"006"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"007"},"recording":{"$ref":"#/components/schemas/RecordSettings","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"009"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"004"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"003"}},"type":"object"},"CallSettingsRequest":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettingsRequest","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettingsRequest","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsRequest","x-stream-index":"009"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettingsRequest","x-stream-index":"003"},"recording":{"$ref":"#/components/schemas/RecordSettingsRequest","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettingsRequest","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettingsRequest","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettingsRequest","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettingsRequest","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettingsRequest","x-stream-index":"004"}},"type":"object"},"CallSettingsResponse":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsResponse","x-stream-index":"003"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"004"},"recording":{"$ref":"#/components/schemas/RecordSettingsResponse","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"009"}},"required":["audio","backstage","broadcasting","geofencing","recording","ring","screensharing","transcription","video","thumbnails"],"type":"object"},"CallStateResponseFields":{"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"members":{"description":"List of call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"002"},"membership":{"$ref":"#/components/schemas/MemberResponse","description":"Current user membership object","title":"Membership","x-stream-index":"003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"004"}},"required":["call","members","own_capabilities"],"type":"object"},"CallStatsReportSummaryResponse":{"properties":{"call_cid":{"type":"string","x-stream-index":"001"},"call_session_id":{"type":"string","x-stream-index":"002"},"call_status":{"type":"string","x-stream-index":"004"},"first_stats_time":{"format":"date-time","type":"string","x-stream-index":"003"}},"required":["call_cid","call_session_id","first_stats_time","call_status"],"type":"object"},"CallTimeline":{"properties":{"events":{"items":{"$ref":"#/components/schemas/CallEvent"},"type":"array","x-stream-index":"001"}},"required":["events"],"type":"object"},"CallTranscription":{"description":"CallTranscription represents a transcription of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the transcription.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the transcription.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the transcription.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the transcription.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallTranscriptionFailedEvent":{"description":"This event is sent when call transcription has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_failed","description":"The type of event: \"call.transcription_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionReadyEvent":{"description":"This event is sent when call transcription is ready","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"call_transcription":{"$ref":"#/components/schemas/CallTranscription","description":"The call transcription object","title":"CallTranscription","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_ready","description":"The type of event: \"call.transcription_ready\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call_transcription"],"title":"CallTranscriptionReadyEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionStartedEvent":{"description":"This event is sent when call transcription has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_started","description":"The type of event: \"call.transcription_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionStoppedEvent":{"description":"This event is sent when call transcription has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_stopped","description":"The type of event: \"call.transcription_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallType":{"nullable":true,"properties":{"AppPK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"CreatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"005"},"ExternalStorage":{"type":"string","writeOnly":true,"x-stream-index":"009"},"Name":{"type":"string","writeOnly":true,"x-stream-index":"004"},"NotificationSettings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"008"},"PK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"002"},"Settings":{"$ref":"#/components/schemas/CallSettings","x-stream-index":"007"},"UpdatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"006"}},"required":["PK","AppPK","Name","CreatedAt","UpdatedAt","ExternalStorage"],"type":"object"},"CallUpdatedEvent":{"description":"This event is sent when a call is updated, clients should use this update the local state of the call. \nThis event also contains the capabilities by role for the call, clients should update the own_capability for the current.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"capabilities_by_role":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"The capabilities by role for this call","title":"CapabilitiesByRole","type":"object","x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.updated","description":"The type of event: \"call.ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","capabilities_by_role"],"title":"CallUpdatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallUserMuted":{"description":"This event is sent when a call member is muted","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"from_user_id":{"type":"string","x-stream-index":"003"},"muted_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"type":{"default":"call.user_muted","description":"The type of event: \"call.user_muted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","from_user_id","muted_user_ids"],"title":"CallUserMuted","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Channel":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"028"},"auto_translation_language":{"type":"string","x-stream-index":"029"},"cid":{"type":"string","x-stream-index":"003"},"config":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"025"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"026"},"cooldown":{"format":"int32","type":"integer","x-stream-index":"030"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"008"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"disabled":{"type":"boolean","x-stream-index":"017"},"frozen":{"type":"boolean","x-stream-index":"016"},"id":{"type":"string","x-stream-index":"004"},"invites":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"021"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"006"},"member_count":{"format":"int32","type":"integer","x-stream-index":"020"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"019"},"team":{"type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"015"},"type":{"type":"string","x-stream-index":"005"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"}},"required":["cid","id","type","created_at","updated_at","frozen","disabled","Custom","auto_translation_language"],"type":"object"},"ChannelConfig":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.024"},"blocklist":{"type":"string","x-stream-index":"001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.022"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"003"},"connect_events":{"type":"boolean","x-stream-index":"001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.012"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.017"},"message_retention":{"type":"string","x-stream-index":"001.016"},"mutes":{"type":"boolean","x-stream-index":"001.009"},"name":{"type":"string","x-stream-index":"001.001"},"push_notifications":{"type":"boolean","x-stream-index":"001.013"},"quotes":{"type":"boolean","x-stream-index":"001.008"},"reactions":{"type":"boolean","x-stream-index":"001.006"},"read_events":{"type":"boolean","x-stream-index":"001.003"},"reminders":{"type":"boolean","x-stream-index":"001.014"},"replies":{"type":"boolean","x-stream-index":"001.007"},"search":{"type":"boolean","x-stream-index":"001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"002.004"},"uploads":{"type":"boolean","x-stream-index":"001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands"],"type":"object"},"ChannelConfigRequest":{"description":"Channel configuration overrides","properties":{"blocklist":{"type":"string","x-stream-index":"008"},"blocklist_behavior":{"enum":["flag","block"],"type":"string","x-stream-index":"009"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"010","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"max_message_length":{"description":"Overrides max message length","format":"int32","maximum":20000,"title":"Max Message Length","type":"integer","x-stream-index":"007"},"quotes":{"description":"Enables message quotes","title":"Quotes","type":"boolean","x-stream-index":"004"},"reactions":{"description":"Enables or disables reactions","title":"Reactions","type":"boolean","x-stream-index":"002"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"003"},"typing_events":{"description":"Enables or disables typing events","title":"Typing events","type":"boolean","x-stream-index":"001"},"uploads":{"description":"Enables or disables file uploads","title":"Uploads","type":"boolean","x-stream-index":"005"},"url_enrichment":{"description":"Enables or disables URL enrichment","title":"URL Enrichment","type":"boolean","x-stream-index":"006"}},"type":"object"},"ChannelConfigWithInfo":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.002.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.002.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.002.024"},"blocklist":{"type":"string","x-stream-index":"001.002.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.002.022"},"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.001.003"},"custom_events":{"type":"boolean","x-stream-index":"001.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"002","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.002.017"},"message_retention":{"type":"string","x-stream-index":"001.002.016"},"mutes":{"type":"boolean","x-stream-index":"001.002.009"},"name":{"type":"string","x-stream-index":"001.002.001"},"push_notifications":{"type":"boolean","x-stream-index":"001.002.013"},"quotes":{"type":"boolean","x-stream-index":"001.002.008"},"reactions":{"type":"boolean","x-stream-index":"001.002.006"},"read_events":{"type":"boolean","x-stream-index":"001.002.003"},"reminders":{"type":"boolean","x-stream-index":"001.002.014"},"replies":{"type":"boolean","x-stream-index":"001.002.007"},"search":{"type":"boolean","x-stream-index":"001.002.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.001.004"},"uploads":{"type":"boolean","x-stream-index":"001.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.002.011"}},"required":["created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelCreatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.created","type":"string","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"ChannelCreatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelDeletedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"team":{"type":"string","x-stream-index":"001.001"},"type":{"default":"channel.deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelFrozenEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.frozen","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelFrozenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelGetOrCreateRequest":{"nullable":true,"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"004"},"hide_for_creator":{"description":"Whether this channel will be hidden for the user who created the channel or not","title":"Hide for creator","type":"boolean","x-stream-index":"008"},"members":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"011"},"messages":{"$ref":"#/components/schemas/MessagePaginationParamsRequest","x-stream-index":"010"},"presence":{"description":"Fetch user presence info","title":"Presence","type":"boolean","x-stream-index":"007"},"state":{"description":"Refresh channel state","title":"State","type":"boolean","x-stream-index":"006"},"thread_unread_counts":{"type":"boolean","x-stream-index":"009"},"watch":{"description":"Start watching the channel","title":"Watch","type":"boolean","x-stream-index":"005"},"watchers":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"012"}},"type":"object"},"ChannelHiddenEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"clear_history":{"type":"boolean","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"type":{"default":"channel.hidden","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["clear_history","cid","channel_id","channel_type","type","created_at"],"title":"ChannelHiddenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelKickedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.kicked","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelKickedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelMember":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"required":["created_at","updated_at","banned","shadow_banned","channel_role","notifications_muted"],"title":"Channel member","type":"object"},"ChannelMemberRequest":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"title":"Channel member","type":"object"},"ChannelMute":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"007"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"ChannelRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"auto_translation_enabled":{"description":"Enable or disable auto translation","title":"Auto translation","type":"boolean","x-stream-index":"007"},"auto_translation_language":{"description":"Switch auto translation language","title":"Auto translation language","type":"string","x-stream-index":"008"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfigRequest","x-stream-index":"026"},"disabled":{"type":"boolean","x-stream-index":"016"},"frozen":{"description":"Freeze or unfreeze the channel","title":"Frozen","type":"boolean","x-stream-index":"015"},"members":{"items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"type":"array","x-stream-index":"020"},"team":{"description":"Team the channel belongs to (if multi-tenant mode is enabled)","title":"Team","type":"string","x-stream-index":"006"},"truncated_by_id":{"type":"string","x-stream-index":"012"}},"type":"object"},"ChannelResponse":{"description":"Represents channel in chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"029"},"auto_translation_enabled":{"description":"Whether auto translation is enabled or not","title":"Auto translation","type":"boolean","x-stream-index":"021"},"auto_translation_language":{"description":"Language to translate to when auto translation is active","title":"Auto translation language","type":"string","x-stream-index":"022"},"cid":{"description":"Channel CID (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"005"},"config":{"$ref":"#/components/schemas/ChannelConfigWithInfo","description":"Channel configuration","title":"Config","x-stream-index":"017"},"cooldown":{"description":"Cooldown period after sending each message","format":"int32","title":"Cooldown","type":"integer","x-stream-index":"024"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"008"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Creator of the channel","title":"Created by","x-stream-index":"011"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"010"},"disabled":{"type":"boolean","x-stream-index":"013"},"frozen":{"description":"Whether channel is frozen or not","title":"Frozen","type":"boolean","x-stream-index":"012"},"hidden":{"description":"Whether this channel is hidden by current user or not","title":"Hidden","type":"boolean","x-stream-index":"026"},"hide_messages_before":{"description":"Date since when the message history is accessible","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"023"},"id":{"description":"Channel unique ID","title":"ID","type":"string","x-stream-index":"003"},"last_message_at":{"description":"Date of the last message sent","format":"date-time","title":"Last message at","type":"string","x-stream-index":"006"},"member_count":{"description":"Number of members in the channel","format":"int32","title":"Member count","type":"integer","x-stream-index":"015"},"members":{"description":"List of channel members (max 100)","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"014"},"mute_expires_at":{"description":"Date of mute expiration","format":"date-time","title":"Mute expires at","type":"string","x-stream-index":"019"},"muted":{"description":"Whether this channel is muted or not","title":"Muted","type":"boolean","x-stream-index":"018"},"own_capabilities":{"description":"List of channel capabilities of authenticated user","items":{"type":"string"},"title":"Own Capabilities","type":"array","x-stream-index":"025"},"team":{"description":"Team the channel belongs to (multi-tenant only)","title":"Team","type":"string","x-stream-index":"020"},"truncated_at":{"description":"Date of the latest truncation of the channel","format":"date-time","title":"Truncated At","type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"028"},"type":{"description":"Type of the channel","title":"Type","type":"string","x-stream-docs-page-id":"channel_features","x-stream-index":"004"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"009"}},"required":["id","type","cid","frozen","disabled","Custom"],"title":"Channel","type":"object"},"ChannelStateResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"hidden":{"type":"boolean","x-stream-index":"001.010"},"hide_messages_before":{"format":"date-time","type":"string","x-stream-index":"001.011"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"001.007"},"membership":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.008"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.002"},"pending_messages":{"items":{"$ref":"#/components/schemas/PendingMessage"},"type":"array","x-stream-index":"001.012"},"pinned_messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.003"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"001.006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"001.009"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.004"},"watchers":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.005"}},"required":["messages","pinned_messages","members","threads","duration"],"type":"object"},"ChannelStateResponseFields":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"hidden":{"description":"Whether this channel is hidden or not","title":"Hidden","type":"boolean","x-stream-index":"010"},"hide_messages_before":{"description":"Messages before this date are hidden from the user","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"011"},"members":{"description":"List of channel members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"007"},"membership":{"$ref":"#/components/schemas/ChannelMember","description":"Current user membership object","title":"Membership","x-stream-index":"008"},"messages":{"description":"List of channel messages","items":{"$ref":"#/components/schemas/Message"},"title":"Message","type":"array","x-stream-index":"002"},"pending_messages":{"description":"Pending messages that this user has sent","items":{"$ref":"#/components/schemas/PendingMessage"},"title":"Pending messages","type":"array","x-stream-index":"012"},"pinned_messages":{"description":"List of pinned messages in the channel","items":{"$ref":"#/components/schemas/Message"},"title":"Pinned messages","type":"array","x-stream-docs-page-id":"pinned_messages","x-stream-index":"003"},"read":{"description":"List of read states","items":{"$ref":"#/components/schemas/Read"},"title":"Read","type":"array","x-stream-index":"006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"009"},"watcher_count":{"description":"Number of channel watchers","format":"int32","title":"Watcher count","type":"integer","x-stream-index":"004"},"watchers":{"description":"List of user who is watching the channel","items":{"$ref":"#/components/schemas/UserObject"},"title":"Watchers","type":"array","x-stream-index":"005"}},"required":["messages","pinned_messages","members","threads"],"type":"object"},"ChannelStopWatchingRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"001.003"}},"type":"object"},"ChannelTruncatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.004"},"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"channel.truncated","type":"string","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ChannelTruncatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelUnFrozenEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.unfrozen","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelUnFrozenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelUpdatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"004.004"},"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"channel.updated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelVisibleEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"type":{"default":"channel.visible","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ChannelVisibleEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelsResponse":{"nullable":true,"properties":{"channels":{"description":"List of channels","items":{"$ref":"#/components/schemas/ChannelStateResponseFields"},"title":"Channels","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channels","duration"],"title":"Channels list","type":"object"},"ClosedCaptionEvent":{"description":"This event is sent when closed captions are being sent in a call, clients should use this to show the closed captions in the call screen","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"closed_caption":{"$ref":"#/components/schemas/CallClosedCaption","description":"The closed caption object","title":"CallClosedCaption","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.closed_caption","description":"The type of event: \"call.closed_caption\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","closed_caption"],"title":"ClosedCaptionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CollectUserFeedbackRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"009"},"rating":{"format":"int32","maximum":5,"minimum":1,"type":"integer","x-stream-index":"007"},"reason":{"maxLength":1000,"type":"string","x-stream-index":"008"},"sdk":{"maxLength":50,"type":"string","x-stream-index":"005"},"sdk_version":{"maxLength":50,"type":"string","x-stream-index":"006"},"user_session_id":{"maxLength":50,"type":"string","x-stream-index":"004"}},"required":["user_session_id","sdk","sdk_version"],"type":"object"},"CollectUserFeedbackResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Command":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","title":"Arguments","type":"string","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"001"},"description":{"description":"Description, shown in commands auto-completion","title":"Description","type":"string","x-stream-index":"005"},"name":{"description":"Unique command name","title":"Name","type":"string","x-stream-index":"004"},"set":{"description":"Set name used for grouping commands","title":"Set","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"002"}},"required":["name","description","args","set"],"title":"Command","type":"object"},"Config":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConnectRequest":{"properties":{"device":{"$ref":"#/components/schemas/DeviceFields","x-stream-index":"001.002"},"user_details":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["user_details"],"type":"object"},"ConnectedEvent":{"description":"This event is sent when the WS connection is established and authenticated, this event contains the full user object as it is stored on the server","properties":{"connection_id":{"description":"The connection_id for this client","title":"Connection ID","type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"me":{"$ref":"#/components/schemas/OwnUserResponse","description":"The full user object as it is stored on the server","title":"OwnUserResponse","x-stream-index":"003"},"type":{"default":"connection.ok","description":"The type of event: \"connection.ok\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","connection_id","me"],"title":"ConnectedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ConnectionErrorEvent":{"description":"This event is sent when the WS connection fails","properties":{"connection_id":{"type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"error":{"$ref":"#/components/schemas/APIError","description":"The error that caused the connection to fail","title":"Error","x-stream-index":"003"},"type":{"default":"connection.error","description":"The type of event: \"connection.ok\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","connection_id","error"],"title":"ConnectionErrorEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Coordinates":{"properties":{"latitude":{"format":"float","type":"number","x-stream-index":"001"},"longitude":{"format":"float","type":"number","x-stream-index":"002"}},"required":["latitude","longitude"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"Credentials":{"properties":{"ice_servers":{"items":{"$ref":"#/components/schemas/ICEServer"},"type":"array","x-stream-index":"003"},"server":{"$ref":"#/components/schemas/SFUResponse","x-stream-index":"001"},"token":{"type":"string","x-stream-index":"002"}},"required":["server","token","ice_servers"],"type":"object"},"DataDogInfo":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"required":["api_key","site","enabled"],"type":"object"},"DeleteChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteChannelsRequest":{"nullable":true,"properties":{"cids":{"description":"All channels that should be deleted","items":{"type":"string"},"maximum":100,"minimum":1,"title":"Channels CID","type":"array","x-stream-index":"001"},"hard_delete":{"description":"Specify if channels and all ressources should be hard deleted","title":"Hard delete","type":"boolean","x-stream-index":"002"}},"type":"object"},"DeleteChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"result":{"additionalProperties":{"$ref":"#/components/schemas/DeleteChannelsResult"},"type":"object","x-stream-index":"001"},"task_id":{"type":"string","x-stream-index":"002"}},"required":["duration"],"type":"object"},"DeleteChannelsResult":{"nullable":true,"properties":{"error":{"type":"string","x-stream-index":"003"},"status":{"type":"string","x-stream-index":"002"}},"required":["status"],"type":"object"},"Device":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"disabled":{"description":"Whether device is disabled or not","title":"Disabled","type":"boolean","x-stream-index":"005"},"disabled_reason":{"description":"Reason explaining why device had been disabled","title":"Reason","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"003"},"push_provider":{"type":"string","x-stream-index":"001"},"push_provider_name":{"type":"string","x-stream-index":"002"},"voip":{"description":"When true the token is for Apple VoIP push notifications","title":"Voip","type":"boolean","x-stream-index":"007"}},"required":["push_provider","id","created_at"],"title":"Device","type":"object"},"DeviceFields":{"properties":{"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"003"},"voip":{"type":"boolean","x-stream-index":"005"}},"required":["push_provider","id"],"type":"object"},"EdgeResponse":{"properties":{"continent_code":{"type":"string","x-stream-index":"007.003"},"country_iso_code":{"type":"string","x-stream-index":"007.002"},"green":{"format":"int32","type":"integer","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"latency_test_url":{"type":"string","x-stream-index":"002"},"latitude":{"format":"float","type":"number","x-stream-index":"006.001"},"longitude":{"format":"float","type":"number","x-stream-index":"006.002"},"red":{"format":"int32","type":"integer","x-stream-index":"005"},"subdivision_iso_code":{"type":"string","x-stream-index":"007.001"},"yellow":{"format":"int32","type":"integer","x-stream-index":"004"}},"required":["id","latency_test_url","green","yellow","red","latitude","longitude","subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"EgressHLSResponse":{"properties":{"playlist_url":{"type":"string","x-stream-index":"001"}},"required":["playlist_url"],"type":"object"},"EgressRTMPResponse":{"properties":{"name":{"type":"string","x-stream-index":"001"},"stream_key":{"type":"string","x-stream-index":"003"},"url":{"type":"string","x-stream-index":"002"}},"required":["name","url","stream_key"],"type":"object"},"EgressResponse":{"properties":{"broadcasting":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/EgressHLSResponse","x-stream-index":"002"},"rtmps":{"items":{"$ref":"#/components/schemas/EgressRTMPResponse"},"type":"array","x-stream-index":"003"}},"required":["broadcasting","rtmps"],"type":"object"},"EndCallRequest":{"nullable":true,"type":"object"},"EndCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventRequest":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"001"}},"required":["type"],"type":"object"},"EventResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/WSEvent","x-stream-index":"001"}},"required":["event","duration"],"type":"object"},"Field":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"required":["title","value","short"],"type":"object"},"FieldRequest":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"type":"object"},"FileDeleteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"FileUploadConfig":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"required":["allowed_file_extensions","blocked_file_extensions","allowed_mime_types","blocked_mime_types","size_limit"],"type":"object"},"FileUploadRequest":{"nullable":true,"properties":{"file":{"description":"file field","title":"File","type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","description":"user for the request **server side only**","title":"User","x-stream-index":"003"}},"type":"object"},"FileUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"003"}},"required":["duration"],"type":"object"},"FirebaseConfigFields":{"properties":{"apn_template":{"type":"string","x-stream-index":"004"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"003"},"enabled":{"type":"boolean","x-stream-index":"001"},"notification_template":{"type":"string","x-stream-index":"002"},"server_key":{"type":"string","x-stream-index":"005"}},"required":["enabled","notification_template","data_template","apn_template"],"type":"object"},"Flag":{"description":"Contains information about flagged user or message","properties":{"approved_at":{"description":"Date of the approval","format":"date-time","title":"Approved at","type":"string","x-stream-index":"015"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"created_by_automod":{"type":"boolean","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"022"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"021"},"reason":{"type":"string","x-stream-index":"020"},"rejected_at":{"description":"Date of the rejection","format":"date-time","title":"Rejected at","type":"string","x-stream-index":"016"},"reviewed_at":{"description":"Date of the review","format":"date-time","title":"Reviewed at","type":"string","x-stream-index":"013"},"target_message":{"$ref":"#/components/schemas/Message","x-stream-index":"008"},"target_message_id":{"description":"ID of flagged message","title":"Target Message ID","type":"string","x-stream-index":"007"},"target_user":{"$ref":"#/components/schemas/UserObject","description":"Flagged user","title":"User","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","description":"User who flagged a message or a user","title":"User","x-stream-index":"006"}},"required":["created_by_automod","created_at","updated_at"],"title":"Flag","type":"object"},"FlagDetails":{"properties":{"Extra":{"type":"object","writeOnly":true,"x-stream-index":"002"},"automod":{"$ref":"#/components/schemas/AutomodDetails","x-stream-index":"001"},"original_text":{"type":"string","x-stream-index":"003"}},"required":["Extra","original_text"],"type":"object"},"FlagFeedback":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"labels":{"items":{"$ref":"#/components/schemas/Label"},"type":"array","x-stream-index":"006"},"message_id":{"type":"string","x-stream-index":"004"}},"required":["message_id","created_at","labels"],"type":"object"},"FlagMessageDetails":{"properties":{"pin_changed":{"type":"boolean","x-stream-index":"002"},"should_enrich":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"004"},"updated_by_id":{"type":"string","x-stream-index":"001"}},"type":"object"},"FlagRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"004"},"reason":{"maxLength":255,"type":"string","x-stream-index":"003"},"target_message_id":{"description":"ID of the message when reporting a message","title":"Target Message ID","type":"string","x-stream-index":"001"}},"type":"object"},"FlagResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flag":{"$ref":"#/components/schemas/Flag","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GeofenceResponse":{"nullable":true,"properties":{"country_codes":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"}},"required":["name"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GeofenceSettingsRequest":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"type":"object"},"GetApplicationResponse":{"nullable":true,"properties":{"app":{"$ref":"#/components/schemas/App","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["app","duration"],"type":"object"},"GetCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"type":"object"},"GetCallStatsResponse":{"nullable":true,"properties":{"average_jitter":{"format":"float","type":"number","x-stream-index":"005"},"average_latency":{"format":"float","type":"number","x-stream-index":"004"},"call_duration_seconds":{"format":"int64","type":"integer","x-stream-index":"002"},"call_timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"012"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"max_participants":{"format":"int32","type":"integer","x-stream-index":"006"},"participant_report":{"additionalProperties":{"$ref":"#/components/schemas/UserStats"},"type":"object","x-stream-index":"013"},"publishing_participants":{"format":"int32","type":"integer","x-stream-index":"007"},"quality_score":{"format":"int32","type":"integer","x-stream-index":"003"},"sfu_count":{"format":"int32","type":"integer","x-stream-index":"008"},"sfus":{"items":{"$ref":"#/components/schemas/SFULocationResponse"},"type":"array","x-stream-index":"011"},"total_freezes_duration":{"format":"float","type":"number","x-stream-index":"010"},"total_quality_limitation_duration":{"format":"float","type":"number","x-stream-index":"009"}},"required":["duration","call_duration_seconds","quality_score","average_latency","average_jitter","max_participants","publishing_participants","sfu_count","total_quality_limitation_duration","total_freezes_duration","sfus","participant_report"],"type":"object"},"GetEdgesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"edges":{"items":{"$ref":"#/components/schemas/EdgeResponse"},"type":"array","x-stream-index":"001"}},"required":["edges","duration"],"type":"object"},"GetManyMessagesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetOGResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.018"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"001.015"},"asset_url":{"description":"URL of detected video or audio","title":"Image URL","type":"string","x-stream-index":"001.017"},"author_icon":{"type":"string","x-stream-index":"001.007"},"author_link":{"description":"og:site","title":"Author Link","type":"string","x-stream-index":"001.006"},"author_name":{"description":"og:site_name","title":"Author Name","type":"string","x-stream-index":"001.005"},"color":{"type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"002.001"},"fallback":{"type":"string","x-stream-index":"001.002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"001.016"},"footer":{"type":"string","x-stream-index":"001.013"},"footer_icon":{"type":"string","x-stream-index":"001.014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"001.019"},"image_url":{"description":"URL of detected image","title":"Image URL","type":"string","x-stream-index":"001.011"},"og_scrape_url":{"description":"extracted url from the text","title":"OG Scrape URL","type":"string","x-stream-index":"001.020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"001.022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"001.021"},"pretext":{"type":"string","x-stream-index":"001.004"},"text":{"description":"og:description","title":"Text","type":"string","x-stream-index":"001.010"},"thumb_url":{"description":"URL of detected thumb image","title":"Image URL","type":"string","x-stream-index":"001.012"},"title":{"description":"og:title","title":"Title","type":"string","x-stream-index":"001.008"},"title_link":{"description":"og:url","title":"Title Link","type":"string","x-stream-index":"001.009"},"type":{"description":"Attachment type, could be empty, image, audio or video","title":"Type","type":"string","x-stream-index":"001.001"}},"required":["Custom","duration"],"title":"Get OG Attachment","type":"object","x-stream-docs-page-id":"og"},"GetOrCreateCallRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/CallRequest","title":"ReadOnlyData","x-stream-index":"003"},"members_limit":{"format":"int32","maximum":100,"type":"integer","x-stream-index":"006"},"notify":{"description":"if provided it sends a notification event to the members for this call","title":"Notify","type":"boolean","x-stream-index":"005"},"ring":{"description":"if provided it sends a ring event to the members for this call","title":"Ring","type":"boolean","x-stream-index":"004"}},"type":"object"},"GetOrCreateCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"type":"boolean","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","created","duration"],"type":"object"},"GetReactionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"reactions":{"description":"List of reactions","items":{"$ref":"#/components/schemas/Reaction"},"title":"Reactions","type":"array","x-stream-index":"001"}},"required":["reactions","duration"],"type":"object"},"GetRepliesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetThreadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadStateResponse","description":"Enriched thread state","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"GoLiveRequest":{"nullable":true,"properties":{"recording_storage_name":{"type":"string","x-stream-index":"005"},"start_hls":{"type":"boolean","x-stream-index":"003"},"start_recording":{"type":"boolean","x-stream-index":"004"},"start_transcription":{"type":"boolean","x-stream-index":"007"},"transcription_storage_name":{"type":"string","x-stream-index":"006"}},"type":"object"},"GoLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"GuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"GuestResponse":{"nullable":true,"properties":{"access_token":{"description":"Authentication token to use for guest user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","description":"Created user object","title":"User","x-stream-index":"001"}},"required":["access_token","duration"],"type":"object"},"HLSSettings":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks"],"type":"object"},"HLSSettingsRequest":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"quality_tracks":{"items":{"type":"string"},"maximum":3,"minimum":1,"type":"array","x-stream-index":"003"}},"type":"object"},"HLSSettingsResponse":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks","layout"],"type":"object"},"HealthCheckEvent":{"properties":{"cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"002"},"type":{"default":"health.check","type":"string","x-stream-index":"003.001"}},"required":["cid","type","created_at"],"title":"HealthCheckEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"HideChannelRequest":{"nullable":true,"properties":{"clear_history":{"description":"Whether to clear message history of the channel or not","title":"Clear history","type":"boolean","x-stream-index":"001"}},"type":"object"},"HideChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"HuaweiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"id":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"ICEServer":{"properties":{"password":{"type":"string","x-stream-index":"003"},"urls":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"username":{"type":"string","x-stream-index":"002"}},"required":["urls","username","password"],"type":"object"},"ImageData":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"required":["url","width","height","size","frames"],"type":"object"},"ImageDataRequest":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageSize":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"required":["crop","resize","height","width"],"title":"Image size configuration","type":"object"},"ImageSizeRequest":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"title":"Image size configuration","type":"object"},"ImageUploadRequest":{"nullable":true,"properties":{"file":{"type":"string","x-stream-index":"001.002"},"upload_sizes":{"description":"field with JSON-encoded array of image size configurations","items":{"$ref":"#/components/schemas/ImageSizeRequest"},"title":"Upload sizes","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","x-stream-index":"001.003"}},"type":"object"},"ImageUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"001.002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"001.003"},"upload_sizes":{"items":{"$ref":"#/components/schemas/ImageSize"},"type":"array","x-stream-index":"002"}},"required":["duration"],"type":"object"},"Images":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageData","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageData","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageData","x-stream-index":"001"}},"required":["original","fixed_height","fixed_height_still","fixed_height_downsampled","fixed_width","fixed_width_still","fixed_width_downsampled"],"type":"object"},"ImagesRequest":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"001"}},"type":"object"},"JoinCallRequest":{"nullable":true,"properties":{"create":{"description":"if true the call will be created if it doesn't exist","title":"Create","type":"boolean","x-stream-index":"002"},"data":{"$ref":"#/components/schemas/CallRequest","x-stream-index":"003"},"location":{"title":"Location","type":"string","x-stream-index":"008"},"members_limit":{"format":"int32","maximum":100,"title":"The amount of members that should be returned","type":"integer","x-stream-index":"006"},"migrating_from":{"description":"If the participant is migrating from another SFU, then this is the ID of the previous SFU","title":"MigratingFrom","type":"string","x-stream-index":"009"},"notify":{"type":"boolean","x-stream-index":"005"},"ring":{"description":"if true and the call is created, the notification will include ring=true","title":"Ring","type":"boolean","x-stream-index":"004"}},"required":["location"],"type":"object"},"JoinCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"title":"Created","type":"boolean","x-stream-index":"002"},"credentials":{"$ref":"#/components/schemas/Credentials","title":"Credentials","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"005.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"},"stats_options":{"$ref":"#/components/schemas/StatsOptions","x-stream-index":"004"}},"required":["call","members","own_capabilities","created","credentials","stats_options","duration"],"type":"object"},"Label":{"properties":{"harm_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"phrase_list_ids":{"items":{"format":"int32","type":"integer"},"type":"array","x-stream-index":"002"}},"required":["name"],"type":"object"},"LabelThresholds":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListRecordingsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"recordings":{"items":{"$ref":"#/components/schemas/CallRecording"},"type":"array","x-stream-index":"002"}},"required":["duration","recordings"],"type":"object"},"ListTranscriptionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"transcriptions":{"items":{"$ref":"#/components/schemas/CallTranscription"},"type":"array","x-stream-index":"002"}},"required":["duration","transcriptions"],"type":"object"},"Location":{"properties":{"continent_code":{"type":"string","x-stream-index":"003"},"country_iso_code":{"type":"string","x-stream-index":"002"},"subdivision_iso_code":{"type":"string","x-stream-index":"001"}},"required":["subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"MarkChannelsReadRequest":{"nullable":true,"type":"object"},"MarkReadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message that is considered last read by client","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Optional Thread ID to specifically mark a given thread as read","title":"Thread ID","type":"string","x-stream-index":"004"}},"type":"object"},"MarkReadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/MessageReadEvent","description":"Mark read event","title":"Event","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MarkUnreadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message from where the channel is marked unread","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Mark a thread unread, specify both the thread and message id","title":"Thread ID","type":"string","x-stream-index":"003"}},"required":["message_id","thread_id"],"type":"object"},"MemberAddedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"member.added","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberAddedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MemberRemovedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"type":{"default":"member.removed","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberRemovedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MemberRequest":{"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"role":{"title":"Role","type":"string","x-stream-index":"002"},"user_id":{"minLength":1,"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"MemberResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"005"},"custom":{"description":"Custom member response data","title":"Custom","type":"object","x-stream-index":"004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"007"},"role":{"title":"Role","type":"string","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_id","custom","created_at","updated_at"],"type":"object"},"MemberUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"member.updated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MembersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"members":{"description":"List of found members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"001"}},"required":["members","duration"],"type":"object"},"Message":{"description":"Represents any chat message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"031"},"attachments":{"description":"Array of message attachments","items":{"$ref":"#/components/schemas/Attachment"},"title":"Message attachments","type":"array","x-stream-docs-page-id":"message_format#attachment-format","x-stream-index":"011"},"before_message_send_failed":{"description":"Whether `before_message_send webhook` failed or not. Field is only accessible in push webhook","title":"Before Message Send Failed","type":"boolean","x-stream-docs-page-id":"before_message_send_webhook","x-stream-index":"043"},"cid":{"description":"Channel unique identifier in \u003ctype\u003e:\u003cid\u003e format","title":"Channel CID","type":"string","x-stream-index":"026"},"command":{"description":"Contains provided slash command","title":"Command","type":"string","x-stream-docs-page-id":"custom_commands_webhook","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"028"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"021"},"html":{"description":"Contains HTML markup of the message. Can only be set when using server-side API","title":"HTML content","type":"string","x-stream-index":"007"},"i18n":{"additionalProperties":{"type":"string"},"description":"Object with translations. Key `language` contains the original language key. Other keys contain translations","title":"Internationalization info","type":"object","x-stream-docs-page-id":"translation","x-stream-index":"041"},"id":{"description":"Message ID is unique string identifier of the message","title":"ID","type":"string","x-stream-index":"002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Contains image moderation information","title":"Image moderation labels","type":"object","x-stream-index":"037"},"latest_reactions":{"description":"List of 10 latest reactions to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Latest reactions","type":"array","x-stream-index":"012"},"mentioned_users":{"description":"List of mentioned users","items":{"$ref":"#/components/schemas/UserObject"},"title":"Mentioned Users","type":"array","x-stream-index":"040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"049"},"mml":{"description":"Should be empty if `text` is provided. Can only be set when using server-side API","title":"Messaging Markup Language","type":"string","x-stream-docs-page-id":"mml_overview","x-stream-index":"005"},"own_reactions":{"description":"List of 10 latest reactions of authenticated user to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Own reactions","type":"array","x-stream-index":"013"},"parent_id":{"description":"ID of parent message (thread)","title":"Parent message ID","type":"string","x-stream-docs-page-id":"threads","x-stream-index":"017"},"pin_expires":{"description":"Date when pinned message expires","format":"date-time","title":"Pin expiration date","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"048"},"pinned":{"description":"Whether message is pinned or not","title":"Pinned","type":"boolean","x-stream-docs-page-id":"pinned_messages","x-stream-index":"044"},"pinned_at":{"description":"Date when message got pinned","format":"date-time","title":"Pinned at","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","description":"Contains user who pinned the message","title":"Pinned by","x-stream-docs-page-id":"pinned_messages","x-stream-index":"047"},"quoted_message":{"$ref":"#/components/schemas/Message","description":"Contains quoted message","title":"Quoted message","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"023"},"quoted_message_id":{"title":"ID of quoted message","type":"string","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing number of reactions of each type. Key: reaction type (string), value: number of reactions (int)","title":"Reaction counts","type":"object","x-stream-index":"014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing scores of reactions of each type. Key: reaction type (string), value: total score of reactions (int)","title":"Reaction scores","type":"object","x-stream-index":"015"},"reply_count":{"description":"Number of replies to this message","format":"int32","title":"Reply count","type":"integer","x-stream-index":"020"},"shadowed":{"description":"Whether the message was shadowed or not","title":"Shadowed","type":"boolean","x-stream-docs-page-id":"moderation#shadow-ban","x-stream-index":"033"},"show_in_channel":{"description":"Whether thread reply should be shown in the channel as well","title":"Show in channel","type":"boolean","x-stream-docs-page-id":"threads","x-stream-index":"019"},"silent":{"description":"Whether message is silent or not","title":"Silent","type":"boolean","x-stream-index":"042"},"text":{"description":"Text of the message. Should be empty if `mml` is provided","title":"Text","type":"string","x-stream-index":"004"},"thread_participants":{"description":"List of users who participate in thread","items":{"$ref":"#/components/schemas/UserObject"},"title":"Thread participants","type":"array","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"025"},"type":{"description":"Contains type of the message","enum":["regular","ephemeral","error","reply","system","deleted"],"title":"Message Type","type":"string","x-stream-docs-page-id":"message_format#message-types","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"029"},"user":{"$ref":"#/components/schemas/UserObject","description":"Sender of the message. Required when using server-side API","title":"User object","x-stream-index":"010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned"],"title":"Message","type":"object","x-stream-docs-page-id":"send_message"},"MessageActionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"form_data":{"additionalProperties":{"type":"string"},"description":"ReadOnlyData to execute command with","title":"Form data","type":"object","x-stream-index":"002"}},"required":["form_data"],"type":"object"},"MessageChangeSet":{"properties":{"attachments":{"type":"boolean","x-stream-index":"005"},"custom":{"type":"boolean","x-stream-index":"001"},"html":{"type":"boolean","x-stream-index":"004"},"mentioned_user_ids":{"type":"boolean","x-stream-index":"006"},"mml":{"type":"boolean","x-stream-index":"003"},"pin":{"type":"boolean","x-stream-index":"009"},"quoted_message_id":{"type":"boolean","x-stream-index":"007"},"silent":{"type":"boolean","x-stream-index":"008"},"text":{"type":"boolean","x-stream-index":"002"}},"required":["custom","text","mml","html","attachments","mentioned_user_ids","quoted_message_id","silent","pin"],"type":"object"},"MessageDeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"hard_delete":{"type":"boolean","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.deleted","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["hard_delete","cid","channel_id","channel_type","type","created_at"],"title":"MessageDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageFlag":{"nullable":true,"properties":{"approved_at":{"format":"date-time","type":"string","x-stream-index":"013"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by_automod":{"type":"boolean","x-stream-index":"001"},"custom":{"type":"object","x-stream-index":"008"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"006"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"005"},"moderation_feedback":{"$ref":"#/components/schemas/FlagFeedback","x-stream-index":"003"},"moderation_result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"002"},"reason":{"type":"string","x-stream-index":"007"},"rejected_at":{"format":"date-time","type":"string","x-stream-index":"014"},"reviewed_at":{"format":"date-time","type":"string","x-stream-index":"011"},"reviewed_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004"}},"required":["created_by_automod","created_at","updated_at"],"type":"object"},"MessageModerationResult":{"properties":{"action":{"type":"string","x-stream-index":"004"},"ai_moderation_response":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"009"},"blocked_word":{"type":"string","x-stream-index":"006"},"blocklist_name":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"012"},"message_id":{"type":"string","x-stream-index":"003"},"moderated_by":{"type":"string","x-stream-index":"005"},"moderation_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"013"},"user_bad_karma":{"type":"boolean","x-stream-index":"011"},"user_karma":{"format":"float","type":"number","x-stream-index":"010"}},"required":["message_id","action","user_karma","user_bad_karma","created_at","updated_at"],"type":"object"},"MessageNewEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"006.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.new","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"002.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"MessageNewEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessagePaginationParamsRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"008"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"007"},"created_at_around":{"format":"date-time","type":"string","x-stream-index":"012"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"010"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"009"},"id_around":{"type":"string","x-stream-index":"011"},"id_gt":{"type":"string","x-stream-index":"004"},"id_gte":{"type":"string","x-stream-index":"003"},"id_lt":{"type":"string","x-stream-index":"006"},"id_lte":{"type":"string","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"MessageReadEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"last_read_message_id":{"type":"string","x-stream-index":"006"},"team":{"type":"string","x-stream-index":"004.001"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"default":"message.read","type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"MessageReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageRequest":{"properties":{"attachments":{"items":{"$ref":"#/components/schemas/AttachmentRequest"},"maximum":30,"type":"array","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"007"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"mentioned_users":{"items":{"type":"string"},"maximum":25,"type":"array","x-stream-index":"008"},"parent_id":{"type":"string","x-stream-index":"005"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"015"},"pinned":{"type":"boolean","x-stream-index":"013"},"pinned_at":{"format":"date-time","nullable":true,"type":"string","x-stream-index":"014"},"quoted_message_id":{"type":"string","x-stream-index":"009"},"show_in_channel":{"type":"boolean","x-stream-index":"006"},"silent":{"type":"boolean","x-stream-index":"012"},"text":{"type":"string","x-stream-index":"002"},"type":{"enum":["''regular","system"],"type":"string","x-stream-index":"011"}},"required":["attachments"],"type":"object"},"MessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MessageUndeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.undeleted","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MessageUndeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageUpdate":{"properties":{"change_set":{"$ref":"#/components/schemas/MessageChangeSet","x-stream-index":"002"},"old_text":{"type":"string","x-stream-index":"001"}},"type":"object"},"MessageUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.updated","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MessageUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageWithPendingMetadataResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"description":"Metadata attached to a message while it is pending","title":"Pending message metadata","type":"object","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ModerationResponse":{"properties":{"action":{"type":"string","x-stream-index":"004"},"explicit":{"format":"float","type":"number","x-stream-index":"002"},"spam":{"format":"float","type":"number","x-stream-index":"003"},"toxic":{"format":"float","type":"number","x-stream-index":"001"}},"required":["toxic","explicit","spam","action","automod_response"],"type":"object"},"MuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"003"}},"required":["channel_cids"],"type":"object"},"MuteChannelResponse":{"nullable":true,"properties":{"channel_mute":{"$ref":"#/components/schemas/ChannelMute","description":"Object with channel mute (if one channel was muted)","title":"Channel mute","x-stream-index":"001"},"channel_mutes":{"description":"Object with mutes (if multiple channels were muted)","items":{"$ref":"#/components/schemas/ChannelMute"},"title":"Channel mutes","type":"array","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"004.001"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"003"}},"required":["target_ids"],"type":"object"},"MuteUserResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"mute":{"$ref":"#/components/schemas/UserMute","description":"Object with user mute (if one user was muted)","title":"Mute","x-stream-index":"001"},"mutes":{"description":"Object with mutes (if multiple users were muted)","items":{"$ref":"#/components/schemas/UserMute"},"title":"Mutes","type":"array","x-stream-index":"002"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUsersRequest":{"nullable":true,"properties":{"audio":{"title":"Audio","type":"boolean","x-stream-index":"005"},"mute_all_users":{"type":"boolean","x-stream-index":"003"},"screenshare":{"title":"Screenshare","type":"boolean","x-stream-index":"007"},"screenshare_audio":{"title":"ScreenshareAudio","type":"boolean","x-stream-index":"008"},"user_ids":{"items":{"type":"string"},"title":"UserIDs","type":"array","x-stream-index":"004"},"video":{"title":"Video","type":"boolean","x-stream-index":"006"}},"type":"object"},"MuteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"NotificationAddedToChannelEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"type":{"default":"notification.added_to_channel","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationAddedToChannelEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelDeletedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"team":{"type":"string","x-stream-index":"001.001"},"type":{"default":"notification.channel_deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationChannelDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelMutesUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"001"},"type":{"default":"notification.channel_mutes_updated","type":"string","x-stream-index":"002.001"}},"required":["me","type","created_at"],"title":"NotificationChannelMutesUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelTruncatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"notification.channel_truncated","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationChannelTruncatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInviteAcceptedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invite_accepted","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInviteAcceptedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInviteRejectedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invite_rejected","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInviteRejectedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInvitedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invited","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInvitedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMarkReadEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"team":{"type":"string","x-stream-index":"002.001"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"006"},"type":{"default":"notification.mark_read","type":"string","x-stream-index":"001.001"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"007"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"005"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"008"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type","unread_count","total_unread_count","unread_channels","unread_threads"],"title":"NotificationMarkReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMarkUnreadEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"first_unread_message_id":{"type":"string","x-stream-index":"005"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"006"},"last_read_message_id":{"type":"string","x-stream-index":"012"},"team":{"type":"string","x-stream-index":"002.001"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"009"},"type":{"default":"notification.mark_unread","type":"string","x-stream-index":"001.001"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"010"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"008"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"007"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type","first_unread_message_id","last_read_at","unread_messages","unread_count","total_unread_count","unread_channels","unread_threads"],"title":"NotificationMarkUnreadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMutesUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"001"},"type":{"default":"notification.mutes_updated","type":"string","x-stream-index":"002.001"}},"required":["me","type","created_at"],"title":"NotificationMutesUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationNewMessageEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"004.004"},"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"notification.message_new","type":"string","x-stream-index":"003.001"}},"required":["message","type","created_at","cid","channel_id","channel_type"],"title":"NotificationNewMessageEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationRemovedFromChannelEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.removed_from_channel","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationRemovedFromChannelEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"NullBoolRequest":{"properties":{"HasValue":{"type":"boolean","writeOnly":true,"x-stream-index":"002"},"Value":{"type":"boolean","writeOnly":true,"x-stream-index":"001"}},"type":"object"},"NullTimeRequest":{"properties":{"HasValue":{"type":"boolean","writeOnly":true,"x-stream-index":"002"},"Value":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"001"}},"type":"object"},"OnlyUserIDRequest":{"properties":{"id":{"type":"string","x-stream-index":"001"}},"required":["id"],"type":"object"},"OwnCapability":{"description":"All possibility of string to use","enum":["block-users","create-call","create-reaction","end-call","join-backstage","join-call","join-ended-call","mute-users","pin-for-everyone","read-call","remove-call-member","screenshare","send-audio","send-video","start-broadcast-call","start-record-call","start-transcription-call","stop-broadcast-call","stop-record-call","stop-transcription-call","update-call","update-call-member","update-call-permissions","update-call-settings"],"title":"OwnCapability","type":"string"},"OwnUser":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"banned":{"type":"boolean","x-stream-index":"014"},"channel_mutes":{"items":{"$ref":"#/components/schemas/ChannelMute"},"type":"array","x-stream-index":"026"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"deactivated_at":{"format":"date-time","type":"string","x-stream-index":"012"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"type":"array","x-stream-index":"024"},"id":{"type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"type":"string","x-stream-index":"031"},"last_active":{"format":"date-time","type":"string","x-stream-index":"010"},"latest_hidden_channels":{"items":{"type":"string"},"type":"array","x-stream-index":"033"},"mutes":{"items":{"$ref":"#/components/schemas/UserMute"},"type":"array","x-stream-index":"025"},"online":{"type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"role":{"type":"string","x-stream-index":"004"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"032"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"028"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"029"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"027"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"030"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","created_at","updated_at","banned","online","devices","mutes","channel_mutes","unread_count","total_unread_count","unread_channels","unread_threads","language"],"type":"object"},"OwnUserResponse":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.004"},"custom":{"type":"object","x-stream-index":"001.001.004"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.006"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001.001.001"},"image":{"type":"string","x-stream-index":"001.001.003"},"language":{"type":"string","x-stream-index":"001.001.005"},"name":{"type":"string","x-stream-index":"001.001.002"},"role":{"type":"string","x-stream-index":"001.002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.005"}},"required":["id","custom","language","role","teams","created_at","updated_at","devices"],"type":"object"},"PaginationParamsRequest":{"properties":{"id_gt":{"format":"int32","type":"integer","x-stream-index":"004"},"id_gte":{"format":"int32","type":"integer","x-stream-index":"003"},"id_lt":{"format":"int32","type":"integer","x-stream-index":"006"},"id_lte":{"format":"int32","type":"integer","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"PendingMessage":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/Channel","x-stream-index":"007"},"message":{"$ref":"#/components/schemas/Message","description":"The message","title":"Message","x-stream-index":"009"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional data attached to the pending message. This data is discarded once the pending message is committed.","title":"Metadata","type":"object","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"type":"object"},"PermissionRequestEvent":{"description":"This event is sent when a user requests access to a feature on a call,\nclients receiving this event should display a permission request to the user","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"permissions":{"description":"The list of permissions requested by the user","items":{"type":"string"},"title":"Permissions","type":"array","x-stream-index":"004"},"type":{"default":"call.permission_request","description":"The type of event: \"call.permission_request\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who sent the permission request","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user","permissions"],"title":"PermissionRequestEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"PinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Policy":{"properties":{"action":{"type":"integer","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"name":{"type":"string","x-stream-index":"004"},"owner":{"type":"boolean","x-stream-index":"008"},"priority":{"format":"int32","type":"integer","x-stream-index":"009"},"resources":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"}},"required":["name","resources","roles","action","owner","priority","created_at","updated_at"],"type":"object"},"PushNotificationFields":{"properties":{"apn":{"$ref":"#/components/schemas/APNConfigFields","x-stream-index":"002"},"firebase":{"$ref":"#/components/schemas/FirebaseConfigFields","x-stream-index":"003"},"huawei":{"$ref":"#/components/schemas/HuaweiConfigFields","x-stream-index":"004"},"offline_only":{"type":"boolean","x-stream-index":"001.002"},"providers":{"items":{"$ref":"#/components/schemas/PushProvider"},"type":"array","x-stream-index":"006"},"version":{"type":"string","x-stream-index":"001.001"},"xiaomi":{"$ref":"#/components/schemas/XiaomiConfigFields","x-stream-index":"005"}},"required":["version","offline_only","apn","firebase","huawei","xiaomi"],"type":"object"},"PushNotificationSettings":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushNotificationSettingsRequest":{"properties":{"disabled":{"$ref":"#/components/schemas/NullBoolRequest","x-stream-index":"001"},"disabled_until":{"$ref":"#/components/schemas/NullTimeRequest","x-stream-index":"002"}},"type":"object"},"PushProvider":{"nullable":true,"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name","type","created_at","updated_at"],"type":"object"},"QueryBannedUsersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"003.006"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.005"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"003.008"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.007"},"exclude_expired_bans":{"type":"boolean","x-stream-index":"006"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"type":"integer","x-stream-index":"004"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"005"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"type":"array","x-stream-index":"002"}},"required":["filter_conditions"],"type":"object"},"QueryBannedUsersResponse":{"nullable":true,"properties":{"bans":{"items":{"$ref":"#/components/schemas/BanResponse"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["bans","duration"],"type":"object"},"QueryCallStatsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"002"}},"type":"object"},"QueryCallStatsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"next":{"type":"string","x-stream-index":"003.001"},"prev":{"type":"string","x-stream-index":"003.002"},"reports":{"items":{"$ref":"#/components/schemas/CallStatsReportSummaryResponse"},"type":"array","x-stream-index":"001"}},"required":["reports","duration"],"type":"object"},"QueryCallsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"006.001"},"next":{"type":"string","x-stream-index":"006.002"},"prev":{"type":"string","x-stream-index":"006.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"004"},"watch":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryCallsResponse":{"nullable":true,"properties":{"calls":{"items":{"$ref":"#/components/schemas/CallStateResponseFields"},"title":"Calls","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["calls","duration"],"type":"object"},"QueryChannelsRequest":{"nullable":true,"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"011.003"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"description":"Number of channels to limit","format":"int32","title":"Limit","type":"integer","x-stream-index":"008"},"member_limit":{"description":"Number of members to limit","format":"int32","maximum":100,"minimum":0,"title":"Member limit","type":"integer","x-stream-index":"007"},"message_limit":{"description":"Number of messages to limit","format":"int32","minimum":0,"title":"Message limit","type":"integer","x-stream-index":"006"},"offset":{"description":"Channel pagination offset","format":"int32","title":"Offset","type":"integer","x-stream-index":"009"},"presence":{"title":"Presence","type":"boolean","x-stream-index":"005"},"sort":{"description":"List of sort parameters","items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"state":{"description":"Whether to update channel state or not","title":"State","type":"boolean","x-stream-index":"004"},"watch":{"description":"Whether to start watching found channels or not","title":"Watch","type":"boolean","x-stream-index":"003"}},"title":"Query Channels Request","type":"object","x-stream-docs-page-id":"query_channels"},"QueryMembersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"006.010"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.009"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"006.012"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.011"},"filter_conditions":{"description":"Filter to apply to members","title":"Filter conditions","type":"object","x-stream-index":"004"},"id":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","x-stream-index":"002"},"limit":{"description":"Number of records to return","format":"int32","maximum":300,"minimum":0,"title":"Limit","type":"integer","x-stream-index":"006.003"},"members":{"description":"List of members to search in distinct channels","items":{"$ref":"#/components/schemas/ChannelMember"},"maximum":100,"title":"Members","type":"array","x-stream-index":"003"},"offset":{"description":"Number of records to offset","format":"int32","maximum":10000,"title":"Offset","type":"integer","x-stream-index":"006.004"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"title":"Sort","type":"array","x-stream-index":"005"},"type":{"description":"Channel type to interact with","maxLength":64,"title":"Channel type","type":"string","x-stream-index":"001"},"user_id_gt":{"type":"string","x-stream-index":"006.006"},"user_id_gte":{"type":"string","x-stream-index":"006.005"},"user_id_lt":{"type":"string","x-stream-index":"006.008"},"user_id_lte":{"type":"string","x-stream-index":"006.007"}},"required":["type","filter_conditions"],"type":"object"},"QueryMembersRequest_1":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"002"},"id":{"maxLength":64,"type":"string","x-stream-index":"001.002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":1,"type":"array","x-stream-index":"003"},"type":{"maxLength":64,"type":"string","x-stream-index":"001.001"}},"required":["type","id"],"type":"object"},"QueryMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["members","duration"],"type":"object"},"QueryMessageFlagsRequest":{"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"minimum":0,"type":"integer","x-stream-index":"003.003"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"003.004"},"show_deleted_messages":{"type":"boolean","x-stream-index":"002"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"type":"array","x-stream-index":"003.005"}},"type":"object"},"QueryMessageFlagsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flags":{"items":{"$ref":"#/components/schemas/MessageFlag"},"type":"array","x-stream-index":"001"}},"required":["flags","duration"],"type":"object"},"QueryThreadsRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"participant_limit":{"description":"Limit the number of participants returned per each thread","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","x-stream-index":"004"},"prev":{"type":"string","x-stream-index":"005.003"},"reply_limit":{"description":"Limit the number of replies returned per each thread","format":"int32","maximum":10,"minimum":0,"title":"Reply limit","type":"integer","x-stream-index":"003"},"watch":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryThreadsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"threads":{"description":"List of enriched thread states","items":{"$ref":"#/components/schemas/ThreadStateResponse"},"title":"Threads","type":"array","x-stream-index":"001"}},"required":["threads","duration"],"type":"object"},"QueryUsersRequest":{"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"007.003"},"filter_conditions":{"description":"User filters","title":"Filter conditions","type":"object","x-stream-docs-page-id":"query_users","x-stream-index":"001"},"id_gt":{"type":"string","x-stream-index":"005.006"},"id_gte":{"type":"string","x-stream-index":"005.005"},"id_lt":{"type":"string","x-stream-index":"005.008"},"id_lte":{"type":"string","x-stream-index":"005.007"},"include_deactivated_users":{"type":"boolean","x-stream-index":"004"},"limit":{"format":"int32","maximum":100,"minimum":0,"type":"integer","x-stream-index":"005.003"},"offset":{"format":"int32","maximum":1000,"type":"integer","x-stream-index":"005.004"},"presence":{"description":"Request user presence status","title":"Presence","type":"boolean","x-stream-index":"003"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"}},"required":["filter_conditions"],"type":"object"},"RTMPIngress":{"description":"RTMP input settings","properties":{"address":{"type":"string","x-stream-index":"001"}},"required":["address"],"title":"RTMP Ingress","type":"object"},"Reaction":{"description":"Represents user reaction to a message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"008"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["message_id","type","score","created_at","updated_at","Custom"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionDeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"reaction.deleted","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ReactionDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ReactionNewEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"reaction.new","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ReactionNewEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ReactionRemovalResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionRequest":{"description":"Represents user reaction to a message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["type"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"type":{"default":"reaction.updated","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["message","reaction","cid","channel_id","channel_type","type","created_at"],"title":"ReactionUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Read":{"nullable":true,"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"004"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["last_read","unread_messages"],"type":"object"},"RecordSettings":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality"],"type":"object"},"RecordSettingsRequest":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"002"},"quality":{"enum":["360p","480p","720p","1080p","1440p"],"type":"string","x-stream-index":"003"}},"required":["mode"],"type":"object"},"RecordSettingsResponse":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality","layout"],"type":"object"},"RejectCallRequest":{"nullable":true,"type":"object"},"RejectCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"RequestPermissionRequest":{"nullable":true,"properties":{"permissions":{"items":{"type":"string"},"title":"Permissions","type":"array","x-stream-index":"003"}},"required":["permissions"],"type":"object"},"RequestPermissionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"RingSettingsRequest":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"001"}},"type":"object"},"SFULocationResponse":{"properties":{"coordinates":{"$ref":"#/components/schemas/Coordinates","x-stream-index":"004"},"datacenter":{"type":"string","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001"},"location":{"$ref":"#/components/schemas/Location","x-stream-index":"003"}},"required":["id","datacenter","location","coordinates"],"type":"object"},"SFUResponse":{"properties":{"edge_name":{"type":"string","x-stream-index":"001"},"url":{"type":"string","x-stream-index":"002"},"ws_endpoint":{"type":"string","x-stream-index":"003"}},"required":["edge_name","url","ws_endpoint"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"ScreensharingSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"SearchRequest":{"properties":{"filter_conditions":{"description":"Channel filter conditions","maximum":100,"minimum":1,"title":"Channel filter","type":"object","x-stream-docs-page-id":"query_channels","x-stream-index":"002"},"limit":{"description":"Number of messages to return","format":"int32","title":"Limit","type":"integer","x-stream-index":"004"},"message_filter_conditions":{"description":"Message filter conditions","title":"Message filter","type":"object","x-stream-index":"003"},"next":{"description":"Pagination parameter. Cannot be used with non-zero offset.","title":"Next","type":"string","x-stream-index":"007"},"offset":{"description":"Pagination offset. Cannot be used with sort or next.","format":"int32","title":"Offset","type":"integer","x-stream-index":"005"},"query":{"description":"Search phrase","title":"Query","type":"string","x-stream-index":"001"},"sort":{"description":"Sort parameters. Cannot be used with non-zero offset","items":{"$ref":"#/components/schemas/SortParam"},"title":"Sort","type":"array","x-stream-index":"006"}},"required":["filter_conditions"],"type":"object"},"SearchResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"next":{"description":"Value to pass to the next search query in order to paginate","title":"Next","type":"string","x-stream-index":"003"},"previous":{"description":"Value that points to the previous page. Pass as the next value in a search query to paginate backwards","title":"Previous","type":"string","x-stream-index":"004"},"results":{"description":"Search results","items":{"$ref":"#/components/schemas/SearchResult"},"title":"Results","type":"array","x-stream-index":"001"},"results_warning":{"$ref":"#/components/schemas/SearchWarning","description":"Warning about the search results","title":"Results Warning","x-stream-index":"002"}},"required":["results","duration"],"type":"object"},"SearchResult":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/SearchResultMessage","description":"Found message","title":"Message","x-stream-index":"001"}},"type":"object"},"SearchResultMessage":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.031"},"attachments":{"items":{"$ref":"#/components/schemas/Attachment"},"type":"array","x-stream-index":"001.011"},"before_message_send_failed":{"type":"boolean","x-stream-index":"001.043"},"channel":{"$ref":"#/components/schemas/ChannelResponse","description":"Channel object","title":"Channel","x-stream-index":"002"},"cid":{"type":"string","x-stream-index":"001.026"},"command":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.028"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"001.021"},"html":{"type":"string","x-stream-index":"001.007"},"i18n":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"001.041"},"id":{"type":"string","x-stream-index":"001.002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.037"},"latest_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.012"},"mentioned_users":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"001.049"},"mml":{"type":"string","x-stream-index":"001.005"},"own_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.013"},"parent_id":{"type":"string","x-stream-index":"001.017"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"001.048"},"pinned":{"type":"boolean","x-stream-index":"001.044"},"pinned_at":{"format":"date-time","type":"string","x-stream-index":"001.045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.047"},"quoted_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.023"},"quoted_message_id":{"type":"string","x-stream-index":"001.022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.015"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.020"},"shadowed":{"type":"boolean","x-stream-index":"001.033"},"show_in_channel":{"type":"boolean","x-stream-index":"001.019"},"silent":{"type":"boolean","x-stream-index":"001.042"},"text":{"type":"string","x-stream-index":"001.004"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.025"},"type":{"type":"string","x-stream-index":"001.008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.029"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned"],"type":"object"},"SearchWarning":{"properties":{"channel_search_cids":{"description":"Channel CIDs for the searched channels","items":{"type":"string"},"title":"Channel Search CIDs","type":"array","x-stream-index":"004"},"channel_search_count":{"description":"Number of channels searched","format":"int32","title":"Channel Search Count","type":"integer","x-stream-index":"003"},"warning_code":{"description":"Code corresponding to the warning","format":"int32","title":"Warning Code","type":"integer","x-stream-index":"002"},"warning_description":{"description":"Description of the warning","title":"Warning Description","type":"string","x-stream-index":"001"}},"required":["warning_description","warning_code"],"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/EventRequest","x-stream-index":"001"}},"required":["event"],"type":"object"},"SendEventResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SendMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"SendMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"enforce_unique":{"description":"Whether to replace all existing user reactions","title":"Enforce unique","type":"boolean","x-stream-index":"003"},"reaction":{"$ref":"#/components/schemas/ReactionRequest","x-stream-index":"002"},"skip_push":{"description":"Skips any mobile push notifications","title":"Skip push","type":"boolean","x-stream-index":"004"}},"required":["reaction"],"type":"object"},"SendReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"reaction":{"$ref":"#/components/schemas/ReactionResponse","x-stream-index":"001"}},"required":["reaction","duration"],"type":"object"},"ShowChannelRequest":{"nullable":true,"type":"object"},"ShowChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParam":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StartHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StartHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"playlist_url":{"type":"string","x-stream-index":"002"}},"required":["duration","playlist_url"],"type":"object"},"StartRecordingRequest":{"nullable":true,"properties":{"recording_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartRecordingResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StartTranscriptionRequest":{"nullable":true,"properties":{"transcription_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartTranscriptionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Stats":{"properties":{"average_seconds":{"format":"float","type":"number","x-stream-index":"001"},"max_seconds":{"format":"float","type":"number","x-stream-index":"002"}},"required":["average_seconds","max_seconds"],"type":"object"},"StatsOptions":{"properties":{"reporting_interval_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["reporting_interval_ms"],"type":"object"},"StopHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StopHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopLiveRequest":{"nullable":true,"type":"object"},"StopLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"StopRecordingRequest":{"nullable":true,"type":"object"},"StopRecordingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopTranscriptionRequest":{"nullable":true,"type":"object"},"StopTranscriptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopWatchingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SyncRequest":{"nullable":true,"properties":{"channel_cids":{"description":"List of channel CIDs to sync","items":{"type":"string"},"maximum":255,"minimum":1,"title":"Channel CIDs","type":"array","x-stream-index":"001"},"connection_id":{"type":"string","x-stream-index":"006.003"},"last_sync_at":{"description":"Date from which synchronization should happen","format":"date-time","title":"Last sync at","type":"string","x-stream-index":"002"},"watch":{"description":"If set to true this will start watching requested and newly added channels that user has access to. If error occurred with this option enabled and it is not an input error - channels will still be watched.","title":"Watch synced channels","type":"boolean","x-stream-index":"004"},"with_inaccessible_cids":{"description":"If set to true this will add 'inaccessible_cids' to response type","title":"With inaccessible CIDs","type":"boolean","x-stream-index":"003"}},"required":["last_sync_at"],"type":"object"},"SyncResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"events":{"description":"List of events","items":{"$ref":"#/components/schemas/WSEvent"},"title":"Events","type":"array","x-stream-index":"001"},"inaccessible_cids":{"description":"List of CIDs that user can't access","items":{"type":"string"},"title":"Inaccessible CIDs","type":"array","x-stream-index":"002"}},"required":["events","duration"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"TargetResolutionRequest":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"type":"object"},"Thread":{"description":"Represents a conversation thread linked to a specific message in a channel.","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"012"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"010"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom"],"title":"Thread","type":"object"},"ThreadParticipant":{"description":"Represents a user that is participating in a thread.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"app_pk":{"format":"int32","readOnly":true,"type":"integer","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"007"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"009"},"left_thread_at":{"description":"Left Thread At is the time when the user left the thread","format":"date-time","title":"Left Thread At","type":"string","x-stream-index":"008"},"thread_id":{"description":"Thead ID is unique string identifier of the thread","title":"ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserObject","description":"User is the user object","title":"User","x-stream-index":"006"},"user_id":{"description":"User ID is unique string identifier of the user","title":"User ID","type":"string","x-stream-index":"005"}},"required":["app_pk","channel_cid","created_at","last_read_at","Custom"],"title":"ThreadParticipant","type":"object"},"ThreadResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"created_by_user_id":{"type":"string","x-stream-index":"005"},"custom":{"type":"object","x-stream-index":"015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"010"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"004"},"parent_message_id":{"type":"string","x-stream-index":"003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"008"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"009"},"title":{"type":"string","x-stream-index":"014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom"],"type":"object"},"ThreadState":{"description":"Represents a conversation thread linked to a specific message in a channel.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"001.004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"001.003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"001.013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"001.008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"001.015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"001.012"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"001.006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"001.005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"001.010"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"001.009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"001.016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"001.014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom","latest_replies"],"title":"Thread","type":"object"},"ThreadStateResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.002"},"channel_cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.006"},"created_by_user_id":{"type":"string","x-stream-index":"001.005"},"custom":{"type":"object","x-stream-index":"001.015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"001.010"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.004"},"parent_message_id":{"type":"string","x-stream-index":"001.003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"001.008"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.009"},"title":{"type":"string","x-stream-index":"001.014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom","latest_replies"],"type":"object"},"ThreadUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"default":"thread.updated","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ThreadUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Thresholds":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThumbnailResponse":{"properties":{"image_url":{"type":"string","x-stream-index":"001"}},"required":["image_url"],"type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"ThumbnailsSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranscriptionSettingsRequest":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"TranslateMessageRequest":{"nullable":true,"properties":{"language":{"description":"Language to translate message to","enum":["af","sq","am","ar","az","bn","bs","bg","zh","zh-TW","hr","cs","da","fa-AF","nl","en","et","fi","fr","fr-CA","ka","de","el","ha","he","hi","hu","id","it","ja","ko","lv","ms","no","fa","ps","pl","pt","ro","ru","sr","sk","sl","so","es","es-MX","sw","sv","tl","ta","th","tr","uk","ur","vi"],"title":"Language","type":"string","x-stream-index":"002"}},"required":["language"],"type":"object"},"TruncateChannelRequest":{"nullable":true,"properties":{"hard_delete":{"description":"Permanently delete channel data (messages, reactions, etc.)","title":"Hard delete","type":"boolean","x-stream-index":"002"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"004"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"005"},"truncated_at":{"description":"Truncate channel data up to `truncated_at`. The system message (if provided) creation time is always greater than `truncated_at`","format":"date-time","title":"Truncated at","type":"string","x-stream-index":"006"}},"type":"object"},"TruncateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"003"}},"required":["duration"],"type":"object"},"TypingStartEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"parent_id":{"type":"string","x-stream-index":"001"},"type":{"default":"typing.start","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"TypingStartEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"TypingStopEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"parent_id":{"type":"string","x-stream-index":"001"},"type":{"default":"typing.stop","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"TypingStopEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UnblockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to unblock","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"UnblockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnblockedUserEvent":{"description":"This event is sent when a user is unblocked on a call, \nthis can be useful to notify the user that they can now join the call again","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.unblocked_user","description":"The type of event: \"call.unblocked_user\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that was unblocked","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user"],"title":"UnblockedUserEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UnmuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"001.002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"001.003"}},"required":["channel_cids"],"type":"object"},"UnmuteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["duration"],"type":"object"},"UnmuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"001.002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"001.003"}},"required":["target_ids"],"type":"object"},"UnpinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"UnpinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnreadCountsChannel":{"properties":{"channel_id":{"type":"string","x-stream-index":"001"},"last_read":{"format":"date-time","type":"string","x-stream-index":"003"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["channel_id","unread_count","last_read"],"type":"object"},"UnreadCountsChannelType":{"properties":{"channel_count":{"format":"int32","type":"integer","x-stream-index":"002"},"channel_type":{"type":"string","x-stream-index":"001"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"003"}},"required":["channel_type","channel_count","unread_count"],"type":"object"},"UnreadCountsThread":{"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"003"},"parent_message_id":{"type":"string","x-stream-index":"004"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["unread_count","last_read","last_read_message_id","parent_message_id"],"type":"object"},"UpdateCallMembersRequest":{"nullable":true,"properties":{"remove_members":{"description":"List of userID to remove","items":{"type":"string"},"maximum":100,"title":"Remove Members","type":"array","x-stream-index":"003"},"update_members":{"description":"List of members to update or insert","items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"title":"Update Members","type":"array","x-stream-index":"004"}},"type":"object"},"UpdateCallMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"002"}},"required":["duration","members"],"type":"object"},"UpdateCallRequest":{"nullable":true,"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","description":"the settings to change for this call","title":"Settings Override","x-stream-index":"004"},"starts_at":{"description":"the time the call is scheduled to start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"005"}},"type":"object"},"UpdateCallResponse":{"description":"Represents a call","nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"title":"Call","type":"object"},"UpdateChannelPartialRequest":{"nullable":true,"properties":{"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["set","unset"],"type":"object"},"UpdateChannelPartialResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelRequest":{"nullable":true,"properties":{"accept_invite":{"description":"Set to `true` to accept the invite","title":"Accept invite","type":"boolean","x-stream-index":"008"},"add_members":{"description":"List of user IDs to add to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Add members","type":"array","x-stream-index":"001"},"add_moderators":{"description":"List of user IDs to make channel moderators","items":{"type":"string"},"maximum":100,"title":"Add moderators","type":"array","x-stream-index":"003"},"assign_roles":{"description":"List of channel member role assignments. If any specified user is not part of the channel, the request will fail","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Assign roles","type":"array","x-stream-index":"006"},"cooldown":{"description":"Sets cool down period for the channel in seconds","format":"int32","maximum":120,"minimum":0,"title":"Cool down","type":"integer","x-stream-index":"007"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"013.001"},"demote_moderators":{"description":"List of user IDs to take away moderators status from","items":{"type":"string"},"maximum":100,"title":"Demote moderators","type":"array","x-stream-index":"004"},"hide_history":{"description":"Set to `true` to hide channel's history when adding new members","title":"Hide history","type":"boolean","x-stream-index":"012"},"invites":{"description":"List of user IDs to invite to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Invites","type":"array","x-stream-index":"005"},"message":{"$ref":"#/components/schemas/MessageRequest","description":"Message to send to the chat when channel is successfully updated","title":"Message","x-stream-index":"010"},"reject_invite":{"description":"Set to `true` to reject the invite","title":"Reject invite","type":"boolean","x-stream-index":"009"},"remove_members":{"description":"List of user IDs to remove from the channel","items":{"type":"string"},"maximum":100,"title":"Remove members","type":"array","x-stream-index":"002"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"011"}},"required":["remove_members","add_moderators","demote_moderators"],"title":"Channel update request","type":"object","x-stream-docs-page-id":"channel_update"},"UpdateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"003"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateMessagePartialRequest":{"nullable":true,"properties":{"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"skip_enrich_url":{"type":"boolean","x-stream-index":"001"},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"}},"required":["set","unset"],"type":"object"},"UpdateMessagePartialResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"UpdateMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateThreadPartialRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"set":{"type":"object","x-stream-index":"004.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"004.002"}},"required":["set","unset"],"type":"object"},"UpdateThreadPartialResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadResponse","description":"Updated thread (not enriched)","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"UpdateUserPartialRequest":{"nullable":true,"properties":{"id":{"description":"User ID to update","title":"ID","type":"string","x-stream-index":"001"},"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["id","set","unset"],"type":"object"},"UpdateUserPermissionsRequest":{"nullable":true,"properties":{"grant_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"revoke_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"UpdateUserPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdateUsersRequest":{"nullable":true,"properties":{"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObjectRequest"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users"],"type":"object"},"UpdateUsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"membership_deletion_task_id":{"type":"string","x-stream-index":"002"},"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObject"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users","membership_deletion_task_id","duration"],"type":"object"},"UpdatedCallPermissionsEvent":{"description":"This event is sent to notify about permission changes for a user, clients receiving this event should update their UI accordingly","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"own_capabilities":{"description":"The capabilities of the current user","items":{"$ref":"#/components/schemas/OwnCapability"},"title":"Own capabilities","type":"array","x-stream-index":"004"},"type":{"default":"call.permissions_updated","description":"The type of event: \"call.permissions_updated\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who received the new permissions","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user","own_capabilities"],"title":"UpdatedCallPermissionsEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserBannedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"006.002"},"channel_type":{"type":"string","x-stream-index":"006.003"},"cid":{"type":"string","x-stream-index":"006.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008.002"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"},"expiration":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"type":{"default":"user.banned","type":"string","x-stream-index":"008.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"007.001"}},"required":["created_by","shadow","cid","channel_id","channel_type","type","created_at"],"title":"UserBannedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserDeactivatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"},"type":{"default":"user.deactivated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["created_by","type","created_at"],"title":"UserDeactivatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserDeletedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"delete_conversation_channels":{"type":"boolean","x-stream-index":"005"},"hard_delete":{"type":"boolean","x-stream-index":"003.001"},"mark_messages_deleted":{"type":"boolean","x-stream-index":"004"},"type":{"default":"user.deleted","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["type","created_at","hard_delete","mark_messages_deleted","delete_conversation_channels"],"title":"UserDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserInfoResponse":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"image":{"type":"string","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"004"}},"required":["name","image","custom","roles"],"type":"object"},"UserMute":{"nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"target":{"$ref":"#/components/schemas/UserObject","description":"User who's muted","title":"Target","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"UserMutedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"target_user":{"type":"string","x-stream-index":"001"},"target_users":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"type":{"default":"user.muted","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at"],"title":"UserMutedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserObject":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"007"},"deactivated_at":{"description":"Date of deactivation","format":"date-time","readOnly":true,"title":"Deactivated at","type":"string","x-stream-index":"012"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","readOnly":true,"title":"Deleted at","type":"string","x-stream-index":"011"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"last_active":{"description":"Date of last activity","format":"date-time","readOnly":true,"title":"Last active","type":"string","x-stream-index":"010"},"online":{"description":"Whether a user online or not","readOnly":true,"title":"Online","type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"008"}},"required":["id"],"title":"User object","type":"object"},"UserObjectRequest":{"description":"Represents chat user","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"016"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"021"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettingsRequest","x-stream-index":"022"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"019"}},"required":["id"],"title":"User object","type":"object"},"UserPresenceChangedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.presence.changed","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"UserPresenceChangedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserReactivatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.reactivated","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["type","created_at"],"title":"UserReactivatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"UserResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.005"},"ban_expires":{"format":"date-time","type":"string","x-stream-index":"001.015"},"banned":{"type":"boolean","x-stream-index":"001.014"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.007"},"deactivated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.012"},"deleted_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.011"},"id":{"type":"string","x-stream-index":"001.003"},"invisible":{"type":"boolean","x-stream-index":"001.021"},"language":{"type":"string","x-stream-index":"001.031"},"last_active":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.010"},"online":{"readOnly":true,"type":"boolean","x-stream-index":"001.020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"001.023"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.038"},"role":{"type":"string","x-stream-index":"001.004"},"shadow_banned":{"description":"Whether user is shadow banned or not","title":"Shadow banned","type":"boolean","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.032"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.008"}},"required":["id","role","Custom","banned","online","shadow_banned"],"type":"object"},"UserSessionStats":{"properties":{"freeze_duration_seconds":{"format":"float","type":"number","x-stream-index":"009"},"jitter":{"$ref":"#/components/schemas/Stats","x-stream-index":"006"},"latency":{"$ref":"#/components/schemas/Stats","x-stream-index":"007"},"os":{"type":"string","x-stream-index":"002"},"packet_loss_fraction":{"format":"float","type":"number","x-stream-index":"010"},"quality_score":{"format":"float","type":"number","x-stream-index":"008"},"sdk":{"type":"string","x-stream-index":"004"},"sdk_version":{"type":"string","x-stream-index":"005"},"timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"001"},"webrtc_version":{"type":"string","x-stream-index":"003"}},"required":["os","webrtc_version","sdk","sdk_version","quality_score","freeze_duration_seconds","packet_loss_fraction"],"type":"object"},"UserStats":{"properties":{"info":{"$ref":"#/components/schemas/UserInfoResponse","x-stream-index":"001"},"session_stats":{"additionalProperties":{"$ref":"#/components/schemas/UserSessionStats"},"type":"object","x-stream-index":"002"}},"required":["info","session_stats"],"type":"object"},"UserUnbannedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"shadow":{"type":"boolean","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"004.001"},"type":{"default":"user.unbanned","type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["shadow","cid","channel_id","channel_type","type","created_at"],"title":"UserUnbannedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.updated","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["type","created_at"],"title":"UserUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserWatchingStartEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"user.watching.start","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"UserWatchingStartEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserWatchingStopEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.watching.stop","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"UserWatchingStopEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"users":{"description":"List of found users","items":{"$ref":"#/components/schemas/UserResponse"},"title":"Users","type":"array","x-stream-index":"001"}},"required":["users","duration"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VideoSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolutionRequest","x-stream-index":"003"}},"type":"object"},"WSEvent":{"description":"The discriminator object for all websocket events, it maps events' payload to the final type","discriminator":{"mapping":{"call.accepted":"#/components/schemas/CallAcceptedEvent","call.blocked_user":"#/components/schemas/BlockedUserEvent","call.closed_caption":"#/components/schemas/ClosedCaptionEvent","call.created":"#/components/schemas/CallCreatedEvent","call.deleted":"#/components/schemas/CallDeletedEvent","call.ended":"#/components/schemas/CallEndedEvent","call.hls_broadcasting_failed":"#/components/schemas/CallHLSBroadcastingFailedEvent","call.hls_broadcasting_started":"#/components/schemas/CallHLSBroadcastingStartedEvent","call.hls_broadcasting_stopped":"#/components/schemas/CallHLSBroadcastingStoppedEvent","call.live_started":"#/components/schemas/CallLiveStartedEvent","call.member_added":"#/components/schemas/CallMemberAddedEvent","call.member_removed":"#/components/schemas/CallMemberRemovedEvent","call.member_updated":"#/components/schemas/CallMemberUpdatedEvent","call.member_updated_permission":"#/components/schemas/CallMemberUpdatedPermissionEvent","call.notification":"#/components/schemas/CallNotificationEvent","call.permission_request":"#/components/schemas/PermissionRequestEvent","call.permissions_updated":"#/components/schemas/UpdatedCallPermissionsEvent","call.reaction_new":"#/components/schemas/CallReactionEvent","call.recording_failed":"#/components/schemas/CallRecordingFailedEvent","call.recording_ready":"#/components/schemas/CallRecordingReadyEvent","call.recording_started":"#/components/schemas/CallRecordingStartedEvent","call.recording_stopped":"#/components/schemas/CallRecordingStoppedEvent","call.rejected":"#/components/schemas/CallRejectedEvent","call.ring":"#/components/schemas/CallRingEvent","call.session_ended":"#/components/schemas/CallSessionEndedEvent","call.session_participant_joined":"#/components/schemas/CallSessionParticipantJoinedEvent","call.session_participant_left":"#/components/schemas/CallSessionParticipantLeftEvent","call.session_started":"#/components/schemas/CallSessionStartedEvent","call.transcription_failed":"#/components/schemas/CallTranscriptionFailedEvent","call.transcription_ready":"#/components/schemas/CallTranscriptionReadyEvent","call.transcription_started":"#/components/schemas/CallTranscriptionStartedEvent","call.transcription_stopped":"#/components/schemas/CallTranscriptionStoppedEvent","call.unblocked_user":"#/components/schemas/UnblockedUserEvent","call.updated":"#/components/schemas/CallUpdatedEvent","call.user_muted":"#/components/schemas/CallUserMuted","channel.created":"#/components/schemas/ChannelCreatedEvent","channel.deleted":"#/components/schemas/ChannelDeletedEvent","channel.frozen":"#/components/schemas/ChannelFrozenEvent","channel.hidden":"#/components/schemas/ChannelHiddenEvent","channel.kicked":"#/components/schemas/ChannelKickedEvent","channel.truncated":"#/components/schemas/ChannelTruncatedEvent","channel.unfrozen":"#/components/schemas/ChannelUnFrozenEvent","channel.updated":"#/components/schemas/ChannelUpdatedEvent","channel.visible":"#/components/schemas/ChannelVisibleEvent","connection.error":"#/components/schemas/ConnectionErrorEvent","connection.ok":"#/components/schemas/ConnectedEvent","custom":"#/components/schemas/AnyEvent","health.check":"#/components/schemas/HealthCheckEvent","member.added":"#/components/schemas/MemberAddedEvent","member.removed":"#/components/schemas/MemberRemovedEvent","member.updated":"#/components/schemas/MemberUpdatedEvent","message.deleted":"#/components/schemas/MessageDeletedEvent","message.new":"#/components/schemas/MessageNewEvent","message.read":"#/components/schemas/MessageReadEvent","message.undeleted":"#/components/schemas/MessageUndeletedEvent","message.updated":"#/components/schemas/MessageUpdatedEvent","notification.added_to_channel":"#/components/schemas/NotificationAddedToChannelEvent","notification.channel_deleted":"#/components/schemas/NotificationChannelDeletedEvent","notification.channel_mutes_updated":"#/components/schemas/NotificationChannelMutesUpdatedEvent","notification.channel_truncated":"#/components/schemas/NotificationChannelTruncatedEvent","notification.invite_accepted":"#/components/schemas/NotificationInviteAcceptedEvent","notification.invite_rejected":"#/components/schemas/NotificationInviteRejectedEvent","notification.invited":"#/components/schemas/NotificationInvitedEvent","notification.mark_read":"#/components/schemas/NotificationMarkReadEvent","notification.mark_unread":"#/components/schemas/NotificationMarkUnreadEvent","notification.message_new":"#/components/schemas/NotificationNewMessageEvent","notification.mutes_updated":"#/components/schemas/NotificationMutesUpdatedEvent","notification.removed_from_channel":"#/components/schemas/NotificationRemovedFromChannelEvent","notification.thread_message_new":"#/components/schemas/MessageNewEvent","reaction.deleted":"#/components/schemas/ReactionDeletedEvent","reaction.new":"#/components/schemas/ReactionNewEvent","reaction.updated":"#/components/schemas/ReactionUpdatedEvent","thread.updated":"#/components/schemas/ThreadUpdatedEvent","typing.start":"#/components/schemas/TypingStartEvent","typing.stop":"#/components/schemas/TypingStopEvent","user.banned":"#/components/schemas/UserBannedEvent","user.deactivated":"#/components/schemas/UserDeactivatedEvent","user.deleted":"#/components/schemas/UserDeletedEvent","user.muted":"#/components/schemas/UserMutedEvent","user.presence.changed":"#/components/schemas/UserPresenceChangedEvent","user.reactivated":"#/components/schemas/UserReactivatedEvent","user.unbanned":"#/components/schemas/UserUnbannedEvent","user.updated":"#/components/schemas/UserUpdatedEvent","user.watching.start":"#/components/schemas/UserWatchingStartEvent","user.watching.stop":"#/components/schemas/UserWatchingStopEvent"},"propertyName":"type"},"oneOf":[{"$ref":"#/components/schemas/AnyEvent"},{"$ref":"#/components/schemas/BlockedUserEvent"},{"$ref":"#/components/schemas/CallAcceptedEvent"},{"$ref":"#/components/schemas/CallCreatedEvent"},{"$ref":"#/components/schemas/CallDeletedEvent"},{"$ref":"#/components/schemas/CallEndedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingFailedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingStartedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingStoppedEvent"},{"$ref":"#/components/schemas/CallLiveStartedEvent"},{"$ref":"#/components/schemas/CallMemberAddedEvent"},{"$ref":"#/components/schemas/CallMemberRemovedEvent"},{"$ref":"#/components/schemas/CallMemberUpdatedEvent"},{"$ref":"#/components/schemas/CallMemberUpdatedPermissionEvent"},{"$ref":"#/components/schemas/CallNotificationEvent"},{"$ref":"#/components/schemas/CallReactionEvent"},{"$ref":"#/components/schemas/CallRecordingFailedEvent"},{"$ref":"#/components/schemas/CallRecordingReadyEvent"},{"$ref":"#/components/schemas/CallRecordingStartedEvent"},{"$ref":"#/components/schemas/CallRecordingStoppedEvent"},{"$ref":"#/components/schemas/CallRejectedEvent"},{"$ref":"#/components/schemas/CallRingEvent"},{"$ref":"#/components/schemas/CallSessionEndedEvent"},{"$ref":"#/components/schemas/CallSessionParticipantJoinedEvent"},{"$ref":"#/components/schemas/CallSessionParticipantLeftEvent"},{"$ref":"#/components/schemas/CallSessionStartedEvent"},{"$ref":"#/components/schemas/CallTranscriptionFailedEvent"},{"$ref":"#/components/schemas/CallTranscriptionReadyEvent"},{"$ref":"#/components/schemas/CallTranscriptionStartedEvent"},{"$ref":"#/components/schemas/CallTranscriptionStoppedEvent"},{"$ref":"#/components/schemas/CallUpdatedEvent"},{"$ref":"#/components/schemas/CallUserMuted"},{"$ref":"#/components/schemas/ChannelCreatedEvent"},{"$ref":"#/components/schemas/ChannelDeletedEvent"},{"$ref":"#/components/schemas/ChannelFrozenEvent"},{"$ref":"#/components/schemas/ChannelHiddenEvent"},{"$ref":"#/components/schemas/ChannelKickedEvent"},{"$ref":"#/components/schemas/ChannelTruncatedEvent"},{"$ref":"#/components/schemas/ChannelUnFrozenEvent"},{"$ref":"#/components/schemas/ChannelUpdatedEvent"},{"$ref":"#/components/schemas/ChannelVisibleEvent"},{"$ref":"#/components/schemas/ClosedCaptionEvent"},{"$ref":"#/components/schemas/ConnectedEvent"},{"$ref":"#/components/schemas/ConnectionErrorEvent"},{"$ref":"#/components/schemas/HealthCheckEvent"},{"$ref":"#/components/schemas/MemberAddedEvent"},{"$ref":"#/components/schemas/MemberRemovedEvent"},{"$ref":"#/components/schemas/MemberUpdatedEvent"},{"$ref":"#/components/schemas/MessageDeletedEvent"},{"$ref":"#/components/schemas/MessageNewEvent"},{"$ref":"#/components/schemas/MessageNewEvent"},{"$ref":"#/components/schemas/MessageReadEvent"},{"$ref":"#/components/schemas/MessageUndeletedEvent"},{"$ref":"#/components/schemas/MessageUpdatedEvent"},{"$ref":"#/components/schemas/NotificationAddedToChannelEvent"},{"$ref":"#/components/schemas/NotificationChannelDeletedEvent"},{"$ref":"#/components/schemas/NotificationChannelMutesUpdatedEvent"},{"$ref":"#/components/schemas/NotificationChannelTruncatedEvent"},{"$ref":"#/components/schemas/NotificationInviteAcceptedEvent"},{"$ref":"#/components/schemas/NotificationInviteRejectedEvent"},{"$ref":"#/components/schemas/NotificationInvitedEvent"},{"$ref":"#/components/schemas/NotificationMarkReadEvent"},{"$ref":"#/components/schemas/NotificationMarkUnreadEvent"},{"$ref":"#/components/schemas/NotificationMutesUpdatedEvent"},{"$ref":"#/components/schemas/NotificationNewMessageEvent"},{"$ref":"#/components/schemas/NotificationRemovedFromChannelEvent"},{"$ref":"#/components/schemas/PermissionRequestEvent"},{"$ref":"#/components/schemas/ReactionDeletedEvent"},{"$ref":"#/components/schemas/ReactionNewEvent"},{"$ref":"#/components/schemas/ReactionUpdatedEvent"},{"$ref":"#/components/schemas/ThreadUpdatedEvent"},{"$ref":"#/components/schemas/TypingStartEvent"},{"$ref":"#/components/schemas/TypingStopEvent"},{"$ref":"#/components/schemas/UnblockedUserEvent"},{"$ref":"#/components/schemas/UpdatedCallPermissionsEvent"},{"$ref":"#/components/schemas/UserBannedEvent"},{"$ref":"#/components/schemas/UserDeactivatedEvent"},{"$ref":"#/components/schemas/UserDeletedEvent"},{"$ref":"#/components/schemas/UserMutedEvent"},{"$ref":"#/components/schemas/UserPresenceChangedEvent"},{"$ref":"#/components/schemas/UserReactivatedEvent"},{"$ref":"#/components/schemas/UserUnbannedEvent"},{"$ref":"#/components/schemas/UserUpdatedEvent"},{"$ref":"#/components/schemas/UserWatchingStartEvent"},{"$ref":"#/components/schemas/UserWatchingStopEvent"}]},"WrappedUnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"001.004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"001.005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001.001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"001.002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads","duration"],"type":"object"},"XiaomiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"package_name":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"connectRequestQueryRequest":{"nullable":true,"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v104.0.1"},"openapi":"3.0.3","paths":{"/api/v2/app":{"get":{"description":"This Method returns the application settings\n","operationId":"GetApp","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetApplicationResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get App Settings","tags":["Settings"]}},"/api/v2/chat/channels":{"post":{"description":"Query channels with filter query\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryChannels","parameters":[{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"011.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryChannelsRequest"}}},"description":"Query Channels Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelsResponse"}}},"description":"Channels list"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query channels","tags":["Channels"]}},"/api/v2/chat/channels/delete":{"post":{"description":"Allows to delete several channels at once asynchronously\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deletes channels asynchronously","tags":["Channels","GDPR"]}},"/api/v2/chat/channels/read":{"post":{"description":"Marks channels as read up to the specific message. If no channels is given, mark all channel as read\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkChannelsRead","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChannelsReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark channels as read","tags":["Channels","Messages"]}},"/api/v2/chat/channels/{type}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}":{"delete":{"description":"Deletes channel\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"hard_delete","schema":{"type":"boolean","x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel","tags":["Channels"]},"patch":{"description":"Updates certain fields of the channel\n\nSends events:\n- channel.updated\n\nRequired permissions:\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n","operationId":"UpdateChannelPartial","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update channel","tags":["Channels"]},"post":{"description":"Change channel data\n\nSends events:\n- channel.updated\n- member.added\n- member.removed\n- member.updated\n- message.new\n\nRequired permissions:\n- AddOwnChannelMembership\n- RemoveOwnChannelMembership\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n- UpdateChannelMembers\n","operationId":"UpdateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelRequest"}}},"description":"Channel update request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/event":{"post":{"description":"Sends event to the channel\n\nRequired permissions:\n- SendCustomEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send event","tags":["Events"]}},"/api/v2/chat/channels/{type}/{id}/file":{"delete":{"description":"Deletes previously uploaded file\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete file","tags":["Messages","Files"]},"post":{"description":"Uploads file\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload file","tags":["Messages","Files"]}},"/api/v2/chat/channels/{type}/{id}/hide":{"post":{"description":"Marks channel as hidden for current user\n\nSends events:\n- channel.hidden\n\nRequired permissions:\n- ReadChannel\n","operationId":"HideChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Hide channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/image":{"delete":{"description":"Deletes previously uploaded image\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete image","tags":["Messages","Files"]},"post":{"description":"Uploads image\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ImageUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload image","tags":["Messages","Files"]}},"/api/v2/chat/channels/{type}/{id}/message":{"post":{"description":"Sends new message to the specified channel\n\nSends events:\n- message.new\n- message.updated\n\nRequired permissions:\n- AddLinks\n- CreateMessage\n- PinMessage\n- SkipChannelCooldown\n- SkipMessageModeration\n- UseFrozenChannel\n","operationId":"SendMessage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"009.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"009.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send new message","tags":["Messages"]}},"/api/v2/chat/channels/{type}/{id}/messages":{"get":{"description":"Returns list messages found by IDs\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetManyMessages","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"ids","schema":{"description":"List of comma-separated IDs","items":{"type":"string"},"maximum":50,"minimum":1,"title":"IDs","type":"array","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetManyMessagesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get many messages","tags":["Messages"]}},"/api/v2/chat/channels/{type}/{id}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID (maximum length of 64 characters)","title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/read":{"post":{"description":"Marks channel as read up to the specific message\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkRead","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark read","tags":["Channels","Messages"]}},"/api/v2/chat/channels/{type}/{id}/show":{"post":{"description":"Shows previously hidden channel\n\nSends events:\n- channel.visible\n","operationId":"ShowChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Show channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/stop-watching":{"post":{"description":"Call this Method to stop receiving channel events\n\nSends events:\n- user.watching.stop\n","operationId":"StopWatchingChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStopWatchingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopWatchingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop watching channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/truncate":{"post":{"description":"Truncates channel\n\nSends events:\n- channel.truncated\n\nRequired permissions:\n- DeleteChannel\n- TruncateChannel\n","operationId":"TruncateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Truncate channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/unread":{"post":{"description":"Marks channel as unread from a specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkUnread","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkUnreadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark unread","tags":["Channels","Messages"]}},"/api/v2/chat/members":{"get":{"description":"Find and filter channel members\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryMembers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query members","tags":["Channels"]}},"/api/v2/chat/messages/{id}":{"delete":{"description":"Deletes message\n\nSends events:\n- message.deleted\n\nRequired permissions:\n- DeleteMessage\n","operationId":"DeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"hard","schema":{"description":"Delete all message reactions and replies as well","title":"Hard","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"deleted_by","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete message","tags":["Messages"]},"get":{"description":"Returns message by ID\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"show_deleted_message","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageWithPendingMetadataResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get message","tags":["Messages"]},"post":{"description":"Updates message with new data\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update message","tags":["Messages"]},"put":{"description":"Updates certain fields of the message\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessagePartial","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially message update","tags":["Messages"]}},"/api/v2/chat/messages/{id}/action":{"post":{"description":"Executes message command action with given parameters\n\nSends events:\n- message.new\n\nRequired permissions:\n- RunMessageAction\n","operationId":"RunMessageAction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageActionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Run message command action","tags":["Messages"]}},"/api/v2/chat/messages/{id}/reaction":{"post":{"description":"Sends reaction to specified message\n\nSends events:\n- reaction.new\n- reaction.updated\n\nRequired permissions:\n- CreateReaction\n- UseFrozenChannel\n","operationId":"SendReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to send reaction for","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/reaction/{type}":{"delete":{"description":"Removes user reaction from the message\n\nSends events:\n- reaction.deleted\n\nRequired permissions:\n- DeleteReaction\n","operationId":"DeleteReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to remove reaction from","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"type","required":true,"schema":{"description":"Reaction type to remove","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionRemovalResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete reaction","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/reactions":{"get":{"description":"Returns list of reactions of specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReactions","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"limit","schema":{"description":"Number of records to return","format":"int32","title":"Limit","type":"integer","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"offset","schema":{"description":"Number of records to offset","format":"int32","title":"Offset","type":"integer","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetReactionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get reactions","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/translate":{"post":{"description":"Translates message to a given language using automated translation software\n\nSends events:\n- message.updated\n\nRequired permissions:\n- ReadChannel\n","operationId":"TranslateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Translate message","tags":["Messages"]}},"/api/v2/chat/messages/{parent_id}/replies":{"get":{"description":"Returns replies (thread) of the message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReplies","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"description":"ID of a message which replies to return","title":"Parent ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"id_gte","schema":{"type":"string","x-stream-index":"002.001.003"}},{"in":"query","name":"id_gt","schema":{"type":"string","x-stream-index":"002.001.004"}},{"in":"query","name":"id_lte","schema":{"type":"string","x-stream-index":"002.001.005"}},{"in":"query","name":"id_lt","schema":{"type":"string","x-stream-index":"002.001.006"}},{"in":"query","name":"created_at_after_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.007"}},{"in":"query","name":"created_at_after","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.008"}},{"in":"query","name":"created_at_before_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.009"}},{"in":"query","name":"created_at_before","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.010"}},{"in":"query","name":"id_around","schema":{"type":"string","x-stream-index":"002.001.011"}},{"in":"query","name":"created_at_around","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.012"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get replies","tags":["Messages"]}},"/api/v2/chat/moderation/ban":{"delete":{"description":"Removes previously applied ban\n\nSends events:\n- user.unbanned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Unban","parameters":[{"in":"query","name":"target_user_id","schema":{"type":"string","x-stream-index":"001"}},{"in":"query","name":"type","schema":{"type":"string","x-stream-index":"002"}},{"in":"query","name":"id","schema":{"type":"string","x-stream-index":"003"}},{"in":"query","name":"created_by","schema":{"type":"string","x-stream-index":"004"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unban user","tags":["Users","Moderation"]},"post":{"description":"Restricts user activity either in specific channel or globally\n\nSends events:\n- user.banned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Ban","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BanRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Ban user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/flag":{"post":{"description":"Reports message or user for review by moderators\n\nSends events:\n- message.flagged\n- user.flagged\n\nRequired permissions:\n- FlagMessage\n- FlagUser\n","operationId":"Flag","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Flag","tags":["Moderation","Messages","Users"]}},"/api/v2/chat/moderation/flags/message":{"get":{"description":"Find and filter message flags\n\nRequired permissions:\n- ReadMessageFlags\n","operationId":"QueryMessageFlags","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Message Flags","tags":["Messages","Moderation"]}},"/api/v2/chat/moderation/mute":{"post":{"description":"Mutes one or several users\n\nSends events:\n- user.muted\n\nRequired permissions:\n- MuteUser\n","operationId":"MuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/mute/channel":{"post":{"description":"Mutes channel for user\n\nSends events:\n- channel.muted\n\nRequired permissions:\n- MuteChannel\n","operationId":"MuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute channel","tags":["Channels"]}},"/api/v2/chat/moderation/unmute":{"post":{"description":"Unmutes previously muted user\n\nSends events:\n- user.unmuted\n\nRequired permissions:\n- MuteUser\n","operationId":"UnmuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/unmute/channel":{"post":{"description":"Unmutes channel for user\n\nSends events:\n- channel.unmuted\n\nRequired permissions:\n- MuteChannel\n","operationId":"UnmuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute channel","tags":["Channels"]}},"/api/v2/chat/query_banned_users":{"get":{"description":"Find and filter channel scoped or global user bans\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryBannedUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Banned Users","tags":["Users","Moderation"]}},"/api/v2/chat/search":{"get":{"description":"Search messages across channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Search","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest","description":"JSON object with search payload","title":"Payload","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Search messages","tags":["Channels","Messages"]}},"/api/v2/chat/sync":{"post":{"description":"Returns all events happened since client disconnect in specified channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Sync","parameters":[{"in":"query","name":"with_inaccessible_cids","schema":{"description":"If set to true this will add 'inaccessible_cids' to response type","title":"With inaccessible CIDs","type":"boolean","x-stream-index":"003"}},{"in":"query","name":"watch","schema":{"description":"If set to true this will start watching requested and newly added channels that user has access to. If error occurred with this option enabled and it is not an input error - channels will still be watched.","title":"Watch synced channels","type":"boolean","x-stream-index":"004"}},{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"006.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Sync","tags":["Channels","Events"]}},"/api/v2/chat/threads":{"post":{"description":"Returns the list of threads for specific user\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryThreads","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Threads","tags":["Threads"]}},"/api/v2/chat/threads/{message_id}":{"get":{"description":"Return a specific thread\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetThread","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"watch","schema":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"reply_limit","schema":{"description":"Limit the number of replies returned","format":"int32","minimum":0,"title":"Reply limit","type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"participant_limit","schema":{"description":"Limit the number of participants returned","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetThreadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Thread","tags":["Threads"]},"patch":{"description":"Updates certain fields of the thread\n\nSends events:\n- thread.updated\n\nRequired permissions:\n- ReadChannel\n- UpdateThread\n","operationId":"UpdateThreadPartial","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update thread","tags":["Threads","Channels"]}},"/api/v2/chat/unread":{"get":{"description":"Fetch unread counts for a single user\n","operationId":"UnreadCounts","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WrappedUnreadCountsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unread counts","tags":["Channels"]}},"/api/v2/connect":{"get":{"description":"Establishes WebSocket connection for user\n\nSends events:\n- user.updated\n","operationId":"Connect","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Connect (WebSocket)","tags":["Users"]}},"/api/v2/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device","tags":["Devices"]},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices","tags":["Devices"]},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device","tags":["Devices","Push"]}},"/api/v2/guest":{"post":{"description":"Creates guest user\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create guest","tags":["Users"]}},"/api/v2/longpoll":{"get":{"description":"WebSocket fallback transport endpoint\n\nSends events:\n- user.updated\n","operationId":"LongPoll","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"},{"in":"query","name":"connection_id","schema":{"maxLength":36,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Long Poll (Transport)","tags":["Users"]}},"/api/v2/og":{"get":{"description":"Get an OpenGraph attachment for a link\n","operationId":"GetOG","parameters":[{"in":"query","name":"url","schema":{"description":"URL to be scraped","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOGResponse"}}},"description":"Get OG Attachment"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get OG","tags":["Messages"]}},"/api/v2/users":{"get":{"description":"Find and filter users\n\nRequired permissions:\n- SearchUser\n","operationId":"QueryUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query users","tags":["Users"]},"patch":{"description":"Updates certain fields of the user\n\nSends events:\n- user.presence.changed\n- user.updated\n","operationId":"UpdateUsersPartial","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update user","tags":["Users"]},"post":{"description":"Update or create users in bulk\n\nSends events:\n- user.updated\n","operationId":"UpdateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert users","tags":["Users"]}},"/api/v2/video/call/members":{"post":{"description":"Query call members with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryMembers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest_1"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call members"}},"/api/v2/video/call/stats":{"post":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"QueryCallStats","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Call Stats"}},"/api/v2/video/call/{type}/{id}":{"get":{"description":"\n\nRequired permissions:\n- ReadCall\n","operationId":"GetCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"members_limit","schema":{"format":"int32","maximum":100,"minimum":0,"type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"ring","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"005"}},{"in":"query","name":"notify","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"006"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call"},"patch":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"UpdateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallResponse"}}},"description":"Call"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call"},"post":{"description":"Gets or creates a new call\n\nSends events:\n- call.created\n- call.notification\n- call.ring\n\nRequired permissions:\n- CreateCall\n- ReadCall\n- UpdateCallSettings\n","operationId":"GetOrCreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create a call"}},"/api/v2/video/call/{type}/{id}/accept":{"post":{"description":"\n\nSends events:\n- call.accepted\n\nRequired permissions:\n- JoinCall\n","operationId":"AcceptCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AcceptCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Accept Call"}},"/api/v2/video/call/{type}/{id}/block":{"post":{"description":"Block a user, preventing them from joining the call until they are unblocked.\n\nSends events:\n- call.blocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"BlockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Block user on a call"}},"/api/v2/video/call/{type}/{id}/event":{"post":{"description":"Sends custom event to the call\n\nSends events:\n- custom\n\nRequired permissions:\n- SendEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send custom event"}},"/api/v2/video/call/{type}/{id}/feedback/{session}":{"post":{"description":"\n\nRequired permissions:\n- JoinCall\n","operationId":"CollectUserFeedback","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Collect user feedback"}},"/api/v2/video/call/{type}/{id}/go_live":{"post":{"description":"\n\nSends events:\n- call.live_started\n\nRequired permissions:\n- UpdateCall\n","operationId":"GoLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as live"}},"/api/v2/video/call/{type}/{id}/join":{"post":{"description":"Request to join a call\n\nRequired permissions:\n- CreateCall\n- JoinCall\n","operationId":"JoinCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"title":"ConnectionID","type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Join call"}},"/api/v2/video/call/{type}/{id}/mark_ended":{"post":{"description":"\n\nSends events:\n- call.ended\n\nRequired permissions:\n- EndCall\n","operationId":"EndCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"End call"}},"/api/v2/video/call/{type}/{id}/members":{"post":{"description":"\n\nSends events:\n- call.member_added\n- call.member_removed\n- call.member_updated\n\nRequired permissions:\n- RemoveCallMember\n- UpdateCallMember\n- UpdateCallMemberRole\n","operationId":"UpdateCallMembers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Member"}},"/api/v2/video/call/{type}/{id}/mute_users":{"post":{"description":"Mutes users in a call\n\nRequired permissions:\n- MuteUsers\n","operationId":"MuteUsers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute users"}},"/api/v2/video/call/{type}/{id}/pin":{"post":{"description":"Pins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoPin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Pin"}},"/api/v2/video/call/{type}/{id}/reaction":{"post":{"description":"Sends reaction to the call\n\nSends events:\n- call.reaction_new\n\nRequired permissions:\n- CreateCallReaction\n","operationId":"SendVideoReaction","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction to the call"}},"/api/v2/video/call/{type}/{id}/recordings":{"get":{"description":"Lists recordings\n\nRequired permissions:\n- ListRecordings\n","operationId":"ListRecordings","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRecordingsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List recordings"}},"/api/v2/video/call/{type}/{id}/reject":{"post":{"description":"\n\nSends events:\n- call.rejected\n\nRequired permissions:\n- JoinCall\n","operationId":"RejectCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RejectCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reject Call"}},"/api/v2/video/call/{type}/{id}/request_permission":{"post":{"description":"Request permission to perform an action\n\nSends events:\n- call.permission_request\n","operationId":"RequestPermission","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestPermissionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestPermissionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Request permission"}},"/api/v2/video/call/{type}/{id}/start_broadcasting":{"post":{"description":"Starts HLS broadcasting\n\nRequired permissions:\n- StartBroadcasting\n","operationId":"StartHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start HLS broadcasting"}},"/api/v2/video/call/{type}/{id}/start_recording":{"post":{"description":"Starts recording\n\nSends events:\n- call.recording_started\n\nRequired permissions:\n- StartRecording\n","operationId":"StartRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start recording"}},"/api/v2/video/call/{type}/{id}/start_transcription":{"post":{"description":"Starts transcription\n\nRequired permissions:\n- StartTranscription\n","operationId":"StartTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start transcription"}},"/api/v2/video/call/{type}/{id}/stats/{session}":{"get":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"GetCallStats","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Stats"}},"/api/v2/video/call/{type}/{id}/stop_broadcasting":{"post":{"description":"Stops HLS broadcasting\n\nRequired permissions:\n- StopBroadcasting\n","operationId":"StopHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop HLS broadcasting"}},"/api/v2/video/call/{type}/{id}/stop_live":{"post":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"StopLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as not live"}},"/api/v2/video/call/{type}/{id}/stop_recording":{"post":{"description":"Stops recording\n\nSends events:\n- call.recording_stopped\n\nRequired permissions:\n- StopRecording\n","operationId":"StopRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop recording"}},"/api/v2/video/call/{type}/{id}/stop_transcription":{"post":{"description":"Stops transcription\n\nSends events:\n- call.transcription_stopped\n\nRequired permissions:\n- StopTranscription\n","operationId":"StopTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop transcription"}},"/api/v2/video/call/{type}/{id}/transcriptions":{"get":{"description":"Lists transcriptions\n\nRequired permissions:\n- ListTranscriptions\n","operationId":"ListTranscriptions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTranscriptionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List transcriptions"}},"/api/v2/video/call/{type}/{id}/unblock":{"post":{"description":"Removes the block for a user on a call. The user will be able to join the call again.\n\nSends events:\n- call.unblocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"UnblockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unblocks user on a call"}},"/api/v2/video/call/{type}/{id}/unpin":{"post":{"description":"Unpins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoUnpin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unpin"}},"/api/v2/video/call/{type}/{id}/user_permissions":{"post":{"description":"Updates user permissions\n\nSends events:\n- call.permissions_updated\n\nRequired permissions:\n- UpdateCallPermissions\n","operationId":"UpdateUserPermissions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update user permissions"}},"/api/v2/video/calls":{"post":{"description":"Query calls with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryCalls","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call"}},"/api/v2/video/edges":{"get":{"description":"Returns the list of all edges available for video calls.\n","operationId":"GetEdges","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEdgesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Edges"}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file +{"components":{"schemas":{"APIError":{"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNConfigFields":{"properties":{"auth_key":{"type":"string","x-stream-index":"009"},"auth_type":{"type":"string","x-stream-index":"003"},"bundle_id":{"type":"string","x-stream-index":"006"},"development":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"},"host":{"type":"string","x-stream-index":"005"},"key_id":{"type":"string","x-stream-index":"008"},"notification_template":{"type":"string","x-stream-index":"004"},"p12_cert":{"type":"string","x-stream-index":"010"},"team_id":{"type":"string","x-stream-index":"007"}},"required":["enabled","development","notification_template"],"type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"AcceptCallRequest":{"nullable":true,"type":"object"},"AcceptCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Action":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"required":["name","text","type"],"type":"object"},"ActionRequest":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"type":"object"},"AnyEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"custom","type":"string","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"AnyEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"App":{"properties":{"agora_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.039"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.018"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.016"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.019"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.020"},"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallType"},"type":"object","x-stream-index":"001.006"},"campaign_enabled":{"type":"boolean","x-stream-index":"001.033"},"cdn_expiration_seconds":{"format":"int32","type":"integer","x-stream-index":"001.037"},"channel_configs":{"additionalProperties":{"$ref":"#/components/schemas/ChannelConfig"},"description":"Object with channel configs","title":"Channel configs","type":"object","x-stream-index":"001.005","x-stream-map":{"key":"channel_type"}},"custom_action_handler_url":{"type":"string","x-stream-index":"001.021"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfo","x-stream-index":"001.042"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.010"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.011"},"enforce_unique_usernames":{"type":"string","x-stream-index":"001.022"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.029"},"geofences":{"items":{"$ref":"#/components/schemas/GeofenceResponse"},"type":"array","x-stream-index":"001.041"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.040"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.015"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.017"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.030"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.014"},"name":{"type":"string","x-stream-index":"001.001"},"organization":{"type":"string","x-stream-index":"001.002"},"permission_version":{"type":"string","x-stream-index":"001.012"},"policies":{"additionalProperties":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"type":"object","x-stream-index":"001.007"},"polls_enabled":{"type":"boolean","x-stream-index":"001.034"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationFields","x-stream-index":"001.003"},"reminders_interval":{"format":"int32","type":"integer","x-stream-index":"001.036"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.031"},"sns_key":{"type":"string","x-stream-index":"001.027"},"sns_secret":{"type":"string","x-stream-index":"001.028"},"sns_topic_arn":{"type":"string","x-stream-index":"001.026"},"sqs_key":{"type":"string","x-stream-index":"001.024"},"sqs_secret":{"type":"string","x-stream-index":"001.025"},"sqs_url":{"type":"string","x-stream-index":"001.023"},"suspended":{"type":"boolean","x-stream-index":"001.008"},"suspended_explanation":{"type":"string","x-stream-index":"001.009"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"video_provider":{"type":"string","x-stream-index":"001.038"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.035"},"webhook_url":{"type":"string","x-stream-index":"001.004"}},"required":["name","organization","push_notifications","webhook_url","channel_configs","call_types","policies","suspended","suspended_explanation","disable_auth_checks","disable_permissions_checks","permission_version","user_search_disallowed_roles","multi_tenant_enabled","image_moderation_enabled","async_url_enrich_enabled","custom_action_handler_url","enforce_unique_usernames","sqs_url","sqs_key","sqs_secret","sns_topic_arn","sns_key","sns_secret","file_upload_config","image_upload_config","grants","campaign_enabled","polls_enabled","webhook_events","reminders_interval","cdn_expiration_seconds","video_provider"],"type":"object"},"Attachment":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"021"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"023"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"019"},"poll_id":{"type":"string","x-stream-index":"018"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url, poll)","title":"Type","type":"string","x-stream-index":"001"}},"required":["Custom"],"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AttachmentRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"actions":{"items":{"$ref":"#/components/schemas/ActionRequest"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/FieldRequest"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/ImagesRequest","x-stream-index":"021"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"023"},"poll":{"$ref":"#/components/schemas/PollRequest","x-stream-index":"019"},"poll_id":{"type":"string","x-stream-index":"018"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url, poll)","title":"Type","type":"string","x-stream-index":"001"}},"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettings","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AudioSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettingsRequest","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["default_device"],"type":"object"},"AutomodDetails":{"properties":{"action":{"type":"string","x-stream-index":"001"},"image_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"message_details":{"$ref":"#/components/schemas/FlagMessageDetails","x-stream-index":"004"},"original_message_type":{"type":"string","x-stream-index":"002"},"result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"003"}},"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BackstageSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"BanRequest":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserRequest","description":"User who issued a ban","title":"Banned by","x-stream-index":"009"},"banned_by_id":{"description":"User ID who issued a ban","title":"Banned by ID","type":"string","x-stream-index":"008"},"id":{"description":"Channel ID to ban user in","title":"ID","type":"string","x-stream-index":"005"},"ip_ban":{"description":"Whether to perform IP ban or not","title":"IP ban","type":"boolean","x-stream-index":"007"},"reason":{"description":"Ban reason","title":"Reason","type":"string","x-stream-index":"003"},"shadow":{"description":"Whether to perform shadow ban or not","title":"Shadow","type":"boolean","x-stream-index":"006"},"target_user_id":{"description":"ID of user to ban","title":"Target user ID","type":"string","x-stream-index":"001"},"timeout":{"description":"Timeout of ban in minutes. User will be unbanned after this period of time","title":"Timeout","type":"integer","x-stream-index":"002"},"type":{"description":"Channel type to ban user in","title":"Type","type":"string","x-stream-index":"004"}},"required":["target_user_id"],"type":"object"},"BanResponse":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"expires":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"required":["created_at"],"type":"object"},"BlockListOptions":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"required":["blocklist","behavior"],"type":"object"},"BlockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to block","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"BlockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"BlockedUserEvent":{"description":"This event is sent to call participants to notify when a user is blocked on a call, clients can use this event to show a notification. \nIf the user is the current user, the client should leave the call screen as well","properties":{"blocked_by_user":{"$ref":"#/components/schemas/UserResponse","description":"The user that blocked the user, null if the user was blocked by server-side","title":"Blocked by","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.blocked_user","description":"The type of event: \"call.blocked_user\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that was blocked","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user"],"title":"BlockedUserEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"BroadcastSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettings","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"BroadcastSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsRequest","x-stream-index":"002"}},"type":"object"},"BroadcastSettingsResponse":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsResponse","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"CallAcceptedEvent":{"description":"This event is sent when a user accepts a notification to join a call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.accepted","description":"The type of event: \"call.accepted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who accepted the call","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call","user"],"title":"CallAcceptedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallClosedCaption":{"description":"CallClosedCaption represents a closed caption of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the closed caption.","type":"string","x-stream-index":"003"},"speaker_id":{"title":"The speaker ID of the closed caption.","type":"string","x-stream-index":"004"},"start_time":{"format":"date-time","title":"The start time of the closed caption.","type":"string","x-stream-index":"002"},"text":{"title":"The text of the closed caption.","type":"string","x-stream-index":"001"}},"required":["text","start_time","end_time","speaker_id"],"type":"object"},"CallCreatedEvent":{"description":"This event is sent when a call is created. Clients receiving this event should check if the ringing \nfield is set to true and if so, show the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the members added to this call","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.created","description":"The type of event: \"call.created\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallCreatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallDeletedEvent":{"description":"This event is sent when a call is deleted. Clients receiving this event should leave the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.deleted","description":"The type of event: \"call.deleted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call"],"title":"CallDeletedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallEndedEvent":{"description":"This event is sent when a call is mark as ended for all its participants. Clients receiving this event should leave the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.ended","description":"The type of event: \"call.ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who ended the call, null if the call was ended by the server","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call"],"title":"CallEndedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallEvent":{"nullable":true,"properties":{"description":{"type":"string","x-stream-index":"004"},"end_timestamp":{"format":"int64","type":"integer","x-stream-index":"002"},"severity":{"format":"int32","type":"integer","x-stream-index":"003"},"timestamp":{"format":"int32","type":"integer","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"005"}},"required":["timestamp","end_timestamp","severity","description","type"],"type":"object"},"CallHLSBroadcastingFailedEvent":{"description":"This event is sent when HLS broadcasting has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.hls_broadcasting_failed","description":"The type of event: \"call.hls_broadcasting_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallHLSBroadcastingFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallHLSBroadcastingStartedEvent":{"description":"This event is sent when HLS broadcasting has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"hls_playlist_url":{"type":"string","x-stream-index":"003"},"type":{"default":"call.hls_broadcasting_started","description":"The type of event: \"call.hls_broadcasting_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","hls_playlist_url"],"title":"CallHLSBroadcastingStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallHLSBroadcastingStoppedEvent":{"description":"This event is sent when HLS broadcasting has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.hls_broadcasting_stopped","description":"The type of event: \"call.hls_broadcasting_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallHLSBroadcastingStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallIngressResponse":{"properties":{"rtmp":{"$ref":"#/components/schemas/RTMPIngress","x-stream-index":"001"}},"required":["rtmp"],"title":"Call inputs","type":"object"},"CallLiveStartedEvent":{"description":"This event is sent when a call is started. Clients receiving this event should start the call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.live_started","description":"The type of event: \"call.live_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call"],"title":"CallLiveStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberAddedEvent":{"description":"This event is sent when one or more members are added to a call","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the members added to this call","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_added","description":"The type of event: \"call.member_added\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberAddedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberRemovedEvent":{"description":"This event is sent when one or more members are removed from a call","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the list of member IDs removed from the call","items":{"type":"string"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_removed","description":"The type of event: \"call.member_removed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberRemovedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberUpdatedEvent":{"description":"This event is sent when one or more members are updated","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"The list of members that were updated","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_updated","description":"The type of event: \"call.member_updated\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberUpdatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberUpdatedPermissionEvent":{"description":"This event is sent when one or more members get its role updated","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"capabilities_by_role":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"The capabilities by role for this call","title":"CapabilitiesByRole","type":"object","x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"The list of members that were updated","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"005"},"type":{"default":"call.member_updated_permission","description":"The type of event: \"call.member_added\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","capabilities_by_role","members"],"title":"CallMemberUpdatedPermissionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallNotificationEvent":{"description":"This event is sent to all call members to notify they are getting called","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"Call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"005"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.notification","description":"The type of event: \"call.notification\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that sent the call notification","title":"User","x-stream-index":"006"}},"required":["type","created_at","call_cid","session_id","call","members","user"],"title":"CallNotificationEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallParticipantResponse":{"properties":{"joined_at":{"format":"date-time","type":"string","x-stream-index":"004"},"role":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_session_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_session_id","role","joined_at"],"type":"object"},"CallReactionEvent":{"description":"This event is sent when a reaction is sent in a call, clients should use this to show the reaction in the call screen","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"reaction":{"$ref":"#/components/schemas/ReactionResponse","description":"the reaction object sent by the user on the call","title":"reaction","x-stream-index":"003"},"type":{"default":"call.reaction_new","description":"The type of event: \"call.reaction_new\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","reaction"],"title":"CallReactionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecording":{"description":"CallRecording represents a recording of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the recording.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the recording.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the recording.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the recording.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallRecordingFailedEvent":{"description":"This event is sent when call recording has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_failed","description":"The type of event: \"call.recording_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingReadyEvent":{"description":"This event is sent when call recording is ready","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"call_recording":{"$ref":"#/components/schemas/CallRecording","description":"The call recording object","title":"CallRecording","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_ready","description":"The type of event: \"call.recording_ready\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call_recording"],"title":"CallRecordingReadyEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingStartedEvent":{"description":"This event is sent when call recording has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_started","description":"The type of event: \"call.recording_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingStoppedEvent":{"description":"This event is sent when call recording has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_stopped","description":"The type of event: \"call.recording_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRejectedEvent":{"description":"This event is sent when a user rejects a notification to join a call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.rejected","description":"The type of event: \"call.rejected\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who rejected the call","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call","user"],"title":"CallRejectedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRequest":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"members":{"items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"type":"array","x-stream-index":"005"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"006"},"starts_at":{"format":"date-time","type":"string","x-stream-index":"007"},"team":{"type":"string","x-stream-index":"001"}},"type":"object"},"CallResponse":{"description":"Represents a call","properties":{"backstage":{"type":"boolean","x-stream-index":"015"},"blocked_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"017"},"cid":{"description":"The unique identifier for a call (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"004"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserResponse","description":"The user that created the call","title":"Created By","x-stream-index":"007"},"current_session_id":{"type":"string","x-stream-index":"005"},"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"008"},"egress":{"$ref":"#/components/schemas/EgressResponse","x-stream-index":"020"},"ended_at":{"description":"Date/time when the call ended","format":"date-time","title":"Ended At","type":"string","x-stream-index":"013"},"id":{"description":"Call ID","title":"ID","type":"string","x-stream-index":"003"},"ingress":{"$ref":"#/components/schemas/CallIngressResponse","x-stream-index":"018"},"recording":{"type":"boolean","x-stream-index":"011"},"session":{"$ref":"#/components/schemas/CallSessionResponse","x-stream-index":"019"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"016"},"starts_at":{"description":"Date/time when the call will start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"014"},"team":{"type":"string","x-stream-index":"006"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailResponse","x-stream-index":"021"},"transcribing":{"type":"boolean","x-stream-index":"012"},"type":{"description":"The type of call","title":"Type","type":"string","x-stream-index":"002"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"}},"required":["type","id","cid","current_session_id","created_by","custom","created_at","updated_at","recording","transcribing","backstage","settings","blocked_user_ids","ingress","egress"],"title":"Call","type":"object"},"CallRingEvent":{"description":"This event is sent to all call members to notify they are getting called","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"005"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"Call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"006"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.ring","description":"The type of event: \"call.notification\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that sent the call notification","title":"User","x-stream-index":"007"}},"required":["type","created_at","call_cid","session_id","call","members","user"],"title":"CallRingEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionEndedEvent":{"description":"This event is sent when a call session ends","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_ended","description":"The type of event: \"call.session_ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","call"],"title":"CallSessionEndedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionParticipantJoinedEvent":{"description":"This event is sent when a participant joins a call session","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"participant":{"$ref":"#/components/schemas/CallParticipantResponse","description":"The participant that joined the session","title":"Participant","x-stream-index":"004"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_participant_joined","description":"The type of event: \"call.session_participant_joined\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","participant"],"title":"CallSessionParticipantJoinedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionParticipantLeftEvent":{"description":"This event is sent when a participant leaves a call session","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"participant":{"$ref":"#/components/schemas/CallParticipantResponse","description":"The participant that left the session","title":"Participant","x-stream-index":"004"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_participant_left","description":"The type of event: \"call.session_participant_left\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","participant"],"title":"CallSessionParticipantLeftEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionResponse":{"properties":{"accepted_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"007"},"ended_at":{"format":"date-time","type":"string","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"live_ended_at":{"format":"date-time","type":"string","x-stream-index":"009"},"live_started_at":{"format":"date-time","type":"string","x-stream-index":"008"},"participants":{"items":{"$ref":"#/components/schemas/CallParticipantResponse"},"type":"array","x-stream-index":"004"},"participants_count_by_role":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"005"},"rejected_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"006"},"started_at":{"format":"date-time","type":"string","x-stream-index":"002"}},"required":["id","participants","participants_count_by_role","rejected_by","accepted_by"],"type":"object"},"CallSessionStartedEvent":{"description":"This event is sent when a call session starts","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_started","description":"The type of event: \"call.session_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","call"],"title":"CallSessionStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSettings":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettings","x-stream-index":"006"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"007"},"recording":{"$ref":"#/components/schemas/RecordSettings","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"009"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"004"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"003"}},"type":"object"},"CallSettingsRequest":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettingsRequest","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettingsRequest","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsRequest","x-stream-index":"009"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettingsRequest","x-stream-index":"003"},"recording":{"$ref":"#/components/schemas/RecordSettingsRequest","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettingsRequest","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettingsRequest","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettingsRequest","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettingsRequest","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettingsRequest","x-stream-index":"004"}},"type":"object"},"CallSettingsResponse":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsResponse","x-stream-index":"003"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"004"},"recording":{"$ref":"#/components/schemas/RecordSettingsResponse","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"009"}},"required":["audio","backstage","broadcasting","geofencing","recording","ring","screensharing","transcription","video","thumbnails"],"type":"object"},"CallStateResponseFields":{"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"members":{"description":"List of call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"002"},"membership":{"$ref":"#/components/schemas/MemberResponse","description":"Current user membership object","title":"Membership","x-stream-index":"003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"004"}},"required":["call","members","own_capabilities"],"type":"object"},"CallStatsReportSummaryResponse":{"properties":{"call_cid":{"type":"string","x-stream-index":"001"},"call_session_id":{"type":"string","x-stream-index":"002"},"call_status":{"type":"string","x-stream-index":"004"},"first_stats_time":{"format":"date-time","type":"string","x-stream-index":"003"}},"required":["call_cid","call_session_id","first_stats_time","call_status"],"type":"object"},"CallTimeline":{"properties":{"events":{"items":{"$ref":"#/components/schemas/CallEvent"},"type":"array","x-stream-index":"001"}},"required":["events"],"type":"object"},"CallTranscription":{"description":"CallTranscription represents a transcription of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the transcription.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the transcription.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the transcription.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the transcription.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallTranscriptionFailedEvent":{"description":"This event is sent when call transcription has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_failed","description":"The type of event: \"call.transcription_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionReadyEvent":{"description":"This event is sent when call transcription is ready","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"call_transcription":{"$ref":"#/components/schemas/CallTranscription","description":"The call transcription object","title":"CallTranscription","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_ready","description":"The type of event: \"call.transcription_ready\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call_transcription"],"title":"CallTranscriptionReadyEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionStartedEvent":{"description":"This event is sent when call transcription has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_started","description":"The type of event: \"call.transcription_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionStoppedEvent":{"description":"This event is sent when call transcription has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_stopped","description":"The type of event: \"call.transcription_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallType":{"nullable":true,"properties":{"AppPK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"CreatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"005"},"ExternalStorage":{"type":"string","writeOnly":true,"x-stream-index":"009"},"Name":{"type":"string","writeOnly":true,"x-stream-index":"004"},"NotificationSettings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"008"},"PK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"002"},"Settings":{"$ref":"#/components/schemas/CallSettings","x-stream-index":"007"},"UpdatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"006"}},"required":["PK","AppPK","Name","CreatedAt","UpdatedAt","ExternalStorage"],"type":"object"},"CallUpdatedEvent":{"description":"This event is sent when a call is updated, clients should use this update the local state of the call. \nThis event also contains the capabilities by role for the call, clients should update the own_capability for the current.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"capabilities_by_role":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"The capabilities by role for this call","title":"CapabilitiesByRole","type":"object","x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.updated","description":"The type of event: \"call.ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","capabilities_by_role"],"title":"CallUpdatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallUserMuted":{"description":"This event is sent when a call member is muted","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"from_user_id":{"type":"string","x-stream-index":"003"},"muted_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"type":{"default":"call.user_muted","description":"The type of event: \"call.user_muted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","from_user_id","muted_user_ids"],"title":"CallUserMuted","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CastPollVoteRequest":{"nullable":true,"properties":{"poll_id":{"maxLength":255,"type":"string","x-stream-index":"002"},"vote":{"$ref":"#/components/schemas/VoteDataRequest","x-stream-index":"003"}},"required":["poll_id"],"type":"object"},"Channel":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"028"},"auto_translation_language":{"type":"string","x-stream-index":"029"},"cid":{"type":"string","x-stream-index":"003"},"config":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"025"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"026"},"cooldown":{"format":"int32","type":"integer","x-stream-index":"030"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"008"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"disabled":{"type":"boolean","x-stream-index":"017"},"frozen":{"type":"boolean","x-stream-index":"016"},"id":{"type":"string","x-stream-index":"004"},"invites":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"021"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"006"},"member_count":{"format":"int32","type":"integer","x-stream-index":"020"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"019"},"team":{"type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"015"},"type":{"type":"string","x-stream-index":"005"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"}},"required":["cid","id","type","created_at","updated_at","frozen","disabled","Custom","auto_translation_language"],"type":"object"},"ChannelConfig":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.025"},"blocklist":{"type":"string","x-stream-index":"001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.023"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"003"},"connect_events":{"type":"boolean","x-stream-index":"001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.012"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.018"},"message_retention":{"type":"string","x-stream-index":"001.017"},"mutes":{"type":"boolean","x-stream-index":"001.009"},"name":{"type":"string","x-stream-index":"001.001"},"polls":{"type":"boolean","x-stream-index":"001.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.013"},"quotes":{"type":"boolean","x-stream-index":"001.008"},"reactions":{"type":"boolean","x-stream-index":"001.006"},"read_events":{"type":"boolean","x-stream-index":"001.003"},"reminders":{"type":"boolean","x-stream-index":"001.014"},"replies":{"type":"boolean","x-stream-index":"001.007"},"search":{"type":"boolean","x-stream-index":"001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"002.004"},"uploads":{"type":"boolean","x-stream-index":"001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands"],"type":"object"},"ChannelConfigRequest":{"description":"Channel configuration overrides","properties":{"blocklist":{"type":"string","x-stream-index":"008"},"blocklist_behavior":{"enum":["flag","block"],"type":"string","x-stream-index":"009"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"010","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"max_message_length":{"description":"Overrides max message length","format":"int32","maximum":20000,"title":"Max Message Length","type":"integer","x-stream-index":"007"},"quotes":{"description":"Enables message quotes","title":"Quotes","type":"boolean","x-stream-index":"004"},"reactions":{"description":"Enables or disables reactions","title":"Reactions","type":"boolean","x-stream-index":"002"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"003"},"typing_events":{"description":"Enables or disables typing events","title":"Typing events","type":"boolean","x-stream-index":"001"},"uploads":{"description":"Enables or disables file uploads","title":"Uploads","type":"boolean","x-stream-index":"005"},"url_enrichment":{"description":"Enables or disables URL enrichment","title":"URL Enrichment","type":"boolean","x-stream-index":"006"}},"type":"object"},"ChannelConfigWithInfo":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.002.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.002.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.002.025"},"blocklist":{"type":"string","x-stream-index":"001.002.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.002.023"},"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.001.003"},"custom_events":{"type":"boolean","x-stream-index":"001.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"002","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.002.018"},"message_retention":{"type":"string","x-stream-index":"001.002.017"},"mutes":{"type":"boolean","x-stream-index":"001.002.009"},"name":{"type":"string","x-stream-index":"001.002.001"},"polls":{"type":"boolean","x-stream-index":"001.002.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.002.013"},"quotes":{"type":"boolean","x-stream-index":"001.002.008"},"reactions":{"type":"boolean","x-stream-index":"001.002.006"},"read_events":{"type":"boolean","x-stream-index":"001.002.003"},"reminders":{"type":"boolean","x-stream-index":"001.002.014"},"replies":{"type":"boolean","x-stream-index":"001.002.007"},"search":{"type":"boolean","x-stream-index":"001.002.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.001.004"},"uploads":{"type":"boolean","x-stream-index":"001.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.002.011"}},"required":["created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelCreatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.created","type":"string","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"ChannelCreatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelDeletedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"team":{"type":"string","x-stream-index":"001.001"},"type":{"default":"channel.deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelFrozenEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.frozen","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelFrozenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelGetOrCreateRequest":{"nullable":true,"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"004"},"hide_for_creator":{"description":"Whether this channel will be hidden for the user who created the channel or not","title":"Hide for creator","type":"boolean","x-stream-index":"008"},"members":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"011"},"messages":{"$ref":"#/components/schemas/MessagePaginationParamsRequest","x-stream-index":"010"},"presence":{"description":"Fetch user presence info","title":"Presence","type":"boolean","x-stream-index":"007"},"state":{"description":"Refresh channel state","title":"State","type":"boolean","x-stream-index":"006"},"thread_unread_counts":{"type":"boolean","x-stream-index":"009"},"watch":{"description":"Start watching the channel","title":"Watch","type":"boolean","x-stream-index":"005"},"watchers":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"012"}},"type":"object"},"ChannelHiddenEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"clear_history":{"type":"boolean","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"type":{"default":"channel.hidden","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["clear_history","cid","channel_id","channel_type","type","created_at"],"title":"ChannelHiddenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelKickedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.kicked","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelKickedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelMember":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"required":["created_at","updated_at","banned","shadow_banned","channel_role","notifications_muted"],"title":"Channel member","type":"object"},"ChannelMemberRequest":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"title":"Channel member","type":"object"},"ChannelMute":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"007"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"ChannelRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"auto_translation_enabled":{"description":"Enable or disable auto translation","title":"Auto translation","type":"boolean","x-stream-index":"007"},"auto_translation_language":{"description":"Switch auto translation language","title":"Auto translation language","type":"string","x-stream-index":"008"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfigRequest","x-stream-index":"026"},"disabled":{"type":"boolean","x-stream-index":"016"},"frozen":{"description":"Freeze or unfreeze the channel","title":"Frozen","type":"boolean","x-stream-index":"015"},"members":{"items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"type":"array","x-stream-index":"020"},"team":{"description":"Team the channel belongs to (if multi-tenant mode is enabled)","title":"Team","type":"string","x-stream-index":"006"},"truncated_by_id":{"type":"string","x-stream-index":"012"}},"type":"object"},"ChannelResponse":{"description":"Represents channel in chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"029"},"auto_translation_enabled":{"description":"Whether auto translation is enabled or not","title":"Auto translation","type":"boolean","x-stream-index":"021"},"auto_translation_language":{"description":"Language to translate to when auto translation is active","title":"Auto translation language","type":"string","x-stream-index":"022"},"cid":{"description":"Channel CID (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"005"},"config":{"$ref":"#/components/schemas/ChannelConfigWithInfo","description":"Channel configuration","title":"Config","x-stream-index":"017"},"cooldown":{"description":"Cooldown period after sending each message","format":"int32","title":"Cooldown","type":"integer","x-stream-index":"024"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"008"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Creator of the channel","title":"Created by","x-stream-index":"011"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"010"},"disabled":{"type":"boolean","x-stream-index":"013"},"frozen":{"description":"Whether channel is frozen or not","title":"Frozen","type":"boolean","x-stream-index":"012"},"hidden":{"description":"Whether this channel is hidden by current user or not","title":"Hidden","type":"boolean","x-stream-index":"026"},"hide_messages_before":{"description":"Date since when the message history is accessible","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"023"},"id":{"description":"Channel unique ID","title":"ID","type":"string","x-stream-index":"003"},"last_message_at":{"description":"Date of the last message sent","format":"date-time","title":"Last message at","type":"string","x-stream-index":"006"},"member_count":{"description":"Number of members in the channel","format":"int32","title":"Member count","type":"integer","x-stream-index":"015"},"members":{"description":"List of channel members (max 100)","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"014"},"mute_expires_at":{"description":"Date of mute expiration","format":"date-time","title":"Mute expires at","type":"string","x-stream-index":"019"},"muted":{"description":"Whether this channel is muted or not","title":"Muted","type":"boolean","x-stream-index":"018"},"own_capabilities":{"description":"List of channel capabilities of authenticated user","items":{"type":"string"},"title":"Own Capabilities","type":"array","x-stream-index":"025"},"team":{"description":"Team the channel belongs to (multi-tenant only)","title":"Team","type":"string","x-stream-index":"020"},"truncated_at":{"description":"Date of the latest truncation of the channel","format":"date-time","title":"Truncated At","type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"028"},"type":{"description":"Type of the channel","title":"Type","type":"string","x-stream-docs-page-id":"channel_features","x-stream-index":"004"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"009"}},"required":["id","type","cid","frozen","disabled","Custom"],"title":"Channel","type":"object"},"ChannelStateResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"hidden":{"type":"boolean","x-stream-index":"001.010"},"hide_messages_before":{"format":"date-time","type":"string","x-stream-index":"001.011"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"001.007"},"membership":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.008"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.002"},"pending_messages":{"items":{"$ref":"#/components/schemas/PendingMessage"},"type":"array","x-stream-index":"001.012"},"pinned_messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.003"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"001.006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"001.009"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.004"},"watchers":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.005"}},"required":["messages","pinned_messages","members","threads","duration"],"type":"object"},"ChannelStateResponseFields":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"hidden":{"description":"Whether this channel is hidden or not","title":"Hidden","type":"boolean","x-stream-index":"010"},"hide_messages_before":{"description":"Messages before this date are hidden from the user","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"011"},"members":{"description":"List of channel members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"007"},"membership":{"$ref":"#/components/schemas/ChannelMember","description":"Current user membership object","title":"Membership","x-stream-index":"008"},"messages":{"description":"List of channel messages","items":{"$ref":"#/components/schemas/Message"},"title":"Message","type":"array","x-stream-index":"002"},"pending_messages":{"description":"Pending messages that this user has sent","items":{"$ref":"#/components/schemas/PendingMessage"},"title":"Pending messages","type":"array","x-stream-index":"012"},"pinned_messages":{"description":"List of pinned messages in the channel","items":{"$ref":"#/components/schemas/Message"},"title":"Pinned messages","type":"array","x-stream-docs-page-id":"pinned_messages","x-stream-index":"003"},"read":{"description":"List of read states","items":{"$ref":"#/components/schemas/Read"},"title":"Read","type":"array","x-stream-index":"006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"009"},"watcher_count":{"description":"Number of channel watchers","format":"int32","title":"Watcher count","type":"integer","x-stream-index":"004"},"watchers":{"description":"List of user who is watching the channel","items":{"$ref":"#/components/schemas/UserObject"},"title":"Watchers","type":"array","x-stream-index":"005"}},"required":["messages","pinned_messages","members","threads"],"type":"object"},"ChannelStopWatchingRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"001.003"}},"type":"object"},"ChannelTruncatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.004"},"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"channel.truncated","type":"string","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ChannelTruncatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelUnFrozenEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"channel.unfrozen","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelUnFrozenEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelUpdatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"004.004"},"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"channel.updated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"ChannelUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelVisibleEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"type":{"default":"channel.visible","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ChannelVisibleEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ChannelsResponse":{"nullable":true,"properties":{"channels":{"description":"List of channels","items":{"$ref":"#/components/schemas/ChannelStateResponseFields"},"title":"Channels","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channels","duration"],"title":"Channels list","type":"object"},"ClosedCaptionEvent":{"description":"This event is sent when closed captions are being sent in a call, clients should use this to show the closed captions in the call screen","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"closed_caption":{"$ref":"#/components/schemas/CallClosedCaption","description":"The closed caption object","title":"CallClosedCaption","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.closed_caption","description":"The type of event: \"call.closed_caption\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","closed_caption"],"title":"ClosedCaptionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CollectUserFeedbackRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"009"},"rating":{"format":"int32","maximum":5,"minimum":1,"type":"integer","x-stream-index":"007"},"reason":{"maxLength":1000,"type":"string","x-stream-index":"008"},"sdk":{"maxLength":50,"type":"string","x-stream-index":"005"},"sdk_version":{"maxLength":50,"type":"string","x-stream-index":"006"},"user_session_id":{"maxLength":50,"type":"string","x-stream-index":"004"}},"required":["user_session_id","sdk","sdk_version"],"type":"object"},"CollectUserFeedbackResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Command":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","title":"Arguments","type":"string","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"001"},"description":{"description":"Description, shown in commands auto-completion","title":"Description","type":"string","x-stream-index":"005"},"name":{"description":"Unique command name","title":"Name","type":"string","x-stream-index":"004"},"set":{"description":"Set name used for grouping commands","title":"Set","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"002"}},"required":["name","description","args","set"],"title":"Command","type":"object"},"Config":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConnectRequest":{"properties":{"device":{"$ref":"#/components/schemas/DeviceFields","x-stream-index":"001.002"},"user_details":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["user_details"],"type":"object"},"ConnectedEvent":{"description":"This event is sent when the WS connection is established and authenticated, this event contains the full user object as it is stored on the server","properties":{"connection_id":{"description":"The connection_id for this client","title":"Connection ID","type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"me":{"$ref":"#/components/schemas/OwnUserResponse","description":"The full user object as it is stored on the server","title":"OwnUserResponse","x-stream-index":"003"},"type":{"default":"connection.ok","description":"The type of event: \"connection.ok\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","connection_id","me"],"title":"ConnectedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ConnectionErrorEvent":{"description":"This event is sent when the WS connection fails","properties":{"connection_id":{"type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"error":{"$ref":"#/components/schemas/APIError","description":"The error that caused the connection to fail","title":"Error","x-stream-index":"003"},"type":{"default":"connection.error","description":"The type of event: \"connection.ok\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","connection_id","error"],"title":"ConnectionErrorEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Coordinates":{"properties":{"latitude":{"format":"float","type":"number","x-stream-index":"001"},"longitude":{"format":"float","type":"number","x-stream-index":"002"}},"required":["latitude","longitude"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreatePollOptionRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"position":{"format":"int32","type":"integer","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"}},"required":["poll_id","text"],"type":"object"},"CreatePollRequest":{"description":"Contains all information needed to create a new poll","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"011"},"allow_answers":{"description":"Indicates whether users can suggest user defined answers","title":"Allow answers","type":"boolean","x-stream-index":"009"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"008"},"description":{"description":"A description of the poll","title":"Description","type":"string","x-stream-index":"003"},"enforce_unique_vote":{"description":"Indicates whether users can cast multiple votes","title":"Multiple choice","type":"boolean","x-stream-index":"006"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"is_closed":{"description":"Indicates whether the poll is open for voting","title":"Is closed","type":"boolean","x-stream-index":"010"},"max_votes_allowed":{"description":"Indicates the maximum amount of votes a user can cast","format":"int32","maximum":10,"title":"Maximum votes allowed","type":"integer","x-stream-index":"007"},"name":{"description":"The name of the poll","title":"Name","type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest_1"},"maximum":100,"type":"array","x-stream-index":"004"},"voting_visibility":{"enum":["anonymous","public"],"type":"string","x-stream-index":"005"}},"required":["name"],"title":"Create Poll Request","type":"object"},"Credentials":{"properties":{"ice_servers":{"items":{"$ref":"#/components/schemas/ICEServer"},"type":"array","x-stream-index":"003"},"server":{"$ref":"#/components/schemas/SFUResponse","x-stream-index":"001"},"token":{"type":"string","x-stream-index":"002"}},"required":["server","token","ice_servers"],"type":"object"},"DataDogInfo":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"required":["api_key","site","enabled"],"type":"object"},"DeleteChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteChannelsRequest":{"nullable":true,"properties":{"cids":{"description":"All channels that should be deleted","items":{"type":"string"},"maximum":100,"minimum":1,"title":"Channels CID","type":"array","x-stream-index":"001"},"hard_delete":{"description":"Specify if channels and all ressources should be hard deleted","title":"Hard delete","type":"boolean","x-stream-index":"002"}},"type":"object"},"DeleteChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"result":{"additionalProperties":{"$ref":"#/components/schemas/DeleteChannelsResult"},"type":"object","x-stream-index":"001"},"task_id":{"type":"string","x-stream-index":"002"}},"required":["duration"],"type":"object"},"DeleteChannelsResult":{"nullable":true,"properties":{"error":{"type":"string","x-stream-index":"003"},"status":{"type":"string","x-stream-index":"002"}},"required":["status"],"type":"object"},"Device":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"disabled":{"description":"Whether device is disabled or not","title":"Disabled","type":"boolean","x-stream-index":"005"},"disabled_reason":{"description":"Reason explaining why device had been disabled","title":"Reason","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"003"},"push_provider":{"type":"string","x-stream-index":"001"},"push_provider_name":{"type":"string","x-stream-index":"002"},"voip":{"description":"When true the token is for Apple VoIP push notifications","title":"Voip","type":"boolean","x-stream-index":"007"}},"required":["push_provider","id","created_at"],"title":"Device","type":"object"},"DeviceFields":{"properties":{"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"003"},"voip":{"type":"boolean","x-stream-index":"005"}},"required":["push_provider","id"],"type":"object"},"EdgeResponse":{"properties":{"continent_code":{"type":"string","x-stream-index":"007.003"},"country_iso_code":{"type":"string","x-stream-index":"007.002"},"green":{"format":"int32","type":"integer","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"latency_test_url":{"type":"string","x-stream-index":"002"},"latitude":{"format":"float","type":"number","x-stream-index":"006.001"},"longitude":{"format":"float","type":"number","x-stream-index":"006.002"},"red":{"format":"int32","type":"integer","x-stream-index":"005"},"subdivision_iso_code":{"type":"string","x-stream-index":"007.001"},"yellow":{"format":"int32","type":"integer","x-stream-index":"004"}},"required":["id","latency_test_url","green","yellow","red","latitude","longitude","subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"EgressHLSResponse":{"properties":{"playlist_url":{"type":"string","x-stream-index":"001"}},"required":["playlist_url"],"type":"object"},"EgressRTMPResponse":{"properties":{"name":{"type":"string","x-stream-index":"001"},"stream_key":{"type":"string","x-stream-index":"003"},"url":{"type":"string","x-stream-index":"002"}},"required":["name","url","stream_key"],"type":"object"},"EgressResponse":{"properties":{"broadcasting":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/EgressHLSResponse","x-stream-index":"002"},"rtmps":{"items":{"$ref":"#/components/schemas/EgressRTMPResponse"},"type":"array","x-stream-index":"003"}},"required":["broadcasting","rtmps"],"type":"object"},"EndCallRequest":{"nullable":true,"type":"object"},"EndCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventRequest":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"001"}},"required":["type"],"type":"object"},"EventResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/WSEvent","x-stream-index":"001"}},"required":["event","duration"],"type":"object"},"Field":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"required":["title","value","short"],"type":"object"},"FieldRequest":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"type":"object"},"FileDeleteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"FileUploadConfig":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"required":["allowed_file_extensions","blocked_file_extensions","allowed_mime_types","blocked_mime_types","size_limit"],"type":"object"},"FileUploadRequest":{"nullable":true,"properties":{"file":{"description":"file field","title":"File","type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","description":"user for the request **server side only**","title":"User","x-stream-index":"003"}},"type":"object"},"FileUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"003"}},"required":["duration"],"type":"object"},"FirebaseConfigFields":{"properties":{"apn_template":{"type":"string","x-stream-index":"004"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"003"},"enabled":{"type":"boolean","x-stream-index":"001"},"notification_template":{"type":"string","x-stream-index":"002"},"server_key":{"type":"string","x-stream-index":"005"}},"required":["enabled","notification_template","data_template","apn_template"],"type":"object"},"Flag":{"description":"Contains information about flagged user or message","properties":{"approved_at":{"description":"Date of the approval","format":"date-time","title":"Approved at","type":"string","x-stream-index":"015"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"created_by_automod":{"type":"boolean","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"022"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"021"},"reason":{"type":"string","x-stream-index":"020"},"rejected_at":{"description":"Date of the rejection","format":"date-time","title":"Rejected at","type":"string","x-stream-index":"016"},"reviewed_at":{"description":"Date of the review","format":"date-time","title":"Reviewed at","type":"string","x-stream-index":"013"},"target_message":{"$ref":"#/components/schemas/Message","x-stream-index":"008"},"target_message_id":{"description":"ID of flagged message","title":"Target Message ID","type":"string","x-stream-index":"007"},"target_user":{"$ref":"#/components/schemas/UserObject","description":"Flagged user","title":"User","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","description":"User who flagged a message or a user","title":"User","x-stream-index":"006"}},"required":["created_by_automod","created_at","updated_at"],"title":"Flag","type":"object"},"FlagDetails":{"properties":{"Extra":{"type":"object","writeOnly":true,"x-stream-index":"002"},"automod":{"$ref":"#/components/schemas/AutomodDetails","x-stream-index":"001"},"original_text":{"type":"string","x-stream-index":"003"}},"required":["Extra","original_text"],"type":"object"},"FlagFeedback":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"labels":{"items":{"$ref":"#/components/schemas/Label"},"type":"array","x-stream-index":"006"},"message_id":{"type":"string","x-stream-index":"004"}},"required":["message_id","created_at","labels"],"type":"object"},"FlagMessageDetails":{"properties":{"pin_changed":{"type":"boolean","x-stream-index":"002"},"should_enrich":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"004"},"updated_by_id":{"type":"string","x-stream-index":"001"}},"type":"object"},"FlagRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"004"},"reason":{"maxLength":255,"type":"string","x-stream-index":"003"},"target_message_id":{"description":"ID of the message when reporting a message","title":"Target Message ID","type":"string","x-stream-index":"001"}},"type":"object"},"FlagResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flag":{"$ref":"#/components/schemas/Flag","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GeofenceResponse":{"nullable":true,"properties":{"country_codes":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"}},"required":["name"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GeofenceSettingsRequest":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"type":"object"},"GeolocationResult":{"properties":{"AccuracyRadius":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"continent_code":{"type":"string","x-stream-index":"002.003"},"country_iso_code":{"type":"string","x-stream-index":"002.002"},"latitude":{"format":"float","type":"number","x-stream-index":"001.001"},"longitude":{"format":"float","type":"number","x-stream-index":"001.002"},"subdivision_iso_code":{"type":"string","x-stream-index":"002.001"}},"required":["latitude","longitude","subdivision_iso_code","country_iso_code","continent_code","AccuracyRadius"],"type":"object"},"GetApplicationResponse":{"nullable":true,"properties":{"app":{"$ref":"#/components/schemas/App","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["app","duration"],"type":"object"},"GetCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"type":"object"},"GetCallStatsResponse":{"nullable":true,"properties":{"average_jitter":{"format":"float","type":"number","x-stream-index":"005"},"average_latency":{"format":"float","type":"number","x-stream-index":"004"},"call_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"002"},"call_timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"014"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"max_jitter":{"format":"float","type":"number","x-stream-index":"007"},"max_latency":{"format":"float","type":"number","x-stream-index":"006"},"max_participants":{"format":"int32","type":"integer","x-stream-index":"008"},"participant_report":{"additionalProperties":{"$ref":"#/components/schemas/UserStats"},"type":"object","x-stream-index":"015"},"publishing_participants":{"format":"int32","type":"integer","x-stream-index":"009"},"quality_score":{"format":"int32","type":"integer","x-stream-index":"003"},"sfu_count":{"format":"int32","type":"integer","x-stream-index":"010"},"sfus":{"items":{"$ref":"#/components/schemas/SFULocationResponse"},"type":"array","x-stream-index":"013"},"total_freezes_duration":{"format":"float","type":"number","x-stream-index":"012"},"total_quality_limitation_duration":{"format":"float","type":"number","x-stream-index":"011"}},"required":["duration","call_duration_seconds","quality_score","average_latency","average_jitter","max_latency","max_jitter","max_participants","publishing_participants","sfu_count","total_quality_limitation_duration","total_freezes_duration","sfus","participant_report"],"type":"object"},"GetEdgesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"edges":{"items":{"$ref":"#/components/schemas/EdgeResponse"},"type":"array","x-stream-index":"001"}},"required":["edges","duration"],"type":"object"},"GetManyMessagesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetOGResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.020"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"001.015"},"asset_url":{"description":"URL of detected video or audio","title":"Image URL","type":"string","x-stream-index":"001.017"},"author_icon":{"type":"string","x-stream-index":"001.007"},"author_link":{"description":"og:site","title":"Author Link","type":"string","x-stream-index":"001.006"},"author_name":{"description":"og:site_name","title":"Author Name","type":"string","x-stream-index":"001.005"},"color":{"type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"002.001"},"fallback":{"type":"string","x-stream-index":"001.002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"001.016"},"footer":{"type":"string","x-stream-index":"001.013"},"footer_icon":{"type":"string","x-stream-index":"001.014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"001.021"},"image_url":{"description":"URL of detected image","title":"Image URL","type":"string","x-stream-index":"001.011"},"og_scrape_url":{"description":"extracted url from the text","title":"OG Scrape URL","type":"string","x-stream-index":"001.022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"001.024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"001.023"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001.019"},"poll_id":{"type":"string","x-stream-index":"001.018"},"pretext":{"type":"string","x-stream-index":"001.004"},"text":{"description":"og:description","title":"Text","type":"string","x-stream-index":"001.010"},"thumb_url":{"description":"URL of detected thumb image","title":"Image URL","type":"string","x-stream-index":"001.012"},"title":{"description":"og:title","title":"Title","type":"string","x-stream-index":"001.008"},"title_link":{"description":"og:url","title":"Title Link","type":"string","x-stream-index":"001.009"},"type":{"description":"Attachment type, could be empty, image, audio or video","title":"Type","type":"string","x-stream-index":"001.001"}},"required":["Custom","duration"],"title":"Get OG Attachment","type":"object","x-stream-docs-page-id":"og"},"GetOrCreateCallRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/CallRequest","title":"ReadOnlyData","x-stream-index":"003"},"members_limit":{"format":"int32","maximum":100,"type":"integer","x-stream-index":"006"},"notify":{"description":"if provided it sends a notification event to the members for this call","title":"Notify","type":"boolean","x-stream-index":"005"},"ring":{"description":"if provided it sends a ring event to the members for this call","title":"Ring","type":"boolean","x-stream-index":"004"}},"type":"object"},"GetOrCreateCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"type":"boolean","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","created","duration"],"type":"object"},"GetReactionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"reactions":{"description":"List of reactions","items":{"$ref":"#/components/schemas/Reaction"},"title":"Reactions","type":"array","x-stream-index":"001"}},"required":["reactions","duration"],"type":"object"},"GetRepliesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetThreadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadStateResponse","description":"Enriched thread state","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"GoLiveRequest":{"nullable":true,"properties":{"recording_storage_name":{"type":"string","x-stream-index":"005"},"start_hls":{"type":"boolean","x-stream-index":"003"},"start_recording":{"type":"boolean","x-stream-index":"004"},"start_transcription":{"type":"boolean","x-stream-index":"007"},"transcription_storage_name":{"type":"string","x-stream-index":"006"}},"type":"object"},"GoLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"GuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"GuestResponse":{"nullable":true,"properties":{"access_token":{"description":"Authentication token to use for guest user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","description":"Created user object","title":"User","x-stream-index":"001"}},"required":["access_token","duration"],"type":"object"},"HLSSettings":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks"],"type":"object"},"HLSSettingsRequest":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"quality_tracks":{"items":{"type":"string"},"maximum":3,"minimum":1,"type":"array","x-stream-index":"003"}},"type":"object"},"HLSSettingsResponse":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks","layout"],"type":"object"},"HealthCheckEvent":{"properties":{"cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"002"},"type":{"default":"health.check","type":"string","x-stream-index":"003.001"}},"required":["cid","type","created_at"],"title":"HealthCheckEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"HideChannelRequest":{"nullable":true,"properties":{"clear_history":{"description":"Whether to clear message history of the channel or not","title":"Clear history","type":"boolean","x-stream-index":"001"}},"type":"object"},"HideChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"HuaweiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"id":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"ICEServer":{"properties":{"password":{"type":"string","x-stream-index":"003"},"urls":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"username":{"type":"string","x-stream-index":"002"}},"required":["urls","username","password"],"type":"object"},"ImageData":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"required":["url","width","height","size","frames"],"type":"object"},"ImageDataRequest":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageSize":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"required":["crop","resize","height","width"],"title":"Image size configuration","type":"object"},"ImageSizeRequest":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"title":"Image size configuration","type":"object"},"ImageUploadRequest":{"nullable":true,"properties":{"file":{"type":"string","x-stream-index":"001.002"},"upload_sizes":{"description":"field with JSON-encoded array of image size configurations","items":{"$ref":"#/components/schemas/ImageSizeRequest"},"title":"Upload sizes","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","x-stream-index":"001.003"}},"type":"object"},"ImageUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"001.002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"001.003"},"upload_sizes":{"items":{"$ref":"#/components/schemas/ImageSize"},"type":"array","x-stream-index":"002"}},"required":["duration"],"type":"object"},"Images":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageData","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageData","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageData","x-stream-index":"001"}},"required":["original","fixed_height","fixed_height_still","fixed_height_downsampled","fixed_width","fixed_width_still","fixed_width_downsampled"],"type":"object"},"ImagesRequest":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"001"}},"type":"object"},"JoinCallRequest":{"nullable":true,"properties":{"create":{"description":"if true the call will be created if it doesn't exist","title":"Create","type":"boolean","x-stream-index":"002"},"data":{"$ref":"#/components/schemas/CallRequest","x-stream-index":"003"},"location":{"title":"Location","type":"string","x-stream-index":"008"},"members_limit":{"format":"int32","maximum":100,"title":"The amount of members that should be returned","type":"integer","x-stream-index":"006"},"migrating_from":{"description":"If the participant is migrating from another SFU, then this is the ID of the previous SFU","title":"MigratingFrom","type":"string","x-stream-index":"009"},"notify":{"type":"boolean","x-stream-index":"005"},"ring":{"description":"if true and the call is created, the notification will include ring=true","title":"Ring","type":"boolean","x-stream-index":"004"}},"required":["location"],"type":"object"},"JoinCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"title":"Created","type":"boolean","x-stream-index":"002"},"credentials":{"$ref":"#/components/schemas/Credentials","title":"Credentials","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"005.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"},"stats_options":{"$ref":"#/components/schemas/StatsOptions","x-stream-index":"004"}},"required":["call","members","own_capabilities","created","credentials","stats_options","duration"],"type":"object"},"Label":{"properties":{"harm_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"phrase_list_ids":{"items":{"format":"int32","type":"integer"},"type":"array","x-stream-index":"002"}},"required":["name"],"type":"object"},"LabelThresholds":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListRecordingsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"recordings":{"items":{"$ref":"#/components/schemas/CallRecording"},"type":"array","x-stream-index":"002"}},"required":["duration","recordings"],"type":"object"},"ListTranscriptionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"transcriptions":{"items":{"$ref":"#/components/schemas/CallTranscription"},"type":"array","x-stream-index":"002"}},"required":["duration","transcriptions"],"type":"object"},"Location":{"properties":{"continent_code":{"type":"string","x-stream-index":"003"},"country_iso_code":{"type":"string","x-stream-index":"002"},"subdivision_iso_code":{"type":"string","x-stream-index":"001"}},"required":["subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"MarkChannelsReadRequest":{"nullable":true,"type":"object"},"MarkReadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message that is considered last read by client","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Optional Thread ID to specifically mark a given thread as read","title":"Thread ID","type":"string","x-stream-index":"004"}},"type":"object"},"MarkReadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/MessageReadEvent","description":"Mark read event","title":"Event","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MarkUnreadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message from where the channel is marked unread","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Mark a thread unread, specify both the thread and message id","title":"Thread ID","type":"string","x-stream-index":"003"}},"required":["message_id","thread_id"],"type":"object"},"MemberAddedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"member.added","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberAddedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MemberRemovedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"type":{"default":"member.removed","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberRemovedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MemberRequest":{"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"role":{"title":"Role","type":"string","x-stream-index":"002"},"user_id":{"minLength":1,"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"MemberResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"005"},"custom":{"description":"Custom member response data","title":"Custom","type":"object","x-stream-index":"004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"007"},"role":{"title":"Role","type":"string","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_id","custom","created_at","updated_at"],"type":"object"},"MemberUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"member.updated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MemberUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MembersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"members":{"description":"List of found members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"001"}},"required":["members","duration"],"type":"object"},"Message":{"description":"Represents any chat message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"031"},"attachments":{"description":"Array of message attachments","items":{"$ref":"#/components/schemas/Attachment"},"title":"Message attachments","type":"array","x-stream-docs-page-id":"message_format#attachment-format","x-stream-index":"011"},"before_message_send_failed":{"description":"Whether `before_message_send webhook` failed or not. Field is only accessible in push webhook","title":"Before Message Send Failed","type":"boolean","x-stream-docs-page-id":"before_message_send_webhook","x-stream-index":"043"},"cid":{"description":"Channel unique identifier in \u003ctype\u003e:\u003cid\u003e format","title":"Channel CID","type":"string","x-stream-index":"026"},"command":{"description":"Contains provided slash command","title":"Command","type":"string","x-stream-docs-page-id":"custom_commands_webhook","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"028"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"021"},"html":{"description":"Contains HTML markup of the message. Can only be set when using server-side API","title":"HTML content","type":"string","x-stream-index":"007"},"i18n":{"additionalProperties":{"type":"string"},"description":"Object with translations. Key `language` contains the original language key. Other keys contain translations","title":"Internationalization info","type":"object","x-stream-docs-page-id":"translation","x-stream-index":"041"},"id":{"description":"Message ID is unique string identifier of the message","title":"ID","type":"string","x-stream-index":"002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Contains image moderation information","title":"Image moderation labels","type":"object","x-stream-index":"037"},"latest_reactions":{"description":"List of 10 latest reactions to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Latest reactions","type":"array","x-stream-index":"012"},"mentioned_users":{"description":"List of mentioned users","items":{"$ref":"#/components/schemas/UserObject"},"title":"Mentioned Users","type":"array","x-stream-index":"040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"049"},"mml":{"description":"Should be empty if `text` is provided. Can only be set when using server-side API","title":"Messaging Markup Language","type":"string","x-stream-docs-page-id":"mml_overview","x-stream-index":"005"},"own_reactions":{"description":"List of 10 latest reactions of authenticated user to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Own reactions","type":"array","x-stream-index":"013"},"parent_id":{"description":"ID of parent message (thread)","title":"Parent message ID","type":"string","x-stream-docs-page-id":"threads","x-stream-index":"017"},"pin_expires":{"description":"Date when pinned message expires","format":"date-time","title":"Pin expiration date","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"048"},"pinned":{"description":"Whether message is pinned or not","title":"Pinned","type":"boolean","x-stream-docs-page-id":"pinned_messages","x-stream-index":"044"},"pinned_at":{"description":"Date when message got pinned","format":"date-time","title":"Pinned at","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","description":"Contains user who pinned the message","title":"Pinned by","x-stream-docs-page-id":"pinned_messages","x-stream-index":"047"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"051"},"poll_id":{"description":"Identifier of the poll to include in the message","title":"Poll ID","type":"string","x-stream-index":"050"},"quoted_message":{"$ref":"#/components/schemas/Message","description":"Contains quoted message","title":"Quoted message","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"023"},"quoted_message_id":{"title":"ID of quoted message","type":"string","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing number of reactions of each type. Key: reaction type (string), value: number of reactions (int)","title":"Reaction counts","type":"object","x-stream-index":"014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing scores of reactions of each type. Key: reaction type (string), value: total score of reactions (int)","title":"Reaction scores","type":"object","x-stream-index":"015"},"reply_count":{"description":"Number of replies to this message","format":"int32","title":"Reply count","type":"integer","x-stream-index":"020"},"shadowed":{"description":"Whether the message was shadowed or not","title":"Shadowed","type":"boolean","x-stream-docs-page-id":"moderation#shadow-ban","x-stream-index":"033"},"show_in_channel":{"description":"Whether thread reply should be shown in the channel as well","title":"Show in channel","type":"boolean","x-stream-docs-page-id":"threads","x-stream-index":"019"},"silent":{"description":"Whether message is silent or not","title":"Silent","type":"boolean","x-stream-index":"042"},"text":{"description":"Text of the message. Should be empty if `mml` is provided","title":"Text","type":"string","x-stream-index":"004"},"thread_participants":{"description":"List of users who participate in thread","items":{"$ref":"#/components/schemas/UserObject"},"title":"Thread participants","type":"array","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"025"},"type":{"description":"Contains type of the message","enum":["regular","ephemeral","error","reply","system","deleted"],"title":"Message Type","type":"string","x-stream-docs-page-id":"message_format#message-types","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"029"},"user":{"$ref":"#/components/schemas/UserObject","description":"Sender of the message. Required when using server-side API","title":"User object","x-stream-index":"010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned","poll_id"],"title":"Message","type":"object","x-stream-docs-page-id":"send_message"},"MessageActionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"form_data":{"additionalProperties":{"type":"string"},"description":"ReadOnlyData to execute command with","title":"Form data","type":"object","x-stream-index":"002"}},"required":["form_data"],"type":"object"},"MessageChangeSet":{"properties":{"attachments":{"type":"boolean","x-stream-index":"005"},"custom":{"type":"boolean","x-stream-index":"001"},"html":{"type":"boolean","x-stream-index":"004"},"mentioned_user_ids":{"type":"boolean","x-stream-index":"006"},"mml":{"type":"boolean","x-stream-index":"003"},"pin":{"type":"boolean","x-stream-index":"009"},"quoted_message_id":{"type":"boolean","x-stream-index":"007"},"silent":{"type":"boolean","x-stream-index":"008"},"text":{"type":"boolean","x-stream-index":"002"}},"required":["custom","text","mml","html","attachments","mentioned_user_ids","quoted_message_id","silent","pin"],"type":"object"},"MessageDeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"hard_delete":{"type":"boolean","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.deleted","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["hard_delete","cid","channel_id","channel_type","type","created_at"],"title":"MessageDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageFlag":{"nullable":true,"properties":{"approved_at":{"format":"date-time","type":"string","x-stream-index":"013"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by_automod":{"type":"boolean","x-stream-index":"001"},"custom":{"type":"object","x-stream-index":"008"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"006"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"005"},"moderation_feedback":{"$ref":"#/components/schemas/FlagFeedback","x-stream-index":"003"},"moderation_result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"002"},"reason":{"type":"string","x-stream-index":"007"},"rejected_at":{"format":"date-time","type":"string","x-stream-index":"014"},"reviewed_at":{"format":"date-time","type":"string","x-stream-index":"011"},"reviewed_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004"}},"required":["created_by_automod","created_at","updated_at"],"type":"object"},"MessageModerationResult":{"properties":{"action":{"type":"string","x-stream-index":"004"},"ai_moderation_response":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"009"},"blocked_word":{"type":"string","x-stream-index":"006"},"blocklist_name":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"012"},"message_id":{"type":"string","x-stream-index":"003"},"moderated_by":{"type":"string","x-stream-index":"005"},"moderation_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"013"},"user_bad_karma":{"type":"boolean","x-stream-index":"011"},"user_karma":{"format":"float","type":"number","x-stream-index":"010"}},"required":["message_id","action","user_karma","user_bad_karma","created_at","updated_at"],"type":"object"},"MessageNewEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"006.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"notification.thread_message_new","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"002.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"MessageNewEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessagePaginationParamsRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"008"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"007"},"created_at_around":{"format":"date-time","type":"string","x-stream-index":"012"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"010"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"009"},"id_around":{"type":"string","x-stream-index":"011"},"id_gt":{"type":"string","x-stream-index":"004"},"id_gte":{"type":"string","x-stream-index":"003"},"id_lt":{"type":"string","x-stream-index":"006"},"id_lte":{"type":"string","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"MessageReadEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"last_read_message_id":{"type":"string","x-stream-index":"006"},"team":{"type":"string","x-stream-index":"004.001"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"default":"message.read","type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"MessageReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageRequest":{"properties":{"attachments":{"items":{"$ref":"#/components/schemas/AttachmentRequest"},"maximum":30,"type":"array","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"007"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"mentioned_users":{"items":{"type":"string"},"maximum":25,"type":"array","x-stream-index":"008"},"parent_id":{"type":"string","x-stream-index":"005"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"015"},"pinned":{"type":"boolean","x-stream-index":"013"},"pinned_at":{"format":"date-time","nullable":true,"type":"string","x-stream-index":"014"},"poll_id":{"type":"string","x-stream-index":"038"},"quoted_message_id":{"type":"string","x-stream-index":"009"},"show_in_channel":{"type":"boolean","x-stream-index":"006"},"silent":{"type":"boolean","x-stream-index":"012"},"text":{"type":"string","x-stream-index":"002"},"type":{"enum":["''regular","system"],"type":"string","x-stream-index":"011"}},"required":["attachments"],"type":"object"},"MessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MessageUndeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.undeleted","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MessageUndeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageUpdate":{"properties":{"change_set":{"$ref":"#/components/schemas/MessageChangeSet","x-stream-index":"002"},"old_text":{"type":"string","x-stream-index":"001"}},"type":"object"},"MessageUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"005.002"},"channel_type":{"type":"string","x-stream-index":"005.003"},"cid":{"type":"string","x-stream-index":"005.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"team":{"type":"string","x-stream-index":"002.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"message.updated","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"MessageUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageWithPendingMetadataResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"description":"Metadata attached to a message while it is pending","title":"Pending message metadata","type":"object","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ModerationResponse":{"properties":{"action":{"type":"string","x-stream-index":"004"},"explicit":{"format":"float","type":"number","x-stream-index":"002"},"spam":{"format":"float","type":"number","x-stream-index":"003"},"toxic":{"format":"float","type":"number","x-stream-index":"001"}},"required":["toxic","explicit","spam","action","automod_response"],"type":"object"},"MuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"003"}},"required":["channel_cids"],"type":"object"},"MuteChannelResponse":{"nullable":true,"properties":{"channel_mute":{"$ref":"#/components/schemas/ChannelMute","description":"Object with channel mute (if one channel was muted)","title":"Channel mute","x-stream-index":"001"},"channel_mutes":{"description":"Object with mutes (if multiple channels were muted)","items":{"$ref":"#/components/schemas/ChannelMute"},"title":"Channel mutes","type":"array","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"004.001"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"003"}},"required":["target_ids"],"type":"object"},"MuteUserResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"mute":{"$ref":"#/components/schemas/UserMute","description":"Object with user mute (if one user was muted)","title":"Mute","x-stream-index":"001"},"mutes":{"description":"Object with mutes (if multiple users were muted)","items":{"$ref":"#/components/schemas/UserMute"},"title":"Mutes","type":"array","x-stream-index":"002"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUsersRequest":{"nullable":true,"properties":{"audio":{"title":"Audio","type":"boolean","x-stream-index":"005"},"mute_all_users":{"type":"boolean","x-stream-index":"003"},"screenshare":{"title":"Screenshare","type":"boolean","x-stream-index":"007"},"screenshare_audio":{"title":"ScreenshareAudio","type":"boolean","x-stream-index":"008"},"user_ids":{"items":{"type":"string"},"title":"UserIDs","type":"array","x-stream-index":"004"},"video":{"title":"Video","type":"boolean","x-stream-index":"006"}},"type":"object"},"MuteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"NoiseCancellationSettings":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode"],"type":"object"},"NoiseCancellationSettingsRequest":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"NotificationAddedToChannelEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.001"},"type":{"default":"notification.added_to_channel","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationAddedToChannelEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelDeletedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"team":{"type":"string","x-stream-index":"001.001"},"type":{"default":"notification.channel_deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationChannelDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelMutesUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"001"},"type":{"default":"notification.channel_mutes_updated","type":"string","x-stream-index":"002.001"}},"required":["me","type","created_at"],"title":"NotificationChannelMutesUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationChannelTruncatedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"notification.channel_truncated","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationChannelTruncatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInviteAcceptedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invite_accepted","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInviteAcceptedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInviteRejectedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invite_rejected","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInviteRejectedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationInvitedEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.invited","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationInvitedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMarkReadEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"team":{"type":"string","x-stream-index":"002.001"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"006"},"type":{"default":"notification.mark_read","type":"string","x-stream-index":"001.001"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"007"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"005"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"008"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type","unread_count","total_unread_count","unread_channels","unread_threads"],"title":"NotificationMarkReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMarkUnreadEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"003.004"},"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"first_unread_message_id":{"type":"string","x-stream-index":"005"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"006"},"last_read_message_id":{"type":"string","x-stream-index":"012"},"team":{"type":"string","x-stream-index":"002.001"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"009"},"type":{"default":"notification.mark_unread","type":"string","x-stream-index":"001.001"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"010"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"008"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"007"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["type","created_at","cid","channel_id","channel_type","first_unread_message_id","last_read_at","unread_messages","unread_count","total_unread_count","unread_channels","unread_threads"],"title":"NotificationMarkUnreadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationMutesUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"001"},"type":{"default":"notification.mutes_updated","type":"string","x-stream-index":"002.001"}},"required":["me","type","created_at"],"title":"NotificationMutesUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationNewMessageEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"004.004"},"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"notification.message_new","type":"string","x-stream-index":"003.001"}},"required":["message","type","created_at","cid","channel_id","channel_type"],"title":"NotificationNewMessageEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationRemovedFromChannelEvent":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002.004"},"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"004.001"},"type":{"default":"notification.removed_from_channel","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at","cid","channel_id","channel_type"],"title":"NotificationRemovedFromChannelEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"NullBoolRequest":{"properties":{"HasValue":{"type":"boolean","writeOnly":true,"x-stream-index":"002"},"Value":{"type":"boolean","writeOnly":true,"x-stream-index":"001"}},"type":"object"},"NullTimeRequest":{"properties":{"HasValue":{"type":"boolean","writeOnly":true,"x-stream-index":"002"},"Value":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"001"}},"type":"object"},"OnlyUserIDRequest":{"properties":{"id":{"type":"string","x-stream-index":"001"}},"required":["id"],"type":"object"},"OwnCapability":{"description":"All possibility of string to use","enum":["block-users","create-call","create-reaction","enable-noise-cancellation","end-call","join-backstage","join-call","join-ended-call","mute-users","pin-for-everyone","read-call","remove-call-member","screenshare","send-audio","send-video","start-broadcast-call","start-record-call","start-transcription-call","stop-broadcast-call","stop-record-call","stop-transcription-call","update-call","update-call-member","update-call-permissions","update-call-settings"],"title":"OwnCapability","type":"string"},"OwnUser":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"banned":{"type":"boolean","x-stream-index":"014"},"channel_mutes":{"items":{"$ref":"#/components/schemas/ChannelMute"},"type":"array","x-stream-index":"026"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"deactivated_at":{"format":"date-time","type":"string","x-stream-index":"012"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"type":"array","x-stream-index":"024"},"id":{"type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"type":"string","x-stream-index":"031"},"last_active":{"format":"date-time","type":"string","x-stream-index":"010"},"latest_hidden_channels":{"items":{"type":"string"},"type":"array","x-stream-index":"033"},"mutes":{"items":{"$ref":"#/components/schemas/UserMute"},"type":"array","x-stream-index":"025"},"online":{"type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"role":{"type":"string","x-stream-index":"004"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"032"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"028"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"029"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"027"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"030"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","created_at","updated_at","banned","online","devices","mutes","channel_mutes","unread_count","total_unread_count","unread_channels","unread_threads","language"],"type":"object"},"OwnUserResponse":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.004"},"custom":{"type":"object","x-stream-index":"001.001.004"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.006"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001.001.001"},"image":{"type":"string","x-stream-index":"001.001.003"},"language":{"type":"string","x-stream-index":"001.001.005"},"name":{"type":"string","x-stream-index":"001.001.002"},"role":{"type":"string","x-stream-index":"001.002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.005"}},"required":["id","custom","language","role","teams","created_at","updated_at","devices"],"type":"object"},"PaginationParamsRequest":{"properties":{"id_gt":{"format":"int32","type":"integer","x-stream-index":"004"},"id_gte":{"format":"int32","type":"integer","x-stream-index":"003"},"id_lt":{"format":"int32","type":"integer","x-stream-index":"006"},"id_lte":{"format":"int32","type":"integer","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"PendingMessage":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/Channel","x-stream-index":"007"},"message":{"$ref":"#/components/schemas/Message","description":"The message","title":"Message","x-stream-index":"009"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional data attached to the pending message. This data is discarded once the pending message is committed.","title":"Metadata","type":"object","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"type":"object"},"PermissionRequestEvent":{"description":"This event is sent when a user requests access to a feature on a call,\nclients receiving this event should display a permission request to the user","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"permissions":{"description":"The list of permissions requested by the user","items":{"type":"string"},"title":"Permissions","type":"array","x-stream-index":"004"},"type":{"default":"call.permission_request","description":"The type of event: \"call.permission_request\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who sent the permission request","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user","permissions"],"title":"PermissionRequestEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"PinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Policy":{"properties":{"action":{"type":"integer","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"name":{"type":"string","x-stream-index":"004"},"owner":{"type":"boolean","x-stream-index":"008"},"priority":{"format":"int32","type":"integer","x-stream-index":"009"},"resources":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"}},"required":["name","resources","roles","action","owner","priority","created_at","updated_at"],"type":"object"},"Poll":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"023"},"allow_answers":{"type":"boolean","x-stream-index":"010"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"009"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"015"},"created_at":{"format":"date-time","type":"string","x-stream-index":"021"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"020"},"created_by_id":{"type":"string","x-stream-index":"019"},"description":{"type":"string","x-stream-index":"005"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"007"},"id":{"type":"string","x-stream-index":"003"},"is_closed":{"type":"boolean","x-stream-index":"011"},"latest_answers":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array","x-stream-index":"017"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array"},"type":"object","x-stream-index":"016"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"008"},"name":{"type":"string","x-stream-index":"004"},"options":{"items":{"$ref":"#/components/schemas/PollOption"},"type":"array","x-stream-index":"013"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array","x-stream-index":"018"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"022"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"012"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"014"},"voting_visibility":{"type":"string","x-stream-index":"006"}},"required":["id","name","description","enforce_unique_vote","allow_user_suggested_options","allow_answers","vote_count","options","vote_counts_by_option","answers_count","latest_votes_by_option","latest_answers","own_votes","created_by_id","created_at","updated_at","Custom"],"type":"object"},"PollClosedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001"},"type":{"default":"poll.closed","type":"string","x-stream-index":"002.001"}},"required":["type","created_at"],"title":"PollClosedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollCreatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001"},"type":{"default":"poll.created","type":"string","x-stream-index":"002.001"}},"required":["type","created_at"],"title":"PollCreatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollDeletedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001"},"type":{"default":"poll.deleted","type":"string","x-stream-index":"002.001"}},"required":["type","created_at"],"title":"PollDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollOption":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id","text","custom"],"type":"object"},"PollOptionRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"PollOptionRequest_1":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"}},"type":"object"},"PollOptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"poll_option":{"$ref":"#/components/schemas/PollOptionResponseData","x-stream-index":"001"}},"required":["poll_option","duration"],"type":"object"},"PollOptionResponseData":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id","text","custom"],"type":"object"},"PollRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"023"},"allow_answers":{"type":"boolean","x-stream-index":"010"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"009"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"015"},"created_at":{"format":"date-time","type":"string","x-stream-index":"021"},"created_by":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"020"},"created_by_id":{"type":"string","x-stream-index":"019"},"description":{"type":"string","x-stream-index":"005"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"007"},"id":{"type":"string","x-stream-index":"003"},"is_closed":{"type":"boolean","x-stream-index":"011"},"latest_answers":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array","x-stream-index":"017"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array"},"type":"object","x-stream-index":"016"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"008"},"name":{"type":"string","x-stream-index":"004"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest"},"type":"array","x-stream-index":"013"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array","x-stream-index":"018"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"022"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"012"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"014"},"voting_visibility":{"type":"string","x-stream-index":"006"}},"type":"object"},"PollResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"poll":{"$ref":"#/components/schemas/PollResponseData","x-stream-index":"001"}},"required":["poll","duration"],"type":"object"},"PollResponseData":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"allow_answers":{"type":"boolean","x-stream-index":"008"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"007"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"012"},"created_at":{"format":"date-time","type":"string","x-stream-index":"018"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"017"},"created_by_id":{"type":"string","x-stream-index":"016"},"description":{"type":"string","x-stream-index":"003"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"005"},"id":{"type":"string","x-stream-index":"001"},"is_closed":{"type":"boolean","x-stream-index":"009"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array"},"type":"object","x-stream-index":"014"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"006"},"name":{"type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionResponseData"},"type":"array","x-stream-index":"011"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array","x-stream-index":"015"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"019"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"010"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"013"},"voting_visibility":{"type":"string","x-stream-index":"004"}},"required":["id","name","description","voting_visibility","enforce_unique_vote","allow_user_suggested_options","allow_answers","vote_count","options","answers_count","vote_counts_by_option","latest_votes_by_option","own_votes","created_by_id","created_at","updated_at","Custom"],"type":"object"},"PollUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001"},"type":{"default":"poll.updated","type":"string","x-stream-index":"002.001"}},"required":["type","created_at"],"title":"PollUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollVote":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"004"},"is_answer":{"type":"boolean","x-stream-index":"006"},"option_id":{"type":"string","x-stream-index":"005"},"poll_id":{"type":"string","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"009"},"user_id":{"type":"string","x-stream-index":"008"}},"required":["poll_id","id","option_id","created_at","updated_at"],"type":"object"},"PollVoteCastedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"poll.vote_casted","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVote","x-stream-index":"001"}},"required":["type","created_at"],"title":"PollVoteCastedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollVoteChangedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"poll.vote_changed","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVote","x-stream-index":"001"}},"required":["type","created_at"],"title":"PollVoteChangedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollVoteRemovedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"poll.vote_removed","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVote","x-stream-index":"001"}},"required":["type","created_at"],"title":"PollVoteRemovedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PollVoteRequest":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"004"},"is_answer":{"type":"boolean","x-stream-index":"006"},"option_id":{"type":"string","x-stream-index":"005"},"poll_id":{"type":"string","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"009"},"user_id":{"type":"string","x-stream-index":"008"}},"type":"object"},"PollVoteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVoteResponseData","x-stream-index":"001"}},"required":["duration"],"type":"object"},"PollVoteResponseData":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"005"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"id":{"type":"string","x-stream-index":"002"},"is_answer":{"type":"boolean","x-stream-index":"004"},"option_id":{"type":"string","x-stream-index":"003"},"poll_id":{"type":"string","x-stream-index":"001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"007"},"user_id":{"type":"string","x-stream-index":"006"}},"required":["poll_id","id","option_id","created_at","updated_at"],"type":"object"},"PollVotesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"votes":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array","x-stream-index":"001"}},"required":["votes","duration"],"type":"object"},"PushNotificationFields":{"properties":{"apn":{"$ref":"#/components/schemas/APNConfigFields","x-stream-index":"002"},"firebase":{"$ref":"#/components/schemas/FirebaseConfigFields","x-stream-index":"003"},"huawei":{"$ref":"#/components/schemas/HuaweiConfigFields","x-stream-index":"004"},"offline_only":{"type":"boolean","x-stream-index":"001.002"},"providers":{"items":{"$ref":"#/components/schemas/PushProvider"},"type":"array","x-stream-index":"006"},"version":{"type":"string","x-stream-index":"001.001"},"xiaomi":{"$ref":"#/components/schemas/XiaomiConfigFields","x-stream-index":"005"}},"required":["version","offline_only","apn","firebase","huawei","xiaomi"],"type":"object"},"PushNotificationSettings":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushNotificationSettingsRequest":{"properties":{"disabled":{"$ref":"#/components/schemas/NullBoolRequest","x-stream-index":"001"},"disabled_until":{"$ref":"#/components/schemas/NullTimeRequest","x-stream-index":"002"}},"type":"object"},"PushProvider":{"nullable":true,"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name","type","created_at","updated_at"],"type":"object"},"QueryBannedUsersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"003.006"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.005"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"003.008"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.007"},"exclude_expired_bans":{"type":"boolean","x-stream-index":"006"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"type":"integer","x-stream-index":"004"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"005"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"type":"array","x-stream-index":"002"}},"required":["filter_conditions"],"type":"object"},"QueryBannedUsersResponse":{"nullable":true,"properties":{"bans":{"items":{"$ref":"#/components/schemas/BanResponse"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["bans","duration"],"type":"object"},"QueryCallStatsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"002"}},"type":"object"},"QueryCallStatsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"next":{"type":"string","x-stream-index":"003.001"},"prev":{"type":"string","x-stream-index":"003.002"},"reports":{"items":{"$ref":"#/components/schemas/CallStatsReportSummaryResponse"},"type":"array","x-stream-index":"001"}},"required":["reports","duration"],"type":"object"},"QueryCallsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"006.001"},"next":{"type":"string","x-stream-index":"006.002"},"prev":{"type":"string","x-stream-index":"006.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"004"},"watch":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryCallsResponse":{"nullable":true,"properties":{"calls":{"items":{"$ref":"#/components/schemas/CallStateResponseFields"},"title":"Calls","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["calls","duration"],"type":"object"},"QueryChannelsRequest":{"nullable":true,"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"011.003"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"description":"Number of channels to limit","format":"int32","title":"Limit","type":"integer","x-stream-index":"008"},"member_limit":{"description":"Number of members to limit","format":"int32","maximum":100,"minimum":0,"title":"Member limit","type":"integer","x-stream-index":"007"},"message_limit":{"description":"Number of messages to limit","format":"int32","minimum":0,"title":"Message limit","type":"integer","x-stream-index":"006"},"offset":{"description":"Channel pagination offset","format":"int32","title":"Offset","type":"integer","x-stream-index":"009"},"presence":{"title":"Presence","type":"boolean","x-stream-index":"005"},"sort":{"description":"List of sort parameters","items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"state":{"description":"Whether to update channel state or not","title":"State","type":"boolean","x-stream-index":"004"},"watch":{"description":"Whether to start watching found channels or not","title":"Watch","type":"boolean","x-stream-index":"003"}},"title":"Query Channels Request","type":"object","x-stream-docs-page-id":"query_channels"},"QueryMembersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"006.010"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.009"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"006.012"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.011"},"filter_conditions":{"description":"Filter to apply to members","title":"Filter conditions","type":"object","x-stream-index":"004"},"id":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","x-stream-index":"002"},"limit":{"description":"Number of records to return","format":"int32","maximum":300,"minimum":0,"title":"Limit","type":"integer","x-stream-index":"006.003"},"members":{"description":"List of members to search in distinct channels","items":{"$ref":"#/components/schemas/ChannelMember"},"maximum":100,"title":"Members","type":"array","x-stream-index":"003"},"offset":{"description":"Number of records to offset","format":"int32","maximum":10000,"title":"Offset","type":"integer","x-stream-index":"006.004"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"title":"Sort","type":"array","x-stream-index":"005"},"type":{"description":"Channel type to interact with","maxLength":64,"title":"Channel type","type":"string","x-stream-index":"001"},"user_id_gt":{"type":"string","x-stream-index":"006.006"},"user_id_gte":{"type":"string","x-stream-index":"006.005"},"user_id_lt":{"type":"string","x-stream-index":"006.008"},"user_id_lte":{"type":"string","x-stream-index":"006.007"}},"required":["type","filter_conditions"],"type":"object"},"QueryMembersRequest_1":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"002"},"id":{"maxLength":64,"type":"string","x-stream-index":"001.002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":1,"type":"array","x-stream-index":"003"},"type":{"maxLength":64,"type":"string","x-stream-index":"001.001"}},"required":["type","id"],"type":"object"},"QueryMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["members","duration"],"type":"object"},"QueryMessageFlagsRequest":{"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"minimum":0,"type":"integer","x-stream-index":"003.003"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"003.004"},"show_deleted_messages":{"type":"boolean","x-stream-index":"002"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"type":"array","x-stream-index":"003.005"}},"type":"object"},"QueryMessageFlagsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flags":{"items":{"$ref":"#/components/schemas/MessageFlag"},"type":"array","x-stream-index":"001"}},"required":["flags","duration"],"type":"object"},"QueryPollVotesRequest":{"nullable":true,"properties":{"filter":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"002"},"prev":{"type":"string","x-stream-index":"005.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"type":"array","x-stream-index":"004"}},"required":["poll_id"],"type":"object"},"QueryPollsRequest":{"nullable":true,"properties":{"filter":{"type":"object","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"prev":{"type":"string","x-stream-index":"005.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"type":"array","x-stream-index":"003"}},"type":"object"},"QueryPollsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"polls":{"items":{"$ref":"#/components/schemas/PollResponseData"},"type":"array","x-stream-index":"001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["polls","duration"],"type":"object"},"QueryThreadsRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"participant_limit":{"description":"Limit the number of participants returned per each thread","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","x-stream-index":"004"},"prev":{"type":"string","x-stream-index":"005.003"},"reply_limit":{"description":"Limit the number of replies returned per each thread","format":"int32","maximum":10,"minimum":0,"title":"Reply limit","type":"integer","x-stream-index":"003"},"watch":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryThreadsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"threads":{"description":"List of enriched thread states","items":{"$ref":"#/components/schemas/ThreadStateResponse"},"title":"Threads","type":"array","x-stream-index":"001"}},"required":["threads","duration"],"type":"object"},"QueryUsersRequest":{"properties":{"connection_id":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"007.003"},"filter_conditions":{"description":"User filters","title":"Filter conditions","type":"object","x-stream-docs-page-id":"query_users","x-stream-index":"001"},"id_gt":{"type":"string","x-stream-index":"005.006"},"id_gte":{"type":"string","x-stream-index":"005.005"},"id_lt":{"type":"string","x-stream-index":"005.008"},"id_lte":{"type":"string","x-stream-index":"005.007"},"include_deactivated_users":{"type":"boolean","x-stream-index":"004"},"limit":{"format":"int32","maximum":100,"minimum":0,"type":"integer","x-stream-index":"005.003"},"offset":{"format":"int32","maximum":1000,"type":"integer","x-stream-index":"005.004"},"presence":{"description":"Request user presence status","title":"Presence","type":"boolean","x-stream-index":"003"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"}},"required":["filter_conditions"],"type":"object"},"RTMPIngress":{"description":"RTMP input settings","properties":{"address":{"type":"string","x-stream-index":"001"}},"required":["address"],"title":"RTMP Ingress","type":"object"},"Reaction":{"description":"Represents user reaction to a message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"008"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["message_id","type","score","created_at","updated_at","Custom"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionDeletedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"reaction.deleted","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ReactionDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ReactionNewEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.002"},"type":{"default":"reaction.new","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ReactionNewEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ReactionRemovalResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionRequest":{"description":"Represents user reaction to a message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["type"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"006.002"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"type":{"default":"reaction.updated","type":"string","x-stream-index":"006.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["message","reaction","cid","channel_id","channel_type","type","created_at"],"title":"ReactionUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Read":{"nullable":true,"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"004"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["last_read","unread_messages"],"type":"object"},"RecordSettings":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality"],"type":"object"},"RecordSettingsRequest":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"002"},"quality":{"enum":["360p","480p","720p","1080p","1440p"],"type":"string","x-stream-index":"003"}},"required":["mode"],"type":"object"},"RecordSettingsResponse":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality","layout"],"type":"object"},"RejectCallRequest":{"nullable":true,"type":"object"},"RejectCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"RequestPermissionRequest":{"nullable":true,"properties":{"permissions":{"items":{"type":"string"},"title":"Permissions","type":"array","x-stream-index":"003"}},"required":["permissions"],"type":"object"},"RequestPermissionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"RingSettingsRequest":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"001"}},"type":"object"},"SFULocationResponse":{"properties":{"coordinates":{"$ref":"#/components/schemas/Coordinates","x-stream-index":"004"},"datacenter":{"type":"string","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001"},"location":{"$ref":"#/components/schemas/Location","x-stream-index":"003"}},"required":["id","datacenter","location","coordinates"],"type":"object"},"SFUResponse":{"properties":{"edge_name":{"type":"string","x-stream-index":"001"},"url":{"type":"string","x-stream-index":"002"},"ws_endpoint":{"type":"string","x-stream-index":"003"}},"required":["edge_name","url","ws_endpoint"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"ScreensharingSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"SearchRequest":{"properties":{"filter_conditions":{"description":"Channel filter conditions","maximum":100,"minimum":1,"title":"Channel filter","type":"object","x-stream-docs-page-id":"query_channels","x-stream-index":"002"},"limit":{"description":"Number of messages to return","format":"int32","title":"Limit","type":"integer","x-stream-index":"004"},"message_filter_conditions":{"description":"Message filter conditions","title":"Message filter","type":"object","x-stream-index":"003"},"next":{"description":"Pagination parameter. Cannot be used with non-zero offset.","title":"Next","type":"string","x-stream-index":"007"},"offset":{"description":"Pagination offset. Cannot be used with sort or next.","format":"int32","title":"Offset","type":"integer","x-stream-index":"005"},"query":{"description":"Search phrase","title":"Query","type":"string","x-stream-index":"001"},"sort":{"description":"Sort parameters. Cannot be used with non-zero offset","items":{"$ref":"#/components/schemas/SortParam"},"title":"Sort","type":"array","x-stream-index":"006"}},"required":["filter_conditions"],"type":"object"},"SearchResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"next":{"description":"Value to pass to the next search query in order to paginate","title":"Next","type":"string","x-stream-index":"003"},"previous":{"description":"Value that points to the previous page. Pass as the next value in a search query to paginate backwards","title":"Previous","type":"string","x-stream-index":"004"},"results":{"description":"Search results","items":{"$ref":"#/components/schemas/SearchResult"},"title":"Results","type":"array","x-stream-index":"001"},"results_warning":{"$ref":"#/components/schemas/SearchWarning","description":"Warning about the search results","title":"Results Warning","x-stream-index":"002"}},"required":["results","duration"],"type":"object"},"SearchResult":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/SearchResultMessage","description":"Found message","title":"Message","x-stream-index":"001"}},"type":"object"},"SearchResultMessage":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.031"},"attachments":{"items":{"$ref":"#/components/schemas/Attachment"},"type":"array","x-stream-index":"001.011"},"before_message_send_failed":{"type":"boolean","x-stream-index":"001.043"},"channel":{"$ref":"#/components/schemas/ChannelResponse","description":"Channel object","title":"Channel","x-stream-index":"002"},"cid":{"type":"string","x-stream-index":"001.026"},"command":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.028"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"001.021"},"html":{"type":"string","x-stream-index":"001.007"},"i18n":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"001.041"},"id":{"type":"string","x-stream-index":"001.002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.037"},"latest_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.012"},"mentioned_users":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"001.049"},"mml":{"type":"string","x-stream-index":"001.005"},"own_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.013"},"parent_id":{"type":"string","x-stream-index":"001.017"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"001.048"},"pinned":{"type":"boolean","x-stream-index":"001.044"},"pinned_at":{"format":"date-time","type":"string","x-stream-index":"001.045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.047"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001.051"},"poll_id":{"type":"string","x-stream-index":"001.050"},"quoted_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.023"},"quoted_message_id":{"type":"string","x-stream-index":"001.022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.015"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.020"},"shadowed":{"type":"boolean","x-stream-index":"001.033"},"show_in_channel":{"type":"boolean","x-stream-index":"001.019"},"silent":{"type":"boolean","x-stream-index":"001.042"},"text":{"type":"string","x-stream-index":"001.004"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.025"},"type":{"type":"string","x-stream-index":"001.008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.029"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned","poll_id"],"type":"object"},"SearchWarning":{"properties":{"channel_search_cids":{"description":"Channel CIDs for the searched channels","items":{"type":"string"},"title":"Channel Search CIDs","type":"array","x-stream-index":"004"},"channel_search_count":{"description":"Number of channels searched","format":"int32","title":"Channel Search Count","type":"integer","x-stream-index":"003"},"warning_code":{"description":"Code corresponding to the warning","format":"int32","title":"Warning Code","type":"integer","x-stream-index":"002"},"warning_description":{"description":"Description of the warning","title":"Warning Description","type":"string","x-stream-index":"001"}},"required":["warning_description","warning_code"],"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/EventRequest","x-stream-index":"001"}},"required":["event"],"type":"object"},"SendEventResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SendMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"SendMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"enforce_unique":{"description":"Whether to replace all existing user reactions","title":"Enforce unique","type":"boolean","x-stream-index":"003"},"reaction":{"$ref":"#/components/schemas/ReactionRequest","x-stream-index":"002"},"skip_push":{"description":"Skips any mobile push notifications","title":"Skip push","type":"boolean","x-stream-index":"004"}},"required":["reaction"],"type":"object"},"SendReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"reaction":{"$ref":"#/components/schemas/ReactionResponse","x-stream-index":"001"}},"required":["reaction","duration"],"type":"object"},"ShowChannelRequest":{"nullable":true,"type":"object"},"ShowChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParam":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StartHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StartHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"playlist_url":{"type":"string","x-stream-index":"002"}},"required":["duration","playlist_url"],"type":"object"},"StartRecordingRequest":{"nullable":true,"properties":{"recording_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartRecordingResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StartTranscriptionRequest":{"nullable":true,"properties":{"transcription_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartTranscriptionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Stats":{"properties":{"average_seconds":{"format":"float","type":"number","x-stream-index":"001"},"max_seconds":{"format":"float","type":"number","x-stream-index":"002"}},"required":["average_seconds","max_seconds"],"type":"object"},"StatsOptions":{"properties":{"reporting_interval_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["reporting_interval_ms"],"type":"object"},"StopHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StopHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopLiveRequest":{"nullable":true,"type":"object"},"StopLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"StopRecordingRequest":{"nullable":true,"type":"object"},"StopRecordingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopTranscriptionRequest":{"nullable":true,"type":"object"},"StopTranscriptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopWatchingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Subsession":{"properties":{"sfu_id":{"type":"string","x-stream-index":"003"},"ts_ended_at":{"format":"int64","type":"integer","x-stream-index":"002"},"ts_joined_at":{"format":"int64","type":"integer","x-stream-index":"001"}},"required":["ts_joined_at","ts_ended_at","sfu_id"],"type":"object"},"SyncRequest":{"nullable":true,"properties":{"channel_cids":{"description":"List of channel CIDs to sync","items":{"type":"string"},"maximum":255,"minimum":1,"title":"Channel CIDs","type":"array","x-stream-index":"001"},"connection_id":{"type":"string","x-stream-index":"006.003"},"last_sync_at":{"description":"Date from which synchronization should happen","format":"date-time","title":"Last sync at","type":"string","x-stream-index":"002"},"watch":{"description":"If set to true this will start watching requested and newly added channels that user has access to. If error occurred with this option enabled and it is not an input error - channels will still be watched.","title":"Watch synced channels","type":"boolean","x-stream-index":"004"},"with_inaccessible_cids":{"description":"If set to true this will add 'inaccessible_cids' to response type","title":"With inaccessible CIDs","type":"boolean","x-stream-index":"003"}},"required":["last_sync_at"],"type":"object"},"SyncResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"events":{"description":"List of events","items":{"$ref":"#/components/schemas/WSEvent"},"title":"Events","type":"array","x-stream-index":"001"},"inaccessible_cids":{"description":"List of CIDs that user can't access","items":{"type":"string"},"title":"Inaccessible CIDs","type":"array","x-stream-index":"002"}},"required":["events","duration"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"TargetResolutionRequest":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"type":"object"},"Thread":{"description":"Represents a conversation thread linked to a specific message in a channel.","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"012"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"010"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom"],"title":"Thread","type":"object"},"ThreadParticipant":{"description":"Represents a user that is participating in a thread.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"app_pk":{"format":"int32","readOnly":true,"type":"integer","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"007"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"009"},"left_thread_at":{"description":"Left Thread At is the time when the user left the thread","format":"date-time","title":"Left Thread At","type":"string","x-stream-index":"008"},"thread_id":{"description":"Thead ID is unique string identifier of the thread","title":"ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserObject","description":"User is the user object","title":"User","x-stream-index":"006"},"user_id":{"description":"User ID is unique string identifier of the user","title":"User ID","type":"string","x-stream-index":"005"}},"required":["app_pk","channel_cid","created_at","last_read_at","Custom"],"title":"ThreadParticipant","type":"object"},"ThreadResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"created_by_user_id":{"type":"string","x-stream-index":"005"},"custom":{"type":"object","x-stream-index":"015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"010"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"004"},"parent_message_id":{"type":"string","x-stream-index":"003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"008"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"009"},"title":{"type":"string","x-stream-index":"014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom"],"type":"object"},"ThreadState":{"description":"Represents a conversation thread linked to a specific message in a channel.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"001.004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"001.003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"001.013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"001.008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"001.015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"001.012"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"001.006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"001.005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"001.010"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"001.009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"001.016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"001.014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom","latest_replies"],"title":"Thread","type":"object"},"ThreadStateResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.002"},"channel_cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.006"},"created_by_user_id":{"type":"string","x-stream-index":"001.005"},"custom":{"type":"object","x-stream-index":"001.015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"001.010"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.004"},"parent_message_id":{"type":"string","x-stream-index":"001.003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"001.008"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.009"},"title":{"type":"string","x-stream-index":"001.014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom","latest_replies"],"type":"object"},"ThreadUpdatedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"001.002"},"channel_type":{"type":"string","x-stream-index":"001.003"},"cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"default":"thread.updated","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"ThreadUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Thresholds":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThumbnailResponse":{"properties":{"image_url":{"type":"string","x-stream-index":"001"}},"required":["image_url"],"type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"ThumbnailsSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranscriptionSettingsRequest":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"TranslateMessageRequest":{"nullable":true,"properties":{"language":{"description":"Language to translate message to","enum":["af","sq","am","ar","az","bn","bs","bg","zh","zh-TW","hr","cs","da","fa-AF","nl","en","et","fi","fr","fr-CA","ka","de","el","ha","he","hi","hu","id","it","ja","ko","lv","ms","no","fa","ps","pl","pt","ro","ru","sr","sk","sl","so","es","es-MX","sw","sv","tl","ta","th","tr","uk","ur","vi"],"title":"Language","type":"string","x-stream-index":"002"}},"required":["language"],"type":"object"},"TruncateChannelRequest":{"nullable":true,"properties":{"hard_delete":{"description":"Permanently delete channel data (messages, reactions, etc.)","title":"Hard delete","type":"boolean","x-stream-index":"002"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"004"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"005"},"truncated_at":{"description":"Truncate channel data up to `truncated_at`. The system message (if provided) creation time is always greater than `truncated_at`","format":"date-time","title":"Truncated at","type":"string","x-stream-index":"006"}},"type":"object"},"TruncateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"003"}},"required":["duration"],"type":"object"},"TypingStartEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"003.002"},"channel_type":{"type":"string","x-stream-index":"003.003"},"cid":{"type":"string","x-stream-index":"003.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"parent_id":{"type":"string","x-stream-index":"001"},"type":{"default":"typing.start","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"TypingStartEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"TypingStopEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"parent_id":{"type":"string","x-stream-index":"001"},"type":{"default":"typing.stop","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"TypingStopEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UnblockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to unblock","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"UnblockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnblockedUserEvent":{"description":"This event is sent when a user is unblocked on a call, \nthis can be useful to notify the user that they can now join the call again","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.unblocked_user","description":"The type of event: \"call.unblocked_user\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that was unblocked","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user"],"title":"UnblockedUserEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UnmuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"001.002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"001.003"}},"required":["channel_cids"],"type":"object"},"UnmuteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["duration"],"type":"object"},"UnmuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"001.002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"001.003"}},"required":["target_ids"],"type":"object"},"UnpinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"UnpinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnreadCountsChannel":{"properties":{"channel_id":{"type":"string","x-stream-index":"001"},"last_read":{"format":"date-time","type":"string","x-stream-index":"003"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["channel_id","unread_count","last_read"],"type":"object"},"UnreadCountsChannelType":{"properties":{"channel_count":{"format":"int32","type":"integer","x-stream-index":"002"},"channel_type":{"type":"string","x-stream-index":"001"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"003"}},"required":["channel_type","channel_count","unread_count"],"type":"object"},"UnreadCountsThread":{"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"003"},"parent_message_id":{"type":"string","x-stream-index":"004"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["unread_count","last_read","last_read_message_id","parent_message_id"],"type":"object"},"UpdateCallMembersRequest":{"nullable":true,"properties":{"remove_members":{"description":"List of userID to remove","items":{"type":"string"},"maximum":100,"title":"Remove Members","type":"array","x-stream-index":"003"},"update_members":{"description":"List of members to update or insert","items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"title":"Update Members","type":"array","x-stream-index":"004"}},"type":"object"},"UpdateCallMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"002"}},"required":["duration","members"],"type":"object"},"UpdateCallRequest":{"nullable":true,"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","description":"the settings to change for this call","title":"Settings Override","x-stream-index":"004"},"starts_at":{"description":"the time the call is scheduled to start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"005"}},"type":"object"},"UpdateCallResponse":{"description":"Represents a call","nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"title":"Call","type":"object"},"UpdateChannelPartialRequest":{"nullable":true,"properties":{"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["set","unset"],"type":"object"},"UpdateChannelPartialResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelRequest":{"nullable":true,"properties":{"accept_invite":{"description":"Set to `true` to accept the invite","title":"Accept invite","type":"boolean","x-stream-index":"008"},"add_members":{"description":"List of user IDs to add to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Add members","type":"array","x-stream-index":"001"},"add_moderators":{"description":"List of user IDs to make channel moderators","items":{"type":"string"},"maximum":100,"title":"Add moderators","type":"array","x-stream-index":"003"},"assign_roles":{"description":"List of channel member role assignments. If any specified user is not part of the channel, the request will fail","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Assign roles","type":"array","x-stream-index":"006"},"cooldown":{"description":"Sets cool down period for the channel in seconds","format":"int32","maximum":120,"minimum":0,"title":"Cool down","type":"integer","x-stream-index":"007"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"013.001"},"demote_moderators":{"description":"List of user IDs to take away moderators status from","items":{"type":"string"},"maximum":100,"title":"Demote moderators","type":"array","x-stream-index":"004"},"hide_history":{"description":"Set to `true` to hide channel's history when adding new members","title":"Hide history","type":"boolean","x-stream-index":"012"},"invites":{"description":"List of user IDs to invite to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Invites","type":"array","x-stream-index":"005"},"message":{"$ref":"#/components/schemas/MessageRequest","description":"Message to send to the chat when channel is successfully updated","title":"Message","x-stream-index":"010"},"reject_invite":{"description":"Set to `true` to reject the invite","title":"Reject invite","type":"boolean","x-stream-index":"009"},"remove_members":{"description":"List of user IDs to remove from the channel","items":{"type":"string"},"maximum":100,"title":"Remove members","type":"array","x-stream-index":"002"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"011"}},"required":["remove_members","add_moderators","demote_moderators"],"title":"Channel update request","type":"object","x-stream-docs-page-id":"channel_update"},"UpdateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"003"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateMessagePartialRequest":{"nullable":true,"properties":{"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"skip_enrich_url":{"type":"boolean","x-stream-index":"001"},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"}},"required":["set","unset"],"type":"object"},"UpdateMessagePartialResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"UpdateMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdatePollOptionRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"id":{"maxLength":255,"type":"string","x-stream-index":"002"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"003"}},"required":["poll_id","id","text"],"type":"object"},"UpdatePollPartialRequest":{"nullable":true,"properties":{"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"}},"required":["poll_id","set","unset"],"type":"object"},"UpdatePollRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"011"},"allow_answers":{"type":"boolean","x-stream-index":"009"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"008"},"description":{"type":"string","x-stream-index":"003"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"005"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"is_closed":{"type":"boolean","x-stream-index":"010"},"max_votes_allowed":{"format":"int32","maximum":10,"type":"integer","x-stream-index":"007"},"name":{"type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest"},"maximum":100,"type":"array","x-stream-index":"004"},"voting_visibility":{"enum":["anonymous","public"],"type":"string","x-stream-index":"006"}},"required":["id","name"],"type":"object"},"UpdateThreadPartialRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"set":{"type":"object","x-stream-index":"004.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"004.002"}},"required":["set","unset"],"type":"object"},"UpdateThreadPartialResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadResponse","description":"Updated thread (not enriched)","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"UpdateUserPartialRequest":{"nullable":true,"properties":{"id":{"description":"User ID to update","title":"ID","type":"string","x-stream-index":"001"},"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["id","set","unset"],"type":"object"},"UpdateUserPermissionsRequest":{"nullable":true,"properties":{"grant_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"revoke_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"UpdateUserPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdateUsersRequest":{"nullable":true,"properties":{"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObjectRequest"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users"],"type":"object"},"UpdateUsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"membership_deletion_task_id":{"type":"string","x-stream-index":"002"},"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObject"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users","membership_deletion_task_id","duration"],"type":"object"},"UpdatedCallPermissionsEvent":{"description":"This event is sent to notify about permission changes for a user, clients receiving this event should update their UI accordingly","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"own_capabilities":{"description":"The capabilities of the current user","items":{"$ref":"#/components/schemas/OwnCapability"},"title":"Own capabilities","type":"array","x-stream-index":"004"},"type":{"default":"call.permissions_updated","description":"The type of event: \"call.permissions_updated\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who received the new permissions","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user","own_capabilities"],"title":"UpdatedCallPermissionsEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserBannedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"006.002"},"channel_type":{"type":"string","x-stream-index":"006.003"},"cid":{"type":"string","x-stream-index":"006.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008.002"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"},"expiration":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"002"},"team":{"type":"string","x-stream-index":"005.001"},"type":{"default":"user.banned","type":"string","x-stream-index":"008.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"007.001"}},"required":["created_by","shadow","cid","channel_id","channel_type","type","created_at"],"title":"UserBannedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserDeactivatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"},"type":{"default":"user.deactivated","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002.001"}},"required":["created_by","type","created_at"],"title":"UserDeactivatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserDeletedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"delete_conversation_channels":{"type":"boolean","x-stream-index":"005"},"hard_delete":{"type":"boolean","x-stream-index":"003.001"},"mark_messages_deleted":{"type":"boolean","x-stream-index":"004"},"type":{"default":"user.deleted","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["type","created_at","hard_delete","mark_messages_deleted","delete_conversation_channels"],"title":"UserDeletedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserInfoResponse":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"image":{"type":"string","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"004"}},"required":["name","image","custom","roles"],"type":"object"},"UserMute":{"nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"target":{"$ref":"#/components/schemas/UserObject","description":"User who's muted","title":"Target","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"UserMutedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"004.002"},"target_user":{"type":"string","x-stream-index":"001"},"target_users":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"type":{"default":"user.muted","type":"string","x-stream-index":"004.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["type","created_at"],"title":"UserMutedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserObject":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"007"},"deactivated_at":{"description":"Date of deactivation","format":"date-time","readOnly":true,"title":"Deactivated at","type":"string","x-stream-index":"012"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","readOnly":true,"title":"Deleted at","type":"string","x-stream-index":"011"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"last_active":{"description":"Date of last activity","format":"date-time","readOnly":true,"title":"Last active","type":"string","x-stream-index":"010"},"online":{"description":"Whether a user online or not","readOnly":true,"title":"Online","type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"008"}},"required":["id"],"title":"User object","type":"object"},"UserObjectRequest":{"description":"Represents chat user","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"016"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"021"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettingsRequest","x-stream-index":"022"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"019"}},"required":["id"],"title":"User object","type":"object"},"UserPresenceChangedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.presence.changed","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["type","created_at"],"title":"UserPresenceChangedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserReactivatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.reactivated","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["type","created_at"],"title":"UserReactivatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"UserResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.005"},"ban_expires":{"format":"date-time","type":"string","x-stream-index":"001.015"},"banned":{"type":"boolean","x-stream-index":"001.014"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.007"},"deactivated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.012"},"deleted_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.011"},"id":{"type":"string","x-stream-index":"001.003"},"invisible":{"type":"boolean","x-stream-index":"001.021"},"language":{"type":"string","x-stream-index":"001.031"},"last_active":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.010"},"online":{"readOnly":true,"type":"boolean","x-stream-index":"001.020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"001.023"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.038"},"role":{"type":"string","x-stream-index":"001.004"},"shadow_banned":{"description":"Whether user is shadow banned or not","title":"Shadow banned","type":"boolean","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.032"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.008"}},"required":["id","role","Custom","banned","online","shadow_banned"],"type":"object"},"UserSessionStats":{"properties":{"browser":{"type":"string","x-stream-index":"009"},"browser_version":{"type":"string","x-stream-index":"010"},"current_ip":{"type":"string","x-stream-index":"028"},"current_sfu":{"type":"string","x-stream-index":"029"},"device_model":{"type":"string","x-stream-index":"007"},"device_version":{"type":"string","x-stream-index":"008"},"freeze_duration_seconds":{"format":"float","type":"number","x-stream-index":"023"},"geolocation":{"$ref":"#/components/schemas/GeolocationResult","x-stream-index":"030"},"jitter":{"$ref":"#/components/schemas/Stats","x-stream-index":"011"},"latency":{"$ref":"#/components/schemas/Stats","x-stream-index":"012"},"max_fir_per_minute":{"format":"float","type":"number","x-stream-index":"019"},"max_freezes_per_minute":{"format":"float","type":"number","x-stream-index":"020"},"max_nack_per_minute":{"format":"float","type":"number","x-stream-index":"018"},"max_pli_per_minute":{"format":"float","type":"number","x-stream-index":"017"},"max_publishing_video_quality":{"$ref":"#/components/schemas/VideoQuality","x-stream-index":"016"},"max_receiving_video_quality":{"$ref":"#/components/schemas/VideoQuality","x-stream-index":"025"},"os":{"type":"string","x-stream-index":"002"},"os_version":{"type":"string","x-stream-index":"003"},"packet_loss_fraction":{"format":"float","type":"number","x-stream-index":"021"},"publishing_audio_codec":{"type":"string","x-stream-index":"015"},"publishing_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"014"},"quality_score":{"format":"float","type":"number","x-stream-index":"013"},"receiving_audio_codec":{"type":"string","x-stream-index":"024"},"receiving_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"022"},"sdk":{"type":"string","x-stream-index":"005"},"sdk_version":{"type":"string","x-stream-index":"006"},"subsessions":{"items":{"$ref":"#/components/schemas/Subsession"},"type":"array","x-stream-index":"031"},"timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"001"},"total_pixels_in":{"type":"integer","x-stream-index":"026"},"total_pixels_out":{"type":"integer","x-stream-index":"027"},"webrtc_version":{"type":"string","x-stream-index":"004"}},"required":["quality_score","publishing_duration_seconds","packet_loss_fraction","receiving_duration_seconds","freeze_duration_seconds","total_pixels_in","total_pixels_out"],"type":"object"},"UserStats":{"properties":{"info":{"$ref":"#/components/schemas/UserInfoResponse","x-stream-index":"001"},"session_stats":{"additionalProperties":{"$ref":"#/components/schemas/UserSessionStats"},"type":"object","x-stream-index":"002"}},"required":["info","session_stats"],"type":"object"},"UserUnbannedEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"shadow":{"type":"boolean","x-stream-index":"001"},"team":{"type":"string","x-stream-index":"004.001"},"type":{"default":"user.unbanned","type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"}},"required":["shadow","cid","channel_id","channel_type","type","created_at"],"title":"UserUnbannedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserUpdatedEvent":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.updated","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["type","created_at"],"title":"UserUpdatedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserWatchingStartEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002"},"team":{"type":"string","x-stream-index":"002.001"},"type":{"default":"user.watching.start","type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"UserWatchingStartEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserWatchingStopEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"004.002"},"channel_type":{"type":"string","x-stream-index":"004.003"},"cid":{"type":"string","x-stream-index":"004.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.002"},"type":{"default":"user.watching.stop","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"003.001"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.001"}},"required":["watcher_count","type","created_at","cid","channel_id","channel_type"],"title":"UserWatchingStopEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"users":{"description":"List of found users","items":{"$ref":"#/components/schemas/UserResponse"},"title":"Users","type":"array","x-stream-index":"001"}},"required":["users","duration"],"type":"object"},"VideoQuality":{"properties":{"resolution":{"$ref":"#/components/schemas/VideoResolution","x-stream-index":"001"}},"required":["resolution"],"type":"object"},"VideoResolution":{"properties":{"height":{"format":"int32","type":"integer","x-stream-index":"002"},"width":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["width","height"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VideoSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolutionRequest","x-stream-index":"003"}},"type":"object"},"VoteDataRequest":{"properties":{"Option":{"$ref":"#/components/schemas/PollOptionRequest","x-stream-index":"003"},"answer_text":{"type":"string","x-stream-index":"002"},"option_id":{"maxLength":255,"type":"string","x-stream-index":"001"}},"type":"object"},"WSEvent":{"description":"The discriminator object for all websocket events, it maps events' payload to the final type","discriminator":{"mapping":{"call.accepted":"#/components/schemas/CallAcceptedEvent","call.blocked_user":"#/components/schemas/BlockedUserEvent","call.closed_caption":"#/components/schemas/ClosedCaptionEvent","call.created":"#/components/schemas/CallCreatedEvent","call.deleted":"#/components/schemas/CallDeletedEvent","call.ended":"#/components/schemas/CallEndedEvent","call.hls_broadcasting_failed":"#/components/schemas/CallHLSBroadcastingFailedEvent","call.hls_broadcasting_started":"#/components/schemas/CallHLSBroadcastingStartedEvent","call.hls_broadcasting_stopped":"#/components/schemas/CallHLSBroadcastingStoppedEvent","call.live_started":"#/components/schemas/CallLiveStartedEvent","call.member_added":"#/components/schemas/CallMemberAddedEvent","call.member_removed":"#/components/schemas/CallMemberRemovedEvent","call.member_updated":"#/components/schemas/CallMemberUpdatedEvent","call.member_updated_permission":"#/components/schemas/CallMemberUpdatedPermissionEvent","call.notification":"#/components/schemas/CallNotificationEvent","call.permission_request":"#/components/schemas/PermissionRequestEvent","call.permissions_updated":"#/components/schemas/UpdatedCallPermissionsEvent","call.reaction_new":"#/components/schemas/CallReactionEvent","call.recording_failed":"#/components/schemas/CallRecordingFailedEvent","call.recording_ready":"#/components/schemas/CallRecordingReadyEvent","call.recording_started":"#/components/schemas/CallRecordingStartedEvent","call.recording_stopped":"#/components/schemas/CallRecordingStoppedEvent","call.rejected":"#/components/schemas/CallRejectedEvent","call.ring":"#/components/schemas/CallRingEvent","call.session_ended":"#/components/schemas/CallSessionEndedEvent","call.session_participant_joined":"#/components/schemas/CallSessionParticipantJoinedEvent","call.session_participant_left":"#/components/schemas/CallSessionParticipantLeftEvent","call.session_started":"#/components/schemas/CallSessionStartedEvent","call.transcription_failed":"#/components/schemas/CallTranscriptionFailedEvent","call.transcription_ready":"#/components/schemas/CallTranscriptionReadyEvent","call.transcription_started":"#/components/schemas/CallTranscriptionStartedEvent","call.transcription_stopped":"#/components/schemas/CallTranscriptionStoppedEvent","call.unblocked_user":"#/components/schemas/UnblockedUserEvent","call.updated":"#/components/schemas/CallUpdatedEvent","call.user_muted":"#/components/schemas/CallUserMuted","channel.created":"#/components/schemas/ChannelCreatedEvent","channel.deleted":"#/components/schemas/ChannelDeletedEvent","channel.frozen":"#/components/schemas/ChannelFrozenEvent","channel.hidden":"#/components/schemas/ChannelHiddenEvent","channel.kicked":"#/components/schemas/ChannelKickedEvent","channel.truncated":"#/components/schemas/ChannelTruncatedEvent","channel.unfrozen":"#/components/schemas/ChannelUnFrozenEvent","channel.updated":"#/components/schemas/ChannelUpdatedEvent","channel.visible":"#/components/schemas/ChannelVisibleEvent","connection.error":"#/components/schemas/ConnectionErrorEvent","connection.ok":"#/components/schemas/ConnectedEvent","custom":"#/components/schemas/AnyEvent","health.check":"#/components/schemas/HealthCheckEvent","member.added":"#/components/schemas/MemberAddedEvent","member.removed":"#/components/schemas/MemberRemovedEvent","member.updated":"#/components/schemas/MemberUpdatedEvent","message.deleted":"#/components/schemas/MessageDeletedEvent","message.new":"#/components/schemas/MessageNewEvent","message.read":"#/components/schemas/MessageReadEvent","message.undeleted":"#/components/schemas/MessageUndeletedEvent","message.updated":"#/components/schemas/MessageUpdatedEvent","notification.added_to_channel":"#/components/schemas/NotificationAddedToChannelEvent","notification.channel_deleted":"#/components/schemas/NotificationChannelDeletedEvent","notification.channel_mutes_updated":"#/components/schemas/NotificationChannelMutesUpdatedEvent","notification.channel_truncated":"#/components/schemas/NotificationChannelTruncatedEvent","notification.invite_accepted":"#/components/schemas/NotificationInviteAcceptedEvent","notification.invite_rejected":"#/components/schemas/NotificationInviteRejectedEvent","notification.invited":"#/components/schemas/NotificationInvitedEvent","notification.mark_read":"#/components/schemas/NotificationMarkReadEvent","notification.mark_unread":"#/components/schemas/NotificationMarkUnreadEvent","notification.message_new":"#/components/schemas/NotificationNewMessageEvent","notification.mutes_updated":"#/components/schemas/NotificationMutesUpdatedEvent","notification.removed_from_channel":"#/components/schemas/NotificationRemovedFromChannelEvent","notification.thread_message_new":"#/components/schemas/MessageNewEvent","poll.closed":"#/components/schemas/PollClosedEvent","poll.created":"#/components/schemas/PollCreatedEvent","poll.deleted":"#/components/schemas/PollDeletedEvent","poll.updated":"#/components/schemas/PollUpdatedEvent","poll.vote_casted":"#/components/schemas/PollVoteCastedEvent","poll.vote_changed":"#/components/schemas/PollVoteChangedEvent","poll.vote_removed":"#/components/schemas/PollVoteRemovedEvent","reaction.deleted":"#/components/schemas/ReactionDeletedEvent","reaction.new":"#/components/schemas/ReactionNewEvent","reaction.updated":"#/components/schemas/ReactionUpdatedEvent","thread.updated":"#/components/schemas/ThreadUpdatedEvent","typing.start":"#/components/schemas/TypingStartEvent","typing.stop":"#/components/schemas/TypingStopEvent","user.banned":"#/components/schemas/UserBannedEvent","user.deactivated":"#/components/schemas/UserDeactivatedEvent","user.deleted":"#/components/schemas/UserDeletedEvent","user.muted":"#/components/schemas/UserMutedEvent","user.presence.changed":"#/components/schemas/UserPresenceChangedEvent","user.reactivated":"#/components/schemas/UserReactivatedEvent","user.unbanned":"#/components/schemas/UserUnbannedEvent","user.updated":"#/components/schemas/UserUpdatedEvent","user.watching.start":"#/components/schemas/UserWatchingStartEvent","user.watching.stop":"#/components/schemas/UserWatchingStopEvent"},"propertyName":"type"},"oneOf":[{"$ref":"#/components/schemas/AnyEvent"},{"$ref":"#/components/schemas/BlockedUserEvent"},{"$ref":"#/components/schemas/CallAcceptedEvent"},{"$ref":"#/components/schemas/CallCreatedEvent"},{"$ref":"#/components/schemas/CallDeletedEvent"},{"$ref":"#/components/schemas/CallEndedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingFailedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingStartedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingStoppedEvent"},{"$ref":"#/components/schemas/CallLiveStartedEvent"},{"$ref":"#/components/schemas/CallMemberAddedEvent"},{"$ref":"#/components/schemas/CallMemberRemovedEvent"},{"$ref":"#/components/schemas/CallMemberUpdatedEvent"},{"$ref":"#/components/schemas/CallMemberUpdatedPermissionEvent"},{"$ref":"#/components/schemas/CallNotificationEvent"},{"$ref":"#/components/schemas/CallReactionEvent"},{"$ref":"#/components/schemas/CallRecordingFailedEvent"},{"$ref":"#/components/schemas/CallRecordingReadyEvent"},{"$ref":"#/components/schemas/CallRecordingStartedEvent"},{"$ref":"#/components/schemas/CallRecordingStoppedEvent"},{"$ref":"#/components/schemas/CallRejectedEvent"},{"$ref":"#/components/schemas/CallRingEvent"},{"$ref":"#/components/schemas/CallSessionEndedEvent"},{"$ref":"#/components/schemas/CallSessionParticipantJoinedEvent"},{"$ref":"#/components/schemas/CallSessionParticipantLeftEvent"},{"$ref":"#/components/schemas/CallSessionStartedEvent"},{"$ref":"#/components/schemas/CallTranscriptionFailedEvent"},{"$ref":"#/components/schemas/CallTranscriptionReadyEvent"},{"$ref":"#/components/schemas/CallTranscriptionStartedEvent"},{"$ref":"#/components/schemas/CallTranscriptionStoppedEvent"},{"$ref":"#/components/schemas/CallUpdatedEvent"},{"$ref":"#/components/schemas/CallUserMuted"},{"$ref":"#/components/schemas/ChannelCreatedEvent"},{"$ref":"#/components/schemas/ChannelDeletedEvent"},{"$ref":"#/components/schemas/ChannelFrozenEvent"},{"$ref":"#/components/schemas/ChannelHiddenEvent"},{"$ref":"#/components/schemas/ChannelKickedEvent"},{"$ref":"#/components/schemas/ChannelTruncatedEvent"},{"$ref":"#/components/schemas/ChannelUnFrozenEvent"},{"$ref":"#/components/schemas/ChannelUpdatedEvent"},{"$ref":"#/components/schemas/ChannelVisibleEvent"},{"$ref":"#/components/schemas/ClosedCaptionEvent"},{"$ref":"#/components/schemas/ConnectedEvent"},{"$ref":"#/components/schemas/ConnectionErrorEvent"},{"$ref":"#/components/schemas/HealthCheckEvent"},{"$ref":"#/components/schemas/MemberAddedEvent"},{"$ref":"#/components/schemas/MemberRemovedEvent"},{"$ref":"#/components/schemas/MemberUpdatedEvent"},{"$ref":"#/components/schemas/MessageDeletedEvent"},{"$ref":"#/components/schemas/MessageNewEvent"},{"$ref":"#/components/schemas/MessageNewEvent"},{"$ref":"#/components/schemas/MessageReadEvent"},{"$ref":"#/components/schemas/MessageUndeletedEvent"},{"$ref":"#/components/schemas/MessageUpdatedEvent"},{"$ref":"#/components/schemas/NotificationAddedToChannelEvent"},{"$ref":"#/components/schemas/NotificationChannelDeletedEvent"},{"$ref":"#/components/schemas/NotificationChannelMutesUpdatedEvent"},{"$ref":"#/components/schemas/NotificationChannelTruncatedEvent"},{"$ref":"#/components/schemas/NotificationInviteAcceptedEvent"},{"$ref":"#/components/schemas/NotificationInviteRejectedEvent"},{"$ref":"#/components/schemas/NotificationInvitedEvent"},{"$ref":"#/components/schemas/NotificationMarkReadEvent"},{"$ref":"#/components/schemas/NotificationMarkUnreadEvent"},{"$ref":"#/components/schemas/NotificationMutesUpdatedEvent"},{"$ref":"#/components/schemas/NotificationNewMessageEvent"},{"$ref":"#/components/schemas/NotificationRemovedFromChannelEvent"},{"$ref":"#/components/schemas/PermissionRequestEvent"},{"$ref":"#/components/schemas/PollClosedEvent"},{"$ref":"#/components/schemas/PollCreatedEvent"},{"$ref":"#/components/schemas/PollDeletedEvent"},{"$ref":"#/components/schemas/PollUpdatedEvent"},{"$ref":"#/components/schemas/PollVoteCastedEvent"},{"$ref":"#/components/schemas/PollVoteChangedEvent"},{"$ref":"#/components/schemas/PollVoteRemovedEvent"},{"$ref":"#/components/schemas/ReactionDeletedEvent"},{"$ref":"#/components/schemas/ReactionNewEvent"},{"$ref":"#/components/schemas/ReactionUpdatedEvent"},{"$ref":"#/components/schemas/ThreadUpdatedEvent"},{"$ref":"#/components/schemas/TypingStartEvent"},{"$ref":"#/components/schemas/TypingStopEvent"},{"$ref":"#/components/schemas/UnblockedUserEvent"},{"$ref":"#/components/schemas/UpdatedCallPermissionsEvent"},{"$ref":"#/components/schemas/UserBannedEvent"},{"$ref":"#/components/schemas/UserDeactivatedEvent"},{"$ref":"#/components/schemas/UserDeletedEvent"},{"$ref":"#/components/schemas/UserMutedEvent"},{"$ref":"#/components/schemas/UserPresenceChangedEvent"},{"$ref":"#/components/schemas/UserReactivatedEvent"},{"$ref":"#/components/schemas/UserUnbannedEvent"},{"$ref":"#/components/schemas/UserUpdatedEvent"},{"$ref":"#/components/schemas/UserWatchingStartEvent"},{"$ref":"#/components/schemas/UserWatchingStopEvent"}]},"WrappedUnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"001.004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"001.005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001.001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"001.002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads","duration"],"type":"object"},"XiaomiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"package_name":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"connectRequestQueryRequest":{"nullable":true,"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v105.1.0"},"openapi":"3.0.3","paths":{"/api/v2/app":{"get":{"description":"This Method returns the application settings\n","operationId":"GetApp","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetApplicationResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get App Settings","tags":["Settings"]}},"/api/v2/chat/channels":{"post":{"description":"Query channels with filter query\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryChannels","parameters":[{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"011.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryChannelsRequest"}}},"description":"Query Channels Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelsResponse"}}},"description":"Channels list"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query channels","tags":["Channels"]}},"/api/v2/chat/channels/delete":{"post":{"description":"Allows to delete several channels at once asynchronously\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deletes channels asynchronously","tags":["Channels","GDPR"]}},"/api/v2/chat/channels/read":{"post":{"description":"Marks channels as read up to the specific message. If no channels is given, mark all channel as read\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkChannelsRead","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChannelsReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark channels as read","tags":["Channels","Messages"]}},"/api/v2/chat/channels/{type}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}":{"delete":{"description":"Deletes channel\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"hard_delete","schema":{"type":"boolean","x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel","tags":["Channels"]},"patch":{"description":"Updates certain fields of the channel\n\nSends events:\n- channel.updated\n\nRequired permissions:\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n","operationId":"UpdateChannelPartial","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update channel","tags":["Channels"]},"post":{"description":"Change channel data\n\nSends events:\n- channel.updated\n- member.added\n- member.removed\n- member.updated\n- message.new\n\nRequired permissions:\n- AddOwnChannelMembership\n- RemoveOwnChannelMembership\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n- UpdateChannelMembers\n","operationId":"UpdateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelRequest"}}},"description":"Channel update request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/event":{"post":{"description":"Sends event to the channel\n\nRequired permissions:\n- SendCustomEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send event","tags":["Events"]}},"/api/v2/chat/channels/{type}/{id}/file":{"delete":{"description":"Deletes previously uploaded file\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete file","tags":["Messages","Files"]},"post":{"description":"Uploads file\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload file","tags":["Messages","Files"]}},"/api/v2/chat/channels/{type}/{id}/hide":{"post":{"description":"Marks channel as hidden for current user\n\nSends events:\n- channel.hidden\n\nRequired permissions:\n- ReadChannel\n","operationId":"HideChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Hide channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/image":{"delete":{"description":"Deletes previously uploaded image\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete image","tags":["Messages","Files"]},"post":{"description":"Uploads image\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ImageUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload image","tags":["Messages","Files"]}},"/api/v2/chat/channels/{type}/{id}/message":{"post":{"description":"Sends new message to the specified channel\n\nSends events:\n- message.new\n- message.updated\n\nRequired permissions:\n- AddLinks\n- CreateMessage\n- PinMessage\n- SkipChannelCooldown\n- SkipMessageModeration\n- UseFrozenChannel\n","operationId":"SendMessage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"009.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"009.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send new message","tags":["Messages"]}},"/api/v2/chat/channels/{type}/{id}/messages":{"get":{"description":"Returns list messages found by IDs\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetManyMessages","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"ids","schema":{"description":"List of comma-separated IDs","items":{"type":"string"},"maximum":50,"minimum":1,"title":"IDs","type":"array","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetManyMessagesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get many messages","tags":["Messages"]}},"/api/v2/chat/channels/{type}/{id}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID (maximum length of 64 characters)","title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"connection_id","schema":{"description":"Websocket connection ID to interact with. You can pass it as Body or URL parameter","title":"Connection ID","type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/read":{"post":{"description":"Marks channel as read up to the specific message\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkRead","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark read","tags":["Channels","Messages"]}},"/api/v2/chat/channels/{type}/{id}/show":{"post":{"description":"Shows previously hidden channel\n\nSends events:\n- channel.visible\n","operationId":"ShowChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Show channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/stop-watching":{"post":{"description":"Call this Method to stop receiving channel events\n\nSends events:\n- user.watching.stop\n","operationId":"StopWatchingChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"001.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStopWatchingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopWatchingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop watching channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/truncate":{"post":{"description":"Truncates channel\n\nSends events:\n- channel.truncated\n\nRequired permissions:\n- DeleteChannel\n- TruncateChannel\n","operationId":"TruncateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Truncate channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/unread":{"post":{"description":"Marks channel as unread from a specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkUnread","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkUnreadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark unread","tags":["Channels","Messages"]}},"/api/v2/chat/members":{"get":{"description":"Find and filter channel members\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryMembers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query members","tags":["Channels"]}},"/api/v2/chat/messages/{id}":{"delete":{"description":"Deletes message\n\nSends events:\n- message.deleted\n\nRequired permissions:\n- DeleteMessage\n","operationId":"DeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"hard","schema":{"description":"Delete all message reactions and replies as well","title":"Hard","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"deleted_by","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete message","tags":["Messages"]},"get":{"description":"Returns message by ID\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"show_deleted_message","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageWithPendingMetadataResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get message","tags":["Messages"]},"post":{"description":"Updates message with new data\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update message","tags":["Messages"]},"put":{"description":"Updates certain fields of the message\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessagePartial","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially message update","tags":["Messages"]}},"/api/v2/chat/messages/{id}/action":{"post":{"description":"Executes message command action with given parameters\n\nSends events:\n- message.new\n\nRequired permissions:\n- RunMessageAction\n","operationId":"RunMessageAction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageActionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Run message command action","tags":["Messages"]}},"/api/v2/chat/messages/{id}/reaction":{"post":{"description":"Sends reaction to specified message\n\nSends events:\n- reaction.new\n- reaction.updated\n\nRequired permissions:\n- CreateReaction\n- UseFrozenChannel\n","operationId":"SendReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to send reaction for","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/reaction/{type}":{"delete":{"description":"Removes user reaction from the message\n\nSends events:\n- reaction.deleted\n\nRequired permissions:\n- DeleteReaction\n","operationId":"DeleteReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to remove reaction from","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"type","required":true,"schema":{"description":"Reaction type to remove","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionRemovalResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete reaction","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/reactions":{"get":{"description":"Returns list of reactions of specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReactions","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"limit","schema":{"description":"Number of records to return","format":"int32","title":"Limit","type":"integer","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"offset","schema":{"description":"Number of records to offset","format":"int32","title":"Offset","type":"integer","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetReactionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get reactions","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/translate":{"post":{"description":"Translates message to a given language using automated translation software\n\nSends events:\n- message.updated\n\nRequired permissions:\n- ReadChannel\n","operationId":"TranslateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Translate message","tags":["Messages"]}},"/api/v2/chat/messages/{message_id}/polls/{poll_id}/vote":{"post":{"description":"Cast a vote on a poll\n\nSends events:\n- poll.vote_casted\n\nRequired permissions:\n- CastVote\n","operationId":"CastPollVote","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CastPollVoteRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVoteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Cast vote","tags":["Polls"]}},"/api/v2/chat/messages/{message_id}/polls/{poll_id}/vote/{vote_id}":{"delete":{"description":"Delete a vote from a poll\n\nSends events:\n- poll.vote_removed\n\nRequired permissions:\n- CastVote\n","operationId":"RemovePollVote","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"path","name":"vote_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"004"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVoteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete vote","tags":["Polls"]}},"/api/v2/chat/messages/{parent_id}/replies":{"get":{"description":"Returns replies (thread) of the message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReplies","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"description":"ID of a message which replies to return","title":"Parent ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"id_gte","schema":{"type":"string","x-stream-index":"002.001.003"}},{"in":"query","name":"id_gt","schema":{"type":"string","x-stream-index":"002.001.004"}},{"in":"query","name":"id_lte","schema":{"type":"string","x-stream-index":"002.001.005"}},{"in":"query","name":"id_lt","schema":{"type":"string","x-stream-index":"002.001.006"}},{"in":"query","name":"created_at_after_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.007"}},{"in":"query","name":"created_at_after","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.008"}},{"in":"query","name":"created_at_before_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.009"}},{"in":"query","name":"created_at_before","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.010"}},{"in":"query","name":"id_around","schema":{"type":"string","x-stream-index":"002.001.011"}},{"in":"query","name":"created_at_around","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.012"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get replies","tags":["Messages"]}},"/api/v2/chat/moderation/ban":{"delete":{"description":"Removes previously applied ban\n\nSends events:\n- user.unbanned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Unban","parameters":[{"in":"query","name":"target_user_id","schema":{"type":"string","x-stream-index":"001"}},{"in":"query","name":"type","schema":{"type":"string","x-stream-index":"002"}},{"in":"query","name":"id","schema":{"type":"string","x-stream-index":"003"}},{"in":"query","name":"created_by","schema":{"type":"string","x-stream-index":"004"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unban user","tags":["Users","Moderation"]},"post":{"description":"Restricts user activity either in specific channel or globally\n\nSends events:\n- user.banned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Ban","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BanRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Ban user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/flag":{"post":{"description":"Reports message or user for review by moderators\n\nSends events:\n- message.flagged\n- user.flagged\n\nRequired permissions:\n- FlagMessage\n- FlagUser\n","operationId":"Flag","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Flag","tags":["Moderation","Messages","Users"]}},"/api/v2/chat/moderation/flags/message":{"get":{"description":"Find and filter message flags\n\nRequired permissions:\n- ReadMessageFlags\n","operationId":"QueryMessageFlags","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Message Flags","tags":["Messages","Moderation"]}},"/api/v2/chat/moderation/mute":{"post":{"description":"Mutes one or several users\n\nSends events:\n- user.muted\n\nRequired permissions:\n- MuteUser\n","operationId":"MuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/mute/channel":{"post":{"description":"Mutes channel for user\n\nSends events:\n- channel.muted\n\nRequired permissions:\n- MuteChannel\n","operationId":"MuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute channel","tags":["Channels"]}},"/api/v2/chat/moderation/unmute":{"post":{"description":"Unmutes previously muted user\n\nSends events:\n- user.unmuted\n\nRequired permissions:\n- MuteUser\n","operationId":"UnmuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/unmute/channel":{"post":{"description":"Unmutes channel for user\n\nSends events:\n- channel.unmuted\n\nRequired permissions:\n- MuteChannel\n","operationId":"UnmuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute channel","tags":["Channels"]}},"/api/v2/chat/polls":{"post":{"description":"Creates a new poll\n\nSends events:\n- poll.created\n\nRequired permissions:\n- CreatePoll\n","operationId":"CreatePoll","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePollRequest"}}},"description":"Create Poll Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create poll","tags":["Polls"]},"put":{"description":"Updates a poll\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePoll","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update poll","tags":["Polls"]}},"/api/v2/chat/polls/query":{"post":{"description":"Queries polls\n","operationId":"QueryPolls","parameters":[{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query polls","tags":["Polls"]}},"/api/v2/chat/polls/{poll_id}":{"delete":{"description":"Deletes a poll\n\nSends events:\n- poll.deleted\n\nRequired permissions:\n- DeletePoll\n","operationId":"DeletePoll","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete poll","tags":["Polls"]},"get":{"description":"Retrieves a poll\n","operationId":"GetPoll","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get poll","tags":["Polls"]},"patch":{"description":"Updates a poll partially\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePollPartial","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partial update poll","tags":["Polls"]}},"/api/v2/chat/polls/{poll_id}/options":{"post":{"description":"Creates a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- CastVote\n- UpdatePoll\n","operationId":"CreatePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePollOptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create poll option","tags":["Polls"]},"put":{"description":"Updates a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollOptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update poll option","tags":["Polls"]}},"/api/v2/chat/polls/{poll_id}/options/{option_id}":{"delete":{"description":"Deletes a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"DeletePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"path","name":"option_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete poll option","tags":["Polls"]},"get":{"description":"Retrieves a poll option\n","operationId":"GetPollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"path","name":"option_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get poll option","tags":["Polls"]}},"/api/v2/chat/polls/{poll_id}/votes":{"post":{"description":"Queries votes\n","operationId":"QueryPollVotes","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollVotesRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVotesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query votes","tags":["Polls"]}},"/api/v2/chat/query_banned_users":{"get":{"description":"Find and filter channel scoped or global user bans\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryBannedUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Banned Users","tags":["Users","Moderation"]}},"/api/v2/chat/search":{"get":{"description":"Search messages across channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Search","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest","description":"JSON object with search payload","title":"Payload","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Search messages","tags":["Channels","Messages"]}},"/api/v2/chat/sync":{"post":{"description":"Returns all events happened since client disconnect in specified channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Sync","parameters":[{"in":"query","name":"with_inaccessible_cids","schema":{"description":"If set to true this will add 'inaccessible_cids' to response type","title":"With inaccessible CIDs","type":"boolean","x-stream-index":"003"}},{"in":"query","name":"watch","schema":{"description":"If set to true this will start watching requested and newly added channels that user has access to. If error occurred with this option enabled and it is not an input error - channels will still be watched.","title":"Watch synced channels","type":"boolean","x-stream-index":"004"}},{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"006.003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Sync","tags":["Channels","Events"]}},"/api/v2/chat/threads":{"post":{"description":"Returns the list of threads for specific user\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryThreads","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Threads","tags":["Threads"]}},"/api/v2/chat/threads/{message_id}":{"get":{"description":"Return a specific thread\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetThread","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"watch","schema":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"reply_limit","schema":{"description":"Limit the number of replies returned","format":"int32","minimum":0,"title":"Reply limit","type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"participant_limit","schema":{"description":"Limit the number of participants returned","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetThreadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Thread","tags":["Threads"]},"patch":{"description":"Updates certain fields of the thread\n\nSends events:\n- thread.updated\n\nRequired permissions:\n- ReadChannel\n- UpdateThread\n","operationId":"UpdateThreadPartial","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update thread","tags":["Threads","Channels"]}},"/api/v2/chat/unread":{"get":{"description":"Fetch unread counts for a single user\n","operationId":"UnreadCounts","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WrappedUnreadCountsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unread counts","tags":["Channels"]}},"/api/v2/connect":{"get":{"description":"Establishes WebSocket connection for user\n\nSends events:\n- user.updated\n","operationId":"Connect","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Connect (WebSocket)","tags":["Users"]}},"/api/v2/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device","tags":["Devices"]},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices","tags":["Devices"]},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device","tags":["Devices","Push"]}},"/api/v2/guest":{"post":{"description":"Creates guest user\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create guest","tags":["Users"]}},"/api/v2/longpoll":{"get":{"description":"WebSocket fallback transport endpoint\n\nSends events:\n- user.updated\n","operationId":"LongPoll","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"},{"in":"query","name":"connection_id","schema":{"maxLength":36,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Long Poll (Transport)","tags":["Users"]}},"/api/v2/og":{"get":{"description":"Get an OpenGraph attachment for a link\n","operationId":"GetOG","parameters":[{"in":"query","name":"url","schema":{"description":"URL to be scraped","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOGResponse"}}},"description":"Get OG Attachment"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get OG","tags":["Messages"]}},"/api/v2/users":{"get":{"description":"Find and filter users\n\nRequired permissions:\n- SearchUser\n","operationId":"QueryUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query users","tags":["Users"]},"patch":{"description":"Updates certain fields of the user\n\nSends events:\n- user.presence.changed\n- user.updated\n","operationId":"UpdateUsersPartial","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update user","tags":["Users"]},"post":{"description":"Update or create users in bulk\n\nSends events:\n- user.updated\n","operationId":"UpdateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert users","tags":["Users"]}},"/api/v2/video/call/members":{"post":{"description":"Query call members with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryMembers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest_1"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call members"}},"/api/v2/video/call/stats":{"post":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"QueryCallStats","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Call Stats"}},"/api/v2/video/call/{type}/{id}":{"get":{"description":"\n\nRequired permissions:\n- ReadCall\n","operationId":"GetCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"members_limit","schema":{"format":"int32","maximum":100,"minimum":0,"type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"ring","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"005"}},{"in":"query","name":"notify","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"006"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call"},"patch":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"UpdateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallResponse"}}},"description":"Call"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call"},"post":{"description":"Gets or creates a new call\n\nSends events:\n- call.created\n- call.notification\n- call.ring\n\nRequired permissions:\n- CreateCall\n- ReadCall\n- UpdateCallSettings\n","operationId":"GetOrCreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create a call"}},"/api/v2/video/call/{type}/{id}/accept":{"post":{"description":"\n\nSends events:\n- call.accepted\n\nRequired permissions:\n- JoinCall\n","operationId":"AcceptCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AcceptCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Accept Call"}},"/api/v2/video/call/{type}/{id}/block":{"post":{"description":"Block a user, preventing them from joining the call until they are unblocked.\n\nSends events:\n- call.blocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"BlockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Block user on a call"}},"/api/v2/video/call/{type}/{id}/event":{"post":{"description":"Sends custom event to the call\n\nSends events:\n- custom\n\nRequired permissions:\n- SendEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send custom event"}},"/api/v2/video/call/{type}/{id}/feedback/{session}":{"post":{"description":"\n\nRequired permissions:\n- JoinCall\n","operationId":"CollectUserFeedback","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Collect user feedback"}},"/api/v2/video/call/{type}/{id}/go_live":{"post":{"description":"\n\nSends events:\n- call.live_started\n\nRequired permissions:\n- UpdateCall\n","operationId":"GoLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as live"}},"/api/v2/video/call/{type}/{id}/join":{"post":{"description":"Request to join a call\n\nRequired permissions:\n- CreateCall\n- JoinCall\n","operationId":"JoinCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"title":"ConnectionID","type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Join call"}},"/api/v2/video/call/{type}/{id}/mark_ended":{"post":{"description":"\n\nSends events:\n- call.ended\n\nRequired permissions:\n- EndCall\n","operationId":"EndCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"End call"}},"/api/v2/video/call/{type}/{id}/members":{"post":{"description":"\n\nSends events:\n- call.member_added\n- call.member_removed\n- call.member_updated\n\nRequired permissions:\n- RemoveCallMember\n- UpdateCallMember\n- UpdateCallMemberRole\n","operationId":"UpdateCallMembers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Member"}},"/api/v2/video/call/{type}/{id}/mute_users":{"post":{"description":"Mutes users in a call\n\nRequired permissions:\n- MuteUsers\n","operationId":"MuteUsers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute users"}},"/api/v2/video/call/{type}/{id}/pin":{"post":{"description":"Pins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoPin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Pin"}},"/api/v2/video/call/{type}/{id}/reaction":{"post":{"description":"Sends reaction to the call\n\nSends events:\n- call.reaction_new\n\nRequired permissions:\n- CreateCallReaction\n","operationId":"SendVideoReaction","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction to the call"}},"/api/v2/video/call/{type}/{id}/recordings":{"get":{"description":"Lists recordings\n\nRequired permissions:\n- ListRecordings\n","operationId":"ListRecordings","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRecordingsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List recordings"}},"/api/v2/video/call/{type}/{id}/reject":{"post":{"description":"\n\nSends events:\n- call.rejected\n\nRequired permissions:\n- JoinCall\n","operationId":"RejectCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RejectCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reject Call"}},"/api/v2/video/call/{type}/{id}/request_permission":{"post":{"description":"Request permission to perform an action\n\nSends events:\n- call.permission_request\n","operationId":"RequestPermission","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestPermissionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestPermissionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Request permission"}},"/api/v2/video/call/{type}/{id}/start_broadcasting":{"post":{"description":"Starts HLS broadcasting\n\nRequired permissions:\n- StartBroadcasting\n","operationId":"StartHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start HLS broadcasting"}},"/api/v2/video/call/{type}/{id}/start_recording":{"post":{"description":"Starts recording\n\nSends events:\n- call.recording_started\n\nRequired permissions:\n- StartRecording\n","operationId":"StartRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start recording"}},"/api/v2/video/call/{type}/{id}/start_transcription":{"post":{"description":"Starts transcription\n\nRequired permissions:\n- StartTranscription\n","operationId":"StartTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start transcription"}},"/api/v2/video/call/{type}/{id}/stats/{session}":{"get":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"GetCallStats","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Stats"}},"/api/v2/video/call/{type}/{id}/stop_broadcasting":{"post":{"description":"Stops HLS broadcasting\n\nRequired permissions:\n- StopBroadcasting\n","operationId":"StopHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop HLS broadcasting"}},"/api/v2/video/call/{type}/{id}/stop_live":{"post":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"StopLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as not live"}},"/api/v2/video/call/{type}/{id}/stop_recording":{"post":{"description":"Stops recording\n\nSends events:\n- call.recording_stopped\n\nRequired permissions:\n- StopRecording\n","operationId":"StopRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop recording"}},"/api/v2/video/call/{type}/{id}/stop_transcription":{"post":{"description":"Stops transcription\n\nSends events:\n- call.transcription_stopped\n\nRequired permissions:\n- StopTranscription\n","operationId":"StopTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop transcription"}},"/api/v2/video/call/{type}/{id}/transcriptions":{"get":{"description":"Lists transcriptions\n\nRequired permissions:\n- ListTranscriptions\n","operationId":"ListTranscriptions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTranscriptionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List transcriptions"}},"/api/v2/video/call/{type}/{id}/unblock":{"post":{"description":"Removes the block for a user on a call. The user will be able to join the call again.\n\nSends events:\n- call.unblocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"UnblockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unblocks user on a call"}},"/api/v2/video/call/{type}/{id}/unpin":{"post":{"description":"Unpins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoUnpin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unpin"}},"/api/v2/video/call/{type}/{id}/user_permissions":{"post":{"description":"Updates user permissions\n\nSends events:\n- call.permissions_updated\n\nRequired permissions:\n- UpdateCallPermissions\n","operationId":"UpdateUserPermissions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update user permissions"}},"/api/v2/video/calls":{"post":{"description":"Query calls with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryCalls","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call"}},"/api/v2/video/edges":{"get":{"description":"Returns the list of all edges available for video calls.\n","operationId":"GetEdges","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEdgesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Edges"}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file diff --git a/openapi/clientside-api.yaml b/openapi/clientside-api.yaml index a6ff0d64..99fcd9de 100644 --- a/openapi/clientside-api.yaml +++ b/openapi/clientside-api.yaml @@ -177,7 +177,7 @@ components: properties: agora_options: $ref: '#/components/schemas/Config' - x-stream-index: "001.038" + x-stream-index: "001.039" allowed_flag_reasons: items: type: string @@ -203,7 +203,7 @@ components: cdn_expiration_seconds: format: int32 type: integer - x-stream-index: "001.036" + x-stream-index: "001.037" channel_configs: additionalProperties: $ref: '#/components/schemas/ChannelConfig' @@ -218,7 +218,7 @@ components: x-stream-index: "001.021" datadog_info: $ref: '#/components/schemas/DataDogInfo' - x-stream-index: "001.041" + x-stream-index: "001.042" disable_auth_checks: type: boolean x-stream-index: "001.010" @@ -235,7 +235,7 @@ components: items: $ref: '#/components/schemas/GeofenceResponse' type: array - x-stream-index: "001.040" + x-stream-index: "001.041" grants: additionalProperties: items: @@ -245,7 +245,7 @@ components: x-stream-index: "001.032" hms_options: $ref: '#/components/schemas/Config' - x-stream-index: "001.039" + x-stream-index: "001.040" image_moderation_enabled: type: boolean x-stream-index: "001.015" @@ -276,13 +276,16 @@ components: type: array type: object x-stream-index: "001.007" + polls_enabled: + type: boolean + x-stream-index: "001.034" push_notifications: $ref: '#/components/schemas/PushNotificationFields' x-stream-index: "001.003" reminders_interval: format: int32 type: integer - x-stream-index: "001.035" + x-stream-index: "001.036" revoke_tokens_issued_before: format: date-time type: string @@ -318,12 +321,12 @@ components: x-stream-index: "001.013" video_provider: type: string - x-stream-index: "001.037" + x-stream-index: "001.038" webhook_events: items: type: string type: array - x-stream-index: "001.034" + x-stream-index: "001.035" webhook_url: type: string x-stream-index: "001.004" @@ -356,6 +359,7 @@ components: - image_upload_config - grants - campaign_enabled + - polls_enabled - webhook_events - reminders_interval - cdn_expiration_seconds @@ -367,7 +371,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "018" + x-stream-index: "020" actions: items: $ref: '#/components/schemas/Action' @@ -404,21 +408,27 @@ components: x-stream-index: "014" giphy: $ref: '#/components/schemas/Images' - x-stream-index: "019" + x-stream-index: "021" image_url: type: string x-stream-index: "011" og_scrape_url: type: string - x-stream-index: "020" + x-stream-index: "022" original_height: format: int32 type: integer - x-stream-index: "022" + x-stream-index: "024" original_width: format: int32 type: integer - x-stream-index: "021" + x-stream-index: "023" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "019" + poll_id: + type: string + x-stream-index: "018" pretext: type: string x-stream-index: "004" @@ -435,7 +445,7 @@ components: type: string x-stream-index: "009" type: - description: Attachment type (e.g. image, video, url) + description: Attachment type (e.g. image, video, url, poll) title: Type type: string x-stream-index: "001" @@ -450,7 +460,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "018" + x-stream-index: "020" actions: items: $ref: '#/components/schemas/ActionRequest' @@ -487,21 +497,27 @@ components: x-stream-index: "014" giphy: $ref: '#/components/schemas/ImagesRequest' - x-stream-index: "019" + x-stream-index: "021" image_url: type: string x-stream-index: "011" og_scrape_url: type: string - x-stream-index: "020" + x-stream-index: "022" original_height: format: int32 type: integer - x-stream-index: "022" + x-stream-index: "024" original_width: format: int32 type: integer - x-stream-index: "021" + x-stream-index: "023" + poll: + $ref: '#/components/schemas/PollRequest' + x-stream-index: "019" + poll_id: + type: string + x-stream-index: "018" pretext: type: string x-stream-index: "004" @@ -518,7 +534,7 @@ components: type: string x-stream-index: "009" type: - description: Attachment type (e.g. image, video, url) + description: Attachment type (e.g. image, video, url, poll) title: Type type: string x-stream-index: "001" @@ -539,6 +555,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettings' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -570,6 +589,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettingsRequest' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -984,20 +1006,25 @@ components: properties: description: type: string - x-stream-index: "003" + x-stream-index: "004" + end_timestamp: + format: int64 + type: integer + x-stream-index: "002" severity: format: int32 type: integer - x-stream-index: "002" + x-stream-index: "003" timestamp: format: int32 type: integer x-stream-index: "001" type: type: string - x-stream-index: "004" + x-stream-index: "005" required: - timestamp + - end_timestamp - severity - description - type @@ -2370,6 +2397,19 @@ components: x-stream-event-call-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent + CastPollVoteRequest: + nullable: true + properties: + poll_id: + maxLength: 255 + type: string + x-stream-index: "002" + vote: + $ref: '#/components/schemas/VoteDataRequest' + x-stream-index: "003" + required: + - poll_id + type: object Channel: properties: Custom: @@ -2464,39 +2504,39 @@ components: items: type: string type: array - x-stream-index: "001.023" + x-stream-index: "001.024" automod: enum: - disabled - simple - AI type: string - x-stream-index: "001.018" + x-stream-index: "001.019" automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: "001.019" + x-stream-index: "001.020" automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: "001.024" + x-stream-index: "001.025" blocklist: type: string - x-stream-index: "001.020" + x-stream-index: "001.021" blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: "001.021" + x-stream-index: "001.022" blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: "001.022" + x-stream-index: "001.023" commands: description: List of commands that channel supports items: @@ -2521,16 +2561,19 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: "001.017" + x-stream-index: "001.018" message_retention: type: string - x-stream-index: "001.016" + x-stream-index: "001.017" mutes: type: boolean x-stream-index: "001.009" name: type: string x-stream-index: "001.001" + polls: + type: boolean + x-stream-index: "001.016" push_notifications: type: boolean x-stream-index: "001.013" @@ -2581,6 +2624,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -2662,39 +2706,39 @@ components: items: type: string type: array - x-stream-index: 001.002.023 + x-stream-index: 001.002.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 001.002.018 + x-stream-index: 001.002.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.002.019 + x-stream-index: 001.002.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 001.002.024 + x-stream-index: 001.002.025 blocklist: type: string - x-stream-index: 001.002.020 + x-stream-index: 001.002.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.002.021 + x-stream-index: 001.002.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 001.002.022 + x-stream-index: 001.002.023 commands: items: $ref: '#/components/schemas/Command' @@ -2729,16 +2773,19 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 001.002.017 + x-stream-index: 001.002.018 message_retention: type: string - x-stream-index: 001.002.016 + x-stream-index: 001.002.017 mutes: type: boolean x-stream-index: 001.002.009 name: type: string x-stream-index: 001.002.001 + polls: + type: boolean + x-stream-index: 001.002.016 push_notifications: type: boolean x-stream-index: 001.002.013 @@ -2791,6 +2838,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -3972,6 +4020,91 @@ components: type: boolean x-stream-index: "004" type: object + CreatePollOptionRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "004" + poll_id: + maxLength: 255 + type: string + x-stream-index: "001" + position: + format: int32 + type: integer + x-stream-index: "003" + text: + type: string + x-stream-index: "002" + required: + - poll_id + - text + type: object + CreatePollRequest: + description: Contains all information needed to create a new poll + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "011" + allow_answers: + description: Indicates whether users can suggest user defined answers + title: Allow answers + type: boolean + x-stream-index: "009" + allow_user_suggested_options: + type: boolean + x-stream-index: "008" + description: + description: A description of the poll + title: Description + type: string + x-stream-index: "003" + enforce_unique_vote: + description: Indicates whether users can cast multiple votes + title: Multiple choice + type: boolean + x-stream-index: "006" + id: + maxLength: 255 + type: string + x-stream-index: "001" + is_closed: + description: Indicates whether the poll is open for voting + title: Is closed + type: boolean + x-stream-index: "010" + max_votes_allowed: + description: Indicates the maximum amount of votes a user can cast + format: int32 + maximum: 10 + title: Maximum votes allowed + type: integer + x-stream-index: "007" + name: + description: The name of the poll + title: Name + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionRequest_1' + maximum: 100 + type: array + x-stream-index: "004" + voting_visibility: + enum: + - anonymous + - public + type: string + x-stream-index: "005" + required: + - name + title: Create Poll Request + type: object Credentials: properties: ice_servers: @@ -4602,6 +4735,38 @@ components: type: array x-stream-index: "001" type: object + GeolocationResult: + properties: + AccuracyRadius: + format: int32 + type: integer + writeOnly: true + x-stream-index: "003" + continent_code: + type: string + x-stream-index: "002.003" + country_iso_code: + type: string + x-stream-index: "002.002" + latitude: + format: float + type: number + x-stream-index: "001.001" + longitude: + format: float + type: number + x-stream-index: "001.002" + subdivision_iso_code: + type: string + x-stream-index: "002.001" + required: + - latitude + - longitude + - subdivision_iso_code + - country_iso_code + - continent_code + - AccuracyRadius + type: object GetApplicationResponse: nullable: true properties: @@ -4657,30 +4822,38 @@ components: type: number x-stream-index: "004" call_duration_seconds: - format: int64 + format: int32 type: integer x-stream-index: "002" call_timeline: $ref: '#/components/schemas/CallTimeline' - x-stream-index: "012" + x-stream-index: "014" duration: description: Duration of the request in human-readable format title: Duration type: string x-stream-index: "001.001" + max_jitter: + format: float + type: number + x-stream-index: "007" + max_latency: + format: float + type: number + x-stream-index: "006" max_participants: format: int32 type: integer - x-stream-index: "006" + x-stream-index: "008" participant_report: additionalProperties: $ref: '#/components/schemas/UserStats' type: object - x-stream-index: "013" + x-stream-index: "015" publishing_participants: format: int32 type: integer - x-stream-index: "007" + x-stream-index: "009" quality_score: format: int32 type: integer @@ -4688,26 +4861,28 @@ components: sfu_count: format: int32 type: integer - x-stream-index: "008" + x-stream-index: "010" sfus: items: $ref: '#/components/schemas/SFULocationResponse' type: array - x-stream-index: "011" + x-stream-index: "013" total_freezes_duration: format: float type: number - x-stream-index: "010" + x-stream-index: "012" total_quality_limitation_duration: format: float type: number - x-stream-index: "009" + x-stream-index: "011" required: - duration - call_duration_seconds - quality_score - average_latency - average_jitter + - max_latency + - max_jitter - max_participants - publishing_participants - sfu_count @@ -4756,7 +4931,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "001.018" + x-stream-index: "001.020" actions: items: $ref: '#/components/schemas/Action' @@ -4802,7 +4977,7 @@ components: x-stream-index: "001.014" giphy: $ref: '#/components/schemas/Images' - x-stream-index: "001.019" + x-stream-index: "001.021" image_url: description: URL of detected image title: Image URL @@ -4812,15 +4987,21 @@ components: description: extracted url from the text title: OG Scrape URL type: string - x-stream-index: "001.020" + x-stream-index: "001.022" original_height: format: int32 type: integer - x-stream-index: "001.022" + x-stream-index: "001.024" original_width: format: int32 type: integer - x-stream-index: "001.021" + x-stream-index: "001.023" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001.019" + poll_id: + type: string + x-stream-index: "001.018" pretext: type: string x-stream-index: "001.004" @@ -5965,6 +6146,14 @@ components: title: Pinned by x-stream-docs-page-id: pinned_messages x-stream-index: "047" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "051" + poll_id: + description: Identifier of the poll to include in the message + title: Poll ID + type: string + x-stream-index: "050" quoted_message: $ref: '#/components/schemas/Message' description: Contains quoted message @@ -6074,6 +6263,7 @@ components: - mentioned_users - silent - pinned + - poll_id title: Message type: object x-stream-docs-page-id: send_message @@ -6310,7 +6500,7 @@ components: type: array x-stream-index: "001.002" type: - default: message.new + default: notification.thread_message_new type: string x-stream-index: "004.001" user: @@ -6457,6 +6647,9 @@ components: nullable: true type: string x-stream-index: "014" + poll_id: + type: string + x-stream-index: "038" quoted_message_id: type: string x-stream-index: "009" @@ -6768,6 +6961,28 @@ components: required: - duration type: object + NoiseCancellationSettings: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + required: + - mode + type: object + NoiseCancellationSettingsRequest: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + type: object NotificationAddedToChannelEvent: properties: channel: @@ -7309,6 +7524,7 @@ components: - block-users - create-call - create-reaction + - enable-noise-cancellation - end-call - join-backstage - join-call @@ -7649,238 +7865,217 @@ components: - created_at - updated_at type: object - PushNotificationFields: + Poll: properties: - apn: - $ref: '#/components/schemas/APNConfigFields' - x-stream-index: "002" - firebase: - $ref: '#/components/schemas/FirebaseConfigFields' - x-stream-index: "003" - huawei: - $ref: '#/components/schemas/HuaweiConfigFields' - x-stream-index: "004" - offline_only: - type: boolean - x-stream-index: "001.002" - providers: - items: - $ref: '#/components/schemas/PushProvider' - type: array - x-stream-index: "006" - version: - type: string - x-stream-index: "001.001" - xiaomi: - $ref: '#/components/schemas/XiaomiConfigFields' - x-stream-index: "005" - required: - - version - - offline_only - - apn - - firebase - - huawei - - xiaomi - type: object - PushNotificationSettings: - properties: - disabled: + Custom: + type: object + writeOnly: true + x-stream-index: "023" + allow_answers: type: boolean - x-stream-index: "001" - disabled_until: - format: date-time - type: string - x-stream-index: "002" - type: object - PushNotificationSettingsRequest: - properties: - disabled: - $ref: '#/components/schemas/NullBoolRequest' - x-stream-index: "001" - disabled_until: - $ref: '#/components/schemas/NullTimeRequest' - x-stream-index: "002" - type: object - PushProvider: - nullable: true - properties: - apn_auth_key: - type: string - x-stream-index: "012" - apn_auth_type: - type: string - x-stream-index: "017" - apn_development: + x-stream-index: "010" + allow_user_suggested_options: type: boolean - x-stream-index: "018" - apn_host: - type: string - x-stream-index: "019" - apn_key_id: - type: string - x-stream-index: "013" - apn_notification_template: - type: string - x-stream-index: "020" - apn_p12_cert: - type: string - x-stream-index: "014" - apn_team_id: - type: string + x-stream-index: "009" + answers_count: + format: int32 + type: integer x-stream-index: "015" - apn_topic: - type: string - x-stream-index: "016" created_at: format: date-time type: string - x-stream-index: "008" + x-stream-index: "021" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "020" + created_by_id: + type: string + x-stream-index: "019" description: - maxLength: 128 type: string + x-stream-index: "005" + enforce_unique_vote: + type: boolean x-stream-index: "007" - disabled_at: - format: date-time - type: string - x-stream-index: "010" - disabled_reason: - maxLength: 255 + id: type: string + x-stream-index: "003" + is_closed: + type: boolean x-stream-index: "011" - firebase_apn_template: - type: string - x-stream-index: "025" - firebase_credentials: - type: string - x-stream-index: "022" - firebase_data_template: - type: string - x-stream-index: "023" - firebase_host: - type: string - x-stream-index: "026" - firebase_notification_template: - type: string - x-stream-index: "024" - firebase_server_key: - type: string - x-stream-index: "021" - huawei_app_id: - type: string - x-stream-index: "027" - huawei_app_secret: - type: string - x-stream-index: "028" + latest_answers: + items: + $ref: '#/components/schemas/PollVote' + type: array + x-stream-index: "017" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVote' + type: array + type: object + x-stream-index: "016" + max_votes_allowed: + format: int32 + type: integer + x-stream-index: "008" name: - maxLength: 36 - minLength: 1 type: string - x-stream-index: "005" - type: - type: integer - x-stream-index: "006" + x-stream-index: "004" + options: + items: + $ref: '#/components/schemas/PollOption' + type: array + x-stream-index: "013" + own_votes: + items: + $ref: '#/components/schemas/PollVote' + type: array + x-stream-index: "018" updated_at: format: date-time type: string - x-stream-index: "009" - xiaomi_app_secret: - type: string - x-stream-index: "030" - xiaomi_package_name: + x-stream-index: "022" + vote_count: + format: int32 + type: integer + x-stream-index: "012" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "014" + voting_visibility: type: string - x-stream-index: "029" + x-stream-index: "006" required: + - id - name - - type + - description + - enforce_unique_vote + - allow_user_suggested_options + - allow_answers + - vote_count + - options + - vote_counts_by_option + - answers_count + - latest_votes_by_option + - latest_answers + - own_votes + - created_by_id - created_at - updated_at + - Custom type: object - QueryBannedUsersRequest: + PollClosedEvent: properties: - created_at_after: - format: date-time - type: string - x-stream-index: "003.006" - created_at_after_or_equal: + created_at: format: date-time type: string - x-stream-index: "003.005" - created_at_before: - format: date-time + x-stream-index: "002.002" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001" + type: + default: poll.closed type: string - x-stream-index: "003.008" - created_at_before_or_equal: + x-stream-index: "002.001" + required: + - type + - created_at + title: PollClosedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollCreatedEvent: + properties: + created_at: format: date-time type: string - x-stream-index: "003.007" - exclude_expired_bans: - type: boolean - x-stream-index: "006" - filter_conditions: - type: object + x-stream-index: "002.002" + poll: + $ref: '#/components/schemas/Poll' x-stream-index: "001" - limit: - format: int32 - maximum: 300 - type: integer - x-stream-index: "004" - offset: - format: int32 - maximum: 10000 - type: integer - x-stream-index: "005" - sort: - items: - $ref: '#/components/schemas/SortParam' - maximum: 1 - type: array - x-stream-index: "002" + type: + default: poll.created + type: string + x-stream-index: "002.001" required: - - filter_conditions + - type + - created_at + title: PollCreatedEvent type: object - QueryBannedUsersResponse: - nullable: true + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollDeletedEvent: properties: - bans: - items: - $ref: '#/components/schemas/BanResponse' - type: array + created_at: + format: date-time + type: string + x-stream-index: "002.002" + poll: + $ref: '#/components/schemas/Poll' x-stream-index: "001" - duration: - description: Duration of the request in human-readable format - title: Duration + type: + default: poll.deleted type: string x-stream-index: "002.001" required: - - bans - - duration + - type + - created_at + title: PollDeletedEvent type: object - QueryCallStatsRequest: + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollOption: nullable: true properties: - filter_conditions: + custom: type: object + x-stream-index: "003" + id: + maxLength: 255 + type: string x-stream-index: "001" - limit: - format: int32 - maximum: 25 - minimum: 0 - type: integer - x-stream-index: "004.001" - next: + text: type: string - x-stream-index: "004.002" - prev: + x-stream-index: "002" + required: + - id + - text + - custom + type: object + PollOptionRequest: + nullable: true + properties: + custom: + type: object + x-stream-index: "003" + id: + maxLength: 255 + type: string + x-stream-index: "001" + text: type: string - x-stream-index: "004.003" - sort: - items: - $ref: '#/components/schemas/SortParamRequest' - maximum: 2 - type: array x-stream-index: "002" + required: + - id type: object - QueryCallStatsResponse: + PollOptionRequest_1: + nullable: true + properties: + custom: + type: object + x-stream-index: "003" + text: + type: string + x-stream-index: "002" + type: object + PollOptionResponse: nullable: true properties: duration: @@ -7888,302 +8083,385 @@ components: title: Duration type: string x-stream-index: "002.001" - next: - type: string - x-stream-index: "003.001" - prev: - type: string - x-stream-index: "003.002" - reports: - items: - $ref: '#/components/schemas/CallStatsReportSummaryResponse' - type: array + poll_option: + $ref: '#/components/schemas/PollOptionResponseData' x-stream-index: "001" required: - - reports + - poll_option - duration type: object - QueryCallsRequest: + PollOptionResponseData: nullable: true properties: - filter_conditions: + custom: type: object x-stream-index: "003" - limit: + id: + type: string + x-stream-index: "001" + text: + type: string + x-stream-index: "002" + required: + - id + - text + - custom + type: object + PollRequest: + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "023" + allow_answers: + type: boolean + x-stream-index: "010" + allow_user_suggested_options: + type: boolean + x-stream-index: "009" + answers_count: format: int32 - maximum: 25 - minimum: 0 type: integer - x-stream-index: "006.001" - next: + x-stream-index: "015" + created_at: + format: date-time type: string - x-stream-index: "006.002" - prev: + x-stream-index: "021" + created_by: + $ref: '#/components/schemas/UserObjectRequest' + x-stream-index: "020" + created_by_id: type: string - x-stream-index: "006.003" - sort: + x-stream-index: "019" + description: + type: string + x-stream-index: "005" + enforce_unique_vote: + type: boolean + x-stream-index: "007" + id: + type: string + x-stream-index: "003" + is_closed: + type: boolean + x-stream-index: "011" + latest_answers: items: - $ref: '#/components/schemas/SortParamRequest' - maximum: 2 + $ref: '#/components/schemas/PollVoteRequest' type: array + x-stream-index: "017" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + type: object + x-stream-index: "016" + max_votes_allowed: + format: int32 + type: integer + x-stream-index: "008" + name: + type: string x-stream-index: "004" - watch: - type: boolean - x-stream-index: "001" + options: + items: + $ref: '#/components/schemas/PollOptionRequest' + type: array + x-stream-index: "013" + own_votes: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + x-stream-index: "018" + updated_at: + format: date-time + type: string + x-stream-index: "022" + vote_count: + format: int32 + type: integer + x-stream-index: "012" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "014" + voting_visibility: + type: string + x-stream-index: "006" type: object - QueryCallsResponse: + PollResponse: nullable: true properties: - calls: - items: - $ref: '#/components/schemas/CallStateResponseFields' - title: Calls - type: array - x-stream-index: "001" duration: - type: string - x-stream-index: "003.001" - next: + description: Duration of the request in human-readable format + title: Duration type: string x-stream-index: "002.001" - prev: - type: string - x-stream-index: "002.002" + poll: + $ref: '#/components/schemas/PollResponseData' + x-stream-index: "001" required: - - calls + - poll - duration type: object - QueryChannelsRequest: - nullable: true + PollResponseData: properties: - connection_id: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID - type: string - x-stream-index: "011.003" - filter_conditions: + Custom: type: object - x-stream-index: "001" - limit: - description: Number of channels to limit - format: int32 - title: Limit - type: integer + writeOnly: true + x-stream-index: "020" + allow_answers: + type: boolean x-stream-index: "008" - member_limit: - description: Number of members to limit - format: int32 - maximum: 100 - minimum: 0 - title: Member limit - type: integer + allow_user_suggested_options: + type: boolean x-stream-index: "007" - message_limit: - description: Number of messages to limit + answers_count: format: int32 - minimum: 0 - title: Message limit - type: integer - x-stream-index: "006" - offset: - description: Channel pagination offset - format: int32 - title: Offset type: integer - x-stream-index: "009" - presence: - title: Presence - type: boolean - x-stream-index: "005" - sort: - description: List of sort parameters - items: - $ref: '#/components/schemas/SortParamRequest' - maximum: 5 - title: Sort - type: array - x-stream-index: "002" - state: - description: Whether to update channel state or not - title: State - type: boolean - x-stream-index: "004" - watch: - description: Whether to start watching found channels or not - title: Watch - type: boolean - x-stream-index: "003" - title: Query Channels Request - type: object - x-stream-docs-page-id: query_channels - QueryMembersRequest: - properties: - created_at_after: - format: date-time - type: string - x-stream-index: "006.010" - created_at_after_or_equal: + x-stream-index: "012" + created_at: format: date-time type: string - x-stream-index: "006.009" - created_at_before: - format: date-time + x-stream-index: "018" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "017" + created_by_id: type: string - x-stream-index: "006.012" - created_at_before_or_equal: - format: date-time + x-stream-index: "016" + description: type: string - x-stream-index: "006.011" - filter_conditions: - description: Filter to apply to members - title: Filter conditions - type: object - x-stream-index: "004" + x-stream-index: "003" + enforce_unique_vote: + type: boolean + x-stream-index: "005" id: - description: Channel ID to interact with - title: Channel ID type: string - x-stream-index: "002" - limit: - description: Number of records to return - format: int32 - maximum: 300 - minimum: 0 - title: Limit + x-stream-index: "001" + is_closed: + type: boolean + x-stream-index: "009" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array + type: object + x-stream-index: "014" + max_votes_allowed: + format: int32 type: integer - x-stream-index: "006.003" - members: - description: List of members to search in distinct channels + x-stream-index: "006" + name: + type: string + x-stream-index: "002" + options: items: - $ref: '#/components/schemas/ChannelMember' - maximum: 100 - title: Members + $ref: '#/components/schemas/PollOptionResponseData' type: array - x-stream-index: "003" - offset: - description: Number of records to offset - format: int32 - maximum: 10000 - title: Offset - type: integer - x-stream-index: "006.004" - sort: - description: Array of sort parameters + x-stream-index: "011" + own_votes: items: - $ref: '#/components/schemas/SortParam' - maximum: 1 - title: Sort + $ref: '#/components/schemas/PollVoteResponseData' type: array - x-stream-index: "005" - type: - description: Channel type to interact with - maxLength: 64 - title: Channel type - type: string - x-stream-index: "001" - user_id_gt: + x-stream-index: "015" + updated_at: + format: date-time type: string - x-stream-index: "006.006" - user_id_gte: + x-stream-index: "019" + vote_count: + format: int32 + type: integer + x-stream-index: "010" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "013" + voting_visibility: type: string - x-stream-index: "006.005" - user_id_lt: + x-stream-index: "004" + required: + - id + - name + - description + - voting_visibility + - enforce_unique_vote + - allow_user_suggested_options + - allow_answers + - vote_count + - options + - answers_count + - vote_counts_by_option + - latest_votes_by_option + - own_votes + - created_by_id + - created_at + - updated_at + - Custom + type: object + PollUpdatedEvent: + properties: + created_at: + format: date-time type: string - x-stream-index: "006.008" - user_id_lte: + x-stream-index: "002.002" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001" + type: + default: poll.updated type: string - x-stream-index: "006.007" + x-stream-index: "002.001" required: - type - - filter_conditions + - created_at + title: PollUpdatedEvent type: object - QueryMembersRequest_1: + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollVote: nullable: true properties: - filter_conditions: - type: object - x-stream-index: "002" + answer_text: + type: string + x-stream-index: "007" + created_at: + format: date-time + type: string + x-stream-index: "010" id: - maxLength: 64 type: string - x-stream-index: "001.002" - limit: - format: int32 - maximum: 25 - minimum: 0 - type: integer - x-stream-index: "004.001" - next: + x-stream-index: "004" + is_answer: + type: boolean + x-stream-index: "006" + option_id: type: string - x-stream-index: "004.002" - prev: + x-stream-index: "005" + poll_id: type: string - x-stream-index: "004.003" - sort: - items: - $ref: '#/components/schemas/SortParamRequest' - maximum: 1 - type: array x-stream-index: "003" - type: - maxLength: 64 + updated_at: + format: date-time type: string - x-stream-index: "001.001" + x-stream-index: "011" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "009" + user_id: + type: string + x-stream-index: "008" required: - - type + - poll_id - id + - option_id + - created_at + - updated_at type: object - QueryMembersResponse: - nullable: true + PollVoteCastedEvent: properties: - duration: - description: Duration of the request in human-readable format - title: Duration + created_at: + format: date-time type: string - x-stream-index: "003.001" - members: - items: - $ref: '#/components/schemas/MemberResponse' - type: array - x-stream-index: "001" - next: + x-stream-index: "002.002" + type: + default: poll.vote_casted type: string x-stream-index: "002.001" - prev: + vote: + $ref: '#/components/schemas/PollVote' + x-stream-index: "001" + required: + - type + - created_at + title: PollVoteCastedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollVoteChangedEvent: + properties: + created_at: + format: date-time type: string x-stream-index: "002.002" + type: + default: poll.vote_changed + type: string + x-stream-index: "002.001" + vote: + $ref: '#/components/schemas/PollVote' + x-stream-index: "001" required: - - members - - duration + - type + - created_at + title: PollVoteChangedEvent type: object - QueryMessageFlagsRequest: + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollVoteRemovedEvent: properties: - filter_conditions: - type: object + created_at: + format: date-time + type: string + x-stream-index: "002.002" + type: + default: poll.vote_removed + type: string + x-stream-index: "002.001" + vote: + $ref: '#/components/schemas/PollVote' x-stream-index: "001" - limit: - format: int32 - maximum: 300 - minimum: 0 - type: integer - x-stream-index: "003.003" - offset: - format: int32 - maximum: 10000 - type: integer - x-stream-index: "003.004" - show_deleted_messages: + required: + - type + - created_at + title: PollVoteRemovedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + PollVoteRequest: + nullable: true + properties: + answer_text: + type: string + x-stream-index: "007" + created_at: + format: date-time + type: string + x-stream-index: "010" + id: + type: string + x-stream-index: "004" + is_answer: type: boolean - x-stream-index: "002" - sort: - items: - $ref: '#/components/schemas/SortParam' - maximum: 5 - type: array - x-stream-index: "003.005" + x-stream-index: "006" + option_id: + type: string + x-stream-index: "005" + poll_id: + type: string + x-stream-index: "003" + updated_at: + format: date-time + type: string + x-stream-index: "011" + user: + $ref: '#/components/schemas/UserObjectRequest' + x-stream-index: "009" + user_id: + type: string + x-stream-index: "008" type: object - QueryMessageFlagsResponse: + PollVoteResponse: nullable: true properties: duration: @@ -8191,59 +8469,57 @@ components: title: Duration type: string x-stream-index: "002.001" - flags: - items: - $ref: '#/components/schemas/MessageFlag' - type: array + vote: + $ref: '#/components/schemas/PollVoteResponseData' x-stream-index: "001" required: - - flags - duration type: object - QueryThreadsRequest: + PollVoteResponseData: nullable: true properties: - connection_id: + answer_text: + type: string + x-stream-index: "005" + created_at: + format: date-time + type: string + x-stream-index: "008" + id: type: string x-stream-index: "002" - limit: - format: int32 - maximum: 25 - minimum: 0 - type: integer - x-stream-index: "005.001" - next: + is_answer: + type: boolean + x-stream-index: "004" + option_id: type: string - x-stream-index: "005.002" - participant_limit: - description: Limit the number of participants returned per each thread - format: int32 - maximum: 100 - minimum: 0 - title: Participant limit - type: integer - x-stream-index: "004" - prev: - type: string - x-stream-index: "005.003" - reply_limit: - description: Limit the number of replies returned per each thread - format: int32 - maximum: 10 - minimum: 0 - title: Reply limit - type: integer x-stream-index: "003" - watch: - description: Start watching the channel this thread belongs to - title: Watch - type: boolean + poll_id: + type: string x-stream-index: "001" + updated_at: + format: date-time + type: string + x-stream-index: "009" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "007" + user_id: + type: string + x-stream-index: "006" + required: + - poll_id + - id + - option_id + - created_at + - updated_at type: object - QueryThreadsResponse: + PollVotesResponse: nullable: true properties: duration: + description: Duration of the request in human-readable format + title: Duration type: string x-stream-index: "003.001" next: @@ -8252,877 +8528,926 @@ components: prev: type: string x-stream-index: "002.002" - threads: - description: List of enriched thread states + votes: items: - $ref: '#/components/schemas/ThreadStateResponse' - title: Threads + $ref: '#/components/schemas/PollVoteResponseData' type: array x-stream-index: "001" required: - - threads + - votes - duration type: object - QueryUsersRequest: + PushNotificationFields: properties: - connection_id: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID - type: string - x-stream-index: "007.003" - filter_conditions: - description: User filters - title: Filter conditions - type: object - x-stream-docs-page-id: query_users - x-stream-index: "001" - id_gt: - type: string - x-stream-index: "005.006" - id_gte: - type: string - x-stream-index: "005.005" - id_lt: - type: string - x-stream-index: "005.008" - id_lte: - type: string - x-stream-index: "005.007" - include_deactivated_users: - type: boolean + apn: + $ref: '#/components/schemas/APNConfigFields' + x-stream-index: "002" + firebase: + $ref: '#/components/schemas/FirebaseConfigFields' + x-stream-index: "003" + huawei: + $ref: '#/components/schemas/HuaweiConfigFields' x-stream-index: "004" - limit: - format: int32 - maximum: 100 - minimum: 0 - type: integer - x-stream-index: "005.003" - offset: - format: int32 - maximum: 1000 - type: integer - x-stream-index: "005.004" - presence: - description: Request user presence status - title: Presence + offline_only: type: boolean - x-stream-index: "003" - sort: - description: Array of sort parameters + x-stream-index: "001.002" + providers: items: - $ref: '#/components/schemas/SortParam' - maximum: 5 - title: Sort + $ref: '#/components/schemas/PushProvider' type: array - x-stream-index: "002" + x-stream-index: "006" + version: + type: string + x-stream-index: "001.001" + xiaomi: + $ref: '#/components/schemas/XiaomiConfigFields' + x-stream-index: "005" required: - - filter_conditions + - version + - offline_only + - apn + - firebase + - huawei + - xiaomi type: object - RTMPIngress: - description: RTMP input settings + PushNotificationSettings: properties: - address: + disabled: + type: boolean + x-stream-index: "001" + disabled_until: + format: date-time type: string + x-stream-index: "002" + type: object + PushNotificationSettingsRequest: + properties: + disabled: + $ref: '#/components/schemas/NullBoolRequest' x-stream-index: "001" - required: - - address - title: RTMP Ingress + disabled_until: + $ref: '#/components/schemas/NullTimeRequest' + x-stream-index: "002" type: object - Reaction: - description: Represents user reaction to a message + PushProvider: nullable: true properties: - Custom: - type: object - writeOnly: true - x-stream-index: "010" + apn_auth_key: + type: string + x-stream-index: "012" + apn_auth_type: + type: string + x-stream-index: "017" + apn_development: + type: boolean + x-stream-index: "018" + apn_host: + type: string + x-stream-index: "019" + apn_key_id: + type: string + x-stream-index: "013" + apn_notification_template: + type: string + x-stream-index: "020" + apn_p12_cert: + type: string + x-stream-index: "014" + apn_team_id: + type: string + x-stream-index: "015" + apn_topic: + type: string + x-stream-index: "016" created_at: - description: Date/time of creation format: date-time - readOnly: true - title: Created at type: string x-stream-index: "008" - message_id: - description: ID of a message user reacted to - title: Message ID + description: + maxLength: 128 type: string - x-stream-index: "003" - score: - description: Reaction score. If not specified reaction has score of 1 - format: int32 - title: Score - type: integer x-stream-index: "007" - type: - description: The type of reaction (e.g. 'like', 'laugh', 'wow') - maxLength: 30 - title: Type + disabled_at: + format: date-time + type: string + x-stream-index: "010" + disabled_reason: + maxLength: 255 + type: string + x-stream-index: "011" + firebase_apn_template: + type: string + x-stream-index: "025" + firebase_credentials: + type: string + x-stream-index: "022" + firebase_data_template: + type: string + x-stream-index: "023" + firebase_host: + type: string + x-stream-index: "026" + firebase_notification_template: + type: string + x-stream-index: "024" + firebase_server_key: + type: string + x-stream-index: "021" + huawei_app_id: + type: string + x-stream-index: "027" + huawei_app_secret: + type: string + x-stream-index: "028" + name: + maxLength: 36 + minLength: 1 type: string + x-stream-index: "005" + type: + type: integer x-stream-index: "006" updated_at: - description: Date/time of the last update format: date-time - readOnly: true - title: Updated at type: string x-stream-index: "009" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "005" - user_id: - description: ID of a user who reacted to a message - title: User ID + xiaomi_app_secret: type: string - x-stream-index: "004" + x-stream-index: "030" + xiaomi_package_name: + type: string + x-stream-index: "029" required: - - message_id + - name - type - - score - created_at - updated_at - - Custom - title: Reaction type: object - x-stream-docs-page-id: send_reaction - ReactionDeletedEvent: + QueryBannedUsersRequest: properties: - channel_id: + created_at_after: + format: date-time type: string - x-stream-index: "003.002" - channel_type: + x-stream-index: "003.006" + created_at_after_or_equal: + format: date-time type: string - x-stream-index: "003.003" - cid: + x-stream-index: "003.005" + created_at_before: + format: date-time type: string - x-stream-index: "003.001" - created_at: + x-stream-index: "003.008" + created_at_before_or_equal: format: date-time type: string - x-stream-index: "006.002" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "001.001" - reaction: - $ref: '#/components/schemas/Reaction' + x-stream-index: "003.007" + exclude_expired_bans: + type: boolean + x-stream-index: "006" + filter_conditions: + type: object + x-stream-index: "001" + limit: + format: int32 + maximum: 300 + type: integer + x-stream-index: "004" + offset: + format: int32 + maximum: 10000 + type: integer + x-stream-index: "005" + sort: + items: + $ref: '#/components/schemas/SortParam' + maximum: 1 + type: array x-stream-index: "002" - team: - type: string - x-stream-index: "005.001" - thread_participants: + required: + - filter_conditions + type: object + QueryBannedUsersResponse: + nullable: true + properties: + bans: items: - $ref: '#/components/schemas/UserObject' + $ref: '#/components/schemas/BanResponse' type: array - x-stream-index: "001.002" - type: - default: reaction.deleted + x-stream-index: "001" + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "006.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "004.001" + x-stream-index: "002.001" required: - - cid - - channel_id - - channel_type - - type - - created_at - title: ReactionDeletedEvent + - bans + - duration type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - ReactionNewEvent: + QueryCallStatsRequest: + nullable: true properties: - channel_id: + filter_conditions: + type: object + x-stream-index: "001" + limit: + format: int32 + maximum: 25 + minimum: 0 + type: integer + x-stream-index: "004.001" + next: type: string x-stream-index: "004.002" - channel_type: + prev: type: string x-stream-index: "004.003" - cid: - type: string - x-stream-index: "004.001" - created_at: - format: date-time - type: string - x-stream-index: "006.002" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "001.001" - reaction: - $ref: '#/components/schemas/Reaction' - x-stream-index: "002" - team: - type: string - x-stream-index: "005.001" - thread_participants: + sort: items: - $ref: '#/components/schemas/UserObject' + $ref: '#/components/schemas/SortParamRequest' + maximum: 2 type: array - x-stream-index: "001.002" - type: - default: reaction.new - type: string - x-stream-index: "006.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" - required: - - cid - - channel_id - - channel_type - - type - - created_at - title: ReactionNewEvent + x-stream-index: "002" type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - ReactionRemovalResponse: + QueryCallStatsResponse: nullable: true properties: duration: description: Duration of the request in human-readable format title: Duration + type: string + x-stream-index: "002.001" + next: type: string x-stream-index: "003.001" - message: - $ref: '#/components/schemas/Message' + prev: + type: string + x-stream-index: "003.002" + reports: + items: + $ref: '#/components/schemas/CallStatsReportSummaryResponse' + type: array x-stream-index: "001" - reaction: - $ref: '#/components/schemas/Reaction' - x-stream-index: "002" required: + - reports - duration type: object - ReactionRequest: - description: Represents user reaction to a message + QueryCallsRequest: + nullable: true properties: - Custom: + filter_conditions: type: object - writeOnly: true - x-stream-index: "010" - message_id: - description: ID of a message user reacted to - title: Message ID - type: string x-stream-index: "003" - score: - description: Reaction score. If not specified reaction has score of 1 + limit: format: int32 - title: Score + maximum: 25 + minimum: 0 type: integer - x-stream-index: "007" - type: - description: The type of reaction (e.g. 'like', 'laugh', 'wow') - maxLength: 30 - title: Type + x-stream-index: "006.001" + next: type: string - x-stream-index: "006" - user: - $ref: '#/components/schemas/UserObjectRequest' - x-stream-index: "005" - user_id: - description: ID of a user who reacted to a message - title: User ID + x-stream-index: "006.002" + prev: type: string + x-stream-index: "006.003" + sort: + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 2 + type: array x-stream-index: "004" - required: - - type - title: Reaction + watch: + type: boolean + x-stream-index: "001" type: object - x-stream-docs-page-id: send_reaction - ReactionResponse: + QueryCallsResponse: nullable: true properties: + calls: + items: + $ref: '#/components/schemas/CallStateResponseFields' + title: Calls + type: array + x-stream-index: "001" duration: - description: Duration of the request in human-readable format - title: Duration type: string x-stream-index: "003.001" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "001" - reaction: - $ref: '#/components/schemas/Reaction' - x-stream-index: "002" + next: + type: string + x-stream-index: "002.001" + prev: + type: string + x-stream-index: "002.002" required: + - calls - duration type: object - ReactionUpdatedEvent: + QueryChannelsRequest: + nullable: true properties: - channel_id: - type: string - x-stream-index: "004.002" - channel_type: - type: string - x-stream-index: "004.003" - cid: - type: string - x-stream-index: "004.001" - created_at: - format: date-time + connection_id: + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID type: string - x-stream-index: "006.002" - message: - $ref: '#/components/schemas/Message' + x-stream-index: "011.003" + filter_conditions: + type: object x-stream-index: "001" - reaction: - $ref: '#/components/schemas/Reaction' - x-stream-index: "002" - team: - type: string - x-stream-index: "005.001" - type: - default: reaction.updated - type: string - x-stream-index: "006.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" - required: - - message - - reaction - - cid - - channel_id - - channel_type - - type - - created_at - title: ReactionUpdatedEvent + limit: + description: Number of channels to limit + format: int32 + title: Limit + type: integer + x-stream-index: "008" + member_limit: + description: Number of members to limit + format: int32 + maximum: 100 + minimum: 0 + title: Member limit + type: integer + x-stream-index: "007" + message_limit: + description: Number of messages to limit + format: int32 + minimum: 0 + title: Message limit + type: integer + x-stream-index: "006" + offset: + description: Channel pagination offset + format: int32 + title: Offset + type: integer + x-stream-index: "009" + presence: + title: Presence + type: boolean + x-stream-index: "005" + sort: + description: List of sort parameters + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 + title: Sort + type: array + x-stream-index: "002" + state: + description: Whether to update channel state or not + title: State + type: boolean + x-stream-index: "004" + watch: + description: Whether to start watching found channels or not + title: Watch + type: boolean + x-stream-index: "003" + title: Query Channels Request type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - Read: - nullable: true + x-stream-docs-page-id: query_channels + QueryMembersRequest: properties: - last_read: + created_at_after: format: date-time type: string - x-stream-index: "002" - last_read_message_id: + x-stream-index: "006.010" + created_at_after_or_equal: + format: date-time + type: string + x-stream-index: "006.009" + created_at_before: + format: date-time type: string + x-stream-index: "006.012" + created_at_before_or_equal: + format: date-time + type: string + x-stream-index: "006.011" + filter_conditions: + description: Filter to apply to members + title: Filter conditions + type: object x-stream-index: "004" - unread_messages: + id: + description: Channel ID to interact with + title: Channel ID + type: string + x-stream-index: "002" + limit: + description: Number of records to return format: int32 + maximum: 300 + minimum: 0 + title: Limit type: integer + x-stream-index: "006.003" + members: + description: List of members to search in distinct channels + items: + $ref: '#/components/schemas/ChannelMember' + maximum: 100 + title: Members + type: array x-stream-index: "003" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001" - required: - - last_read - - unread_messages - type: object - RecordSettings: - properties: - audio_only: - type: boolean - x-stream-index: "001" - layout: - $ref: '#/components/schemas/LayoutSettings' - x-stream-index: "004" - mode: - type: string - x-stream-index: "002" - quality: + offset: + description: Number of records to offset + format: int32 + maximum: 10000 + title: Offset + type: integer + x-stream-index: "006.004" + sort: + description: Array of sort parameters + items: + $ref: '#/components/schemas/SortParam' + maximum: 1 + title: Sort + type: array + x-stream-index: "005" + type: + description: Channel type to interact with + maxLength: 64 + title: Channel type type: string - x-stream-index: "003" - required: - - audio_only - - mode - - quality - type: object - RecordSettingsRequest: - properties: - audio_only: - type: boolean x-stream-index: "001" - mode: - enum: - - available - - disabled - - auto-on + user_id_gt: type: string - x-stream-index: "002" - quality: - enum: - - 360p - - 480p - - 720p - - 1080p - - 1440p + x-stream-index: "006.006" + user_id_gte: type: string - x-stream-index: "003" - required: - - mode - type: object - RecordSettingsResponse: - properties: - audio_only: - type: boolean - x-stream-index: "001" - mode: + x-stream-index: "006.005" + user_id_lt: type: string - x-stream-index: "002" - quality: + x-stream-index: "006.008" + user_id_lte: type: string - x-stream-index: "003" + x-stream-index: "006.007" required: - - audio_only - - mode - - quality - - layout - type: object - RejectCallRequest: - nullable: true + - type + - filter_conditions type: object - RejectCallResponse: + QueryMembersRequest_1: nullable: true properties: - duration: + filter_conditions: + type: object + x-stream-index: "002" + id: + maxLength: 64 type: string - x-stream-index: "001.001" - required: - - duration - type: object - RequestPermissionRequest: - nullable: true - properties: - permissions: + x-stream-index: "001.002" + limit: + format: int32 + maximum: 25 + minimum: 0 + type: integer + x-stream-index: "004.001" + next: + type: string + x-stream-index: "004.002" + prev: + type: string + x-stream-index: "004.003" + sort: items: - type: string - title: Permissions + $ref: '#/components/schemas/SortParamRequest' + maximum: 1 type: array x-stream-index: "003" - required: - - permissions - type: object - RequestPermissionResponse: - nullable: true - properties: - duration: + type: + maxLength: 64 type: string x-stream-index: "001.001" required: - - duration + - type + - id type: object - Response: + QueryMembersResponse: nullable: true properties: duration: description: Duration of the request in human-readable format title: Duration type: string + x-stream-index: "003.001" + members: + items: + $ref: '#/components/schemas/MemberResponse' + type: array x-stream-index: "001" + next: + type: string + x-stream-index: "002.001" + prev: + type: string + x-stream-index: "002.002" required: - - duration - type: object - RingSettings: - properties: - auto_cancel_timeout_ms: - format: int32 - type: integer - x-stream-index: "002" - incoming_call_timeout_ms: - format: int32 - type: integer - x-stream-index: "001" - required: - - incoming_call_timeout_ms - - auto_cancel_timeout_ms + - members + - duration type: object - RingSettingsRequest: + QueryMessageFlagsRequest: properties: - auto_cancel_timeout_ms: + filter_conditions: + type: object + x-stream-index: "001" + limit: format: int32 - maximum: 180000 - minimum: 5000 + maximum: 300 + minimum: 0 type: integer - x-stream-index: "002" - incoming_call_timeout_ms: + x-stream-index: "003.003" + offset: format: int32 - maximum: 180000 - minimum: 5000 + maximum: 10000 type: integer - x-stream-index: "001" + x-stream-index: "003.004" + show_deleted_messages: + type: boolean + x-stream-index: "002" + sort: + items: + $ref: '#/components/schemas/SortParam' + maximum: 5 + type: array + x-stream-index: "003.005" type: object - SFULocationResponse: + QueryMessageFlagsResponse: + nullable: true properties: - coordinates: - $ref: '#/components/schemas/Coordinates' - x-stream-index: "004" - datacenter: - type: string - x-stream-index: "002" - id: + duration: + description: Duration of the request in human-readable format + title: Duration type: string + x-stream-index: "002.001" + flags: + items: + $ref: '#/components/schemas/MessageFlag' + type: array x-stream-index: "001" - location: - $ref: '#/components/schemas/Location' - x-stream-index: "003" required: - - id - - datacenter - - location - - coordinates + - flags + - duration type: object - SFUResponse: + QueryPollVotesRequest: + nullable: true properties: - edge_name: + filter: + type: object + x-stream-index: "003" + limit: + format: int32 + maximum: 25 + minimum: 0 + type: integer + x-stream-index: "005.001" + next: type: string - x-stream-index: "001" - url: + x-stream-index: "005.002" + poll_id: + maxLength: 255 type: string x-stream-index: "002" - ws_endpoint: + prev: type: string - x-stream-index: "003" - required: - - edge_name - - url - - ws_endpoint - type: object - ScreensharingSettings: - properties: - access_request_enabled: - type: boolean - x-stream-index: "002" - enabled: - type: boolean - x-stream-index: "001" + x-stream-index: "005.003" + sort: + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 + type: array + x-stream-index: "004" required: - - enabled - - access_request_enabled - type: object - ScreensharingSettingsRequest: - properties: - access_request_enabled: - type: boolean - x-stream-index: "002" - enabled: - type: boolean - x-stream-index: "001" + - poll_id type: object - SearchRequest: + QueryPollsRequest: + nullable: true properties: - filter_conditions: - description: Channel filter conditions - maximum: 100 - minimum: 1 - title: Channel filter + filter: type: object - x-stream-docs-page-id: query_channels x-stream-index: "002" limit: - description: Number of messages to return format: int32 - title: Limit + maximum: 25 + minimum: 0 type: integer - x-stream-index: "004" - message_filter_conditions: - description: Message filter conditions - title: Message filter - type: object - x-stream-index: "003" + x-stream-index: "005.001" next: - description: Pagination parameter. Cannot be used with non-zero offset. - title: Next type: string - x-stream-index: "007" - offset: - description: Pagination offset. Cannot be used with sort or next. - format: int32 - title: Offset - type: integer - x-stream-index: "005" - query: - description: Search phrase - title: Query + x-stream-index: "005.002" + prev: type: string - x-stream-index: "001" + x-stream-index: "005.003" sort: - description: Sort parameters. Cannot be used with non-zero offset items: - $ref: '#/components/schemas/SortParam' - title: Sort + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 type: array - x-stream-index: "006" - required: - - filter_conditions + x-stream-index: "003" type: object - SearchResponse: + QueryPollsResponse: nullable: true properties: duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "005.001" + x-stream-index: "003.001" next: - description: Value to pass to the next search query in order to paginate - title: Next type: string - x-stream-index: "003" - previous: - description: Value that points to the previous page. Pass as the next value - in a search query to paginate backwards - title: Previous - type: string - x-stream-index: "004" - results: - description: Search results + x-stream-index: "002.001" + polls: items: - $ref: '#/components/schemas/SearchResult' - title: Results + $ref: '#/components/schemas/PollResponseData' type: array x-stream-index: "001" - results_warning: - $ref: '#/components/schemas/SearchWarning' - description: Warning about the search results - title: Results Warning - x-stream-index: "002" + prev: + type: string + x-stream-index: "002.002" required: - - results + - polls - duration type: object - SearchResult: + QueryThreadsRequest: nullable: true properties: - message: - $ref: '#/components/schemas/SearchResultMessage' - description: Found message - title: Message - x-stream-index: "001" - type: object - SearchResultMessage: - properties: - Custom: - type: object - writeOnly: true - x-stream-index: "001.031" - attachments: - items: - $ref: '#/components/schemas/Attachment' - type: array - x-stream-index: "001.011" - before_message_send_failed: - type: boolean - x-stream-index: "001.043" - channel: - $ref: '#/components/schemas/ChannelResponse' - description: Channel object - title: Channel - x-stream-index: "002" - cid: - type: string - x-stream-index: "001.026" - command: - type: string - x-stream-index: "001.006" - created_at: - format: date-time + connection_id: type: string - x-stream-index: "001.028" - deleted_at: - format: date-time + x-stream-index: "002" + limit: + format: int32 + maximum: 25 + minimum: 0 + type: integer + x-stream-index: "005.001" + next: type: string - x-stream-index: "001.030" - deleted_reply_count: + x-stream-index: "005.002" + participant_limit: + description: Limit the number of participants returned per each thread format: int32 + maximum: 100 + minimum: 0 + title: Participant limit type: integer - x-stream-index: "001.021" - html: + x-stream-index: "004" + prev: type: string - x-stream-index: "001.007" - i18n: - additionalProperties: - type: string - type: object - x-stream-index: "001.041" - id: + x-stream-index: "005.003" + reply_limit: + description: Limit the number of replies returned per each thread + format: int32 + maximum: 10 + minimum: 0 + title: Reply limit + type: integer + x-stream-index: "003" + watch: + description: Start watching the channel this thread belongs to + title: Watch + type: boolean + x-stream-index: "001" + type: object + QueryThreadsResponse: + nullable: true + properties: + duration: type: string - x-stream-index: "001.002" - image_labels: - additionalProperties: - items: - type: string - type: array - type: object - x-stream-index: "001.037" - latest_reactions: - items: - $ref: '#/components/schemas/Reaction' - type: array - x-stream-index: "001.012" - mentioned_users: - items: - $ref: '#/components/schemas/UserObject' - type: array - x-stream-index: "001.040" - message_text_updated_at: - format: date-time + x-stream-index: "003.001" + next: type: string - x-stream-index: "001.049" - mml: + x-stream-index: "002.001" + prev: type: string - x-stream-index: "001.005" - own_reactions: + x-stream-index: "002.002" + threads: + description: List of enriched thread states items: - $ref: '#/components/schemas/Reaction' + $ref: '#/components/schemas/ThreadStateResponse' + title: Threads type: array - x-stream-index: "001.013" - parent_id: + x-stream-index: "001" + required: + - threads + - duration + type: object + QueryUsersRequest: + properties: + connection_id: + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID type: string - x-stream-index: "001.017" - pin_expires: - format: date-time + x-stream-index: "007.003" + filter_conditions: + description: User filters + title: Filter conditions + type: object + x-stream-docs-page-id: query_users + x-stream-index: "001" + id_gt: type: string - x-stream-index: "001.048" - pinned: - type: boolean - x-stream-index: "001.044" - pinned_at: - format: date-time + x-stream-index: "005.006" + id_gte: type: string - x-stream-index: "001.045" - pinned_by: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001.047" - quoted_message: - $ref: '#/components/schemas/Message' - x-stream-index: "001.023" - quoted_message_id: + x-stream-index: "005.005" + id_lt: type: string - x-stream-index: "001.022" - reaction_counts: - additionalProperties: - format: int32 - type: integer - type: object - x-stream-index: "001.014" - reaction_scores: - additionalProperties: - format: int32 - type: integer - type: object - x-stream-index: "001.015" - reply_count: + x-stream-index: "005.008" + id_lte: + type: string + x-stream-index: "005.007" + include_deactivated_users: + type: boolean + x-stream-index: "004" + limit: format: int32 + maximum: 100 + minimum: 0 type: integer - x-stream-index: "001.020" - shadowed: - type: boolean - x-stream-index: "001.033" - show_in_channel: - type: boolean - x-stream-index: "001.019" - silent: + x-stream-index: "005.003" + offset: + format: int32 + maximum: 1000 + type: integer + x-stream-index: "005.004" + presence: + description: Request user presence status + title: Presence type: boolean - x-stream-index: "001.042" - text: - type: string - x-stream-index: "001.004" - thread_participants: + x-stream-index: "003" + sort: + description: Array of sort parameters items: - $ref: '#/components/schemas/UserObject' + $ref: '#/components/schemas/SortParam' + maximum: 5 + title: Sort type: array - x-stream-index: "001.025" + x-stream-index: "002" + required: + - filter_conditions + type: object + RTMPIngress: + description: RTMP input settings + properties: + address: + type: string + x-stream-index: "001" + required: + - address + title: RTMP Ingress + type: object + Reaction: + description: Represents user reaction to a message + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "010" + created_at: + description: Date/time of creation + format: date-time + readOnly: true + title: Created at + type: string + x-stream-index: "008" + message_id: + description: ID of a message user reacted to + title: Message ID + type: string + x-stream-index: "003" + score: + description: Reaction score. If not specified reaction has score of 1 + format: int32 + title: Score + type: integer + x-stream-index: "007" type: + description: The type of reaction (e.g. 'like', 'laugh', 'wow') + maxLength: 30 + title: Type type: string - x-stream-index: "001.008" + x-stream-index: "006" updated_at: + description: Date/time of the last update format: date-time + readOnly: true + title: Updated at type: string - x-stream-index: "001.029" + x-stream-index: "009" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "001.010" + x-stream-index: "005" + user_id: + description: ID of a user who reacted to a message + title: User ID + type: string + x-stream-index: "004" required: - - id - - text - - html + - message_id - type - - attachments - - latest_reactions - - own_reactions - - reaction_counts - - reaction_scores - - reply_count - - deleted_reply_count - - cid + - score - created_at - updated_at - Custom - - shadowed - - mentioned_users - - silent - - pinned + title: Reaction type: object - SearchWarning: + x-stream-docs-page-id: send_reaction + ReactionDeletedEvent: properties: - channel_search_cids: - description: Channel CIDs for the searched channels - items: - type: string - title: Channel Search CIDs - type: array - x-stream-index: "004" - channel_search_count: - description: Number of channels searched - format: int32 - title: Channel Search Count - type: integer - x-stream-index: "003" - warning_code: - description: Code corresponding to the warning - format: int32 - title: Warning Code - type: integer - x-stream-index: "002" - warning_description: - description: Description of the warning - title: Warning Description + channel_id: type: string - x-stream-index: "001" - required: - - warning_description - - warning_code - type: object - SendEventRequest: - nullable: true - properties: - event: - $ref: '#/components/schemas/EventRequest' - x-stream-index: "001" - required: - - event - type: object - SendEventResponse: - nullable: true - properties: - duration: + x-stream-index: "003.002" + channel_type: + type: string + x-stream-index: "003.003" + cid: type: string + x-stream-index: "003.001" + created_at: + format: date-time + type: string + x-stream-index: "006.002" + message: + $ref: '#/components/schemas/Message' x-stream-index: "001.001" + reaction: + $ref: '#/components/schemas/Reaction' + x-stream-index: "002" + team: + type: string + x-stream-index: "005.001" + thread_participants: + items: + $ref: '#/components/schemas/UserObject' + type: array + x-stream-index: "001.002" + type: + default: reaction.deleted + type: string + x-stream-index: "006.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "004.001" required: - - duration + - cid + - channel_id + - channel_type + - type + - created_at + title: ReactionDeletedEvent type: object - SendMessageRequest: - nullable: true + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + ReactionNewEvent: properties: + channel_id: + type: string + x-stream-index: "004.002" + channel_type: + type: string + x-stream-index: "004.003" + cid: + type: string + x-stream-index: "004.001" + created_at: + format: date-time + type: string + x-stream-index: "006.002" message: - $ref: '#/components/schemas/MessageRequest' - x-stream-index: "001" - skip_enrich_url: - type: boolean - x-stream-index: "003" - skip_push: - type: boolean + $ref: '#/components/schemas/Message' + x-stream-index: "001.001" + reaction: + $ref: '#/components/schemas/Reaction' x-stream-index: "002" + team: + type: string + x-stream-index: "005.001" + thread_participants: + items: + $ref: '#/components/schemas/UserObject' + type: array + x-stream-index: "001.002" + type: + default: reaction.new + type: string + x-stream-index: "006.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "003.001" required: - - message + - cid + - channel_id + - channel_type + - type + - created_at + title: ReactionNewEvent type: object - SendMessageResponse: + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + ReactionRemovalResponse: nullable: true properties: duration: @@ -9133,1029 +9458,880 @@ components: message: $ref: '#/components/schemas/Message' x-stream-index: "001" - pending_message_metadata: - additionalProperties: - type: string - type: object + reaction: + $ref: '#/components/schemas/Reaction' x-stream-index: "002" required: - - message - duration type: object - SendReactionRequest: - nullable: true + ReactionRequest: + description: Represents user reaction to a message properties: - ID: - type: string + Custom: + type: object writeOnly: true - x-stream-index: "001" - enforce_unique: - description: Whether to replace all existing user reactions - title: Enforce unique - type: boolean + x-stream-index: "010" + message_id: + description: ID of a message user reacted to + title: Message ID + type: string x-stream-index: "003" - reaction: - $ref: '#/components/schemas/ReactionRequest' - x-stream-index: "002" - skip_push: - description: Skips any mobile push notifications - title: Skip push - type: boolean + score: + description: Reaction score. If not specified reaction has score of 1 + format: int32 + title: Score + type: integer + x-stream-index: "007" + type: + description: The type of reaction (e.g. 'like', 'laugh', 'wow') + maxLength: 30 + title: Type + type: string + x-stream-index: "006" + user: + $ref: '#/components/schemas/UserObjectRequest' + x-stream-index: "005" + user_id: + description: ID of a user who reacted to a message + title: User ID + type: string x-stream-index: "004" required: - - reaction + - type + title: Reaction type: object - SendReactionResponse: + x-stream-docs-page-id: send_reaction + ReactionResponse: nullable: true properties: duration: description: Duration of the request in human-readable format title: Duration type: string - x-stream-index: "002.001" - reaction: - $ref: '#/components/schemas/ReactionResponse' + x-stream-index: "003.001" + message: + $ref: '#/components/schemas/Message' x-stream-index: "001" + reaction: + $ref: '#/components/schemas/Reaction' + x-stream-index: "002" required: - - reaction - duration type: object - ShowChannelRequest: - nullable: true - type: object - ShowChannelResponse: - nullable: true + ReactionUpdatedEvent: properties: - duration: - description: Duration of the request in human-readable format - title: Duration + channel_id: type: string - x-stream-index: "001.001" + x-stream-index: "004.002" + channel_type: + type: string + x-stream-index: "004.003" + cid: + type: string + x-stream-index: "004.001" + created_at: + format: date-time + type: string + x-stream-index: "006.002" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "001" + reaction: + $ref: '#/components/schemas/Reaction' + x-stream-index: "002" + team: + type: string + x-stream-index: "005.001" + type: + default: reaction.updated + type: string + x-stream-index: "006.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "003.001" required: - - duration + - message + - reaction + - cid + - channel_id + - channel_type + - type + - created_at + title: ReactionUpdatedEvent type: object - SortParam: + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + Read: nullable: true properties: - direction: - description: Direction of sorting, -1 for descending, 1 for ascending - format: int32 - title: Direction - type: integer + last_read: + format: date-time + type: string x-stream-index: "002" - field: - description: Name of field to sort by - title: Field + last_read_message_id: type: string - x-stream-index: "001" - type: object - SortParamRequest: - nullable: true - properties: - direction: - description: Direction of sorting, -1 for descending, 1 for ascending + x-stream-index: "004" + unread_messages: format: int32 - title: Direction type: integer - x-stream-index: "002" - field: - description: Name of field to sort by - title: Field - type: string + x-stream-index: "003" + user: + $ref: '#/components/schemas/UserObject' x-stream-index: "001" - type: object - StartHLSBroadcastingRequest: - nullable: true - type: object - StartHLSBroadcastingResponse: - nullable: true - properties: - duration: - description: Duration of the request in human-readable format - title: Duration - type: string - x-stream-index: "001.001" - playlist_url: - type: string - x-stream-index: "002" required: - - duration - - playlist_url + - last_read + - unread_messages type: object - StartRecordingRequest: - nullable: true + RecordSettings: properties: - recording_external_storage: + audio_only: + type: boolean + x-stream-index: "001" + layout: + $ref: '#/components/schemas/LayoutSettings' + x-stream-index: "004" + mode: type: string x-stream-index: "002" - type: object - StartRecordingResponse: - nullable: true - properties: - duration: + quality: type: string - x-stream-index: "001.001" + x-stream-index: "003" required: - - duration + - audio_only + - mode + - quality type: object - StartTranscriptionRequest: - nullable: true + RecordSettingsRequest: properties: - transcription_external_storage: + audio_only: + type: boolean + x-stream-index: "001" + mode: + enum: + - available + - disabled + - auto-on type: string x-stream-index: "002" - type: object - StartTranscriptionResponse: - nullable: true - properties: - duration: + quality: + enum: + - 360p + - 480p + - 720p + - 1080p + - 1440p type: string - x-stream-index: "001.001" + x-stream-index: "003" required: - - duration + - mode type: object - Stats: + RecordSettingsResponse: properties: - average_seconds: - format: float - type: number + audio_only: + type: boolean x-stream-index: "001" - max_seconds: - format: float - type: number + mode: + type: string x-stream-index: "002" + quality: + type: string + x-stream-index: "003" required: - - average_seconds - - max_seconds - type: object - StatsOptions: - properties: - reporting_interval_ms: - format: int32 - type: integer - x-stream-index: "001" - required: - - reporting_interval_ms + - audio_only + - mode + - quality + - layout type: object - StopHLSBroadcastingRequest: + RejectCallRequest: nullable: true type: object - StopHLSBroadcastingResponse: + RejectCallResponse: nullable: true properties: duration: - description: Duration of the request in human-readable format - title: Duration type: string x-stream-index: "001.001" required: - duration type: object - StopLiveRequest: - nullable: true - type: object - StopLiveResponse: + RequestPermissionRequest: nullable: true properties: - call: - $ref: '#/components/schemas/CallResponse' - x-stream-index: "001" - duration: - description: Duration of the request in human-readable format - title: Duration - type: string - x-stream-index: "002.001" + permissions: + items: + type: string + title: Permissions + type: array + x-stream-index: "003" required: - - call - - duration - type: object - StopRecordingRequest: - nullable: true + - permissions type: object - StopRecordingResponse: + RequestPermissionResponse: nullable: true properties: duration: - description: Duration of the request in human-readable format - title: Duration type: string x-stream-index: "001.001" required: - duration type: object - StopTranscriptionRequest: - nullable: true - type: object - StopTranscriptionResponse: + Response: nullable: true properties: duration: description: Duration of the request in human-readable format title: Duration type: string - x-stream-index: "001.001" + x-stream-index: "001" required: - duration type: object - StopWatchingResponse: - nullable: true + RingSettings: properties: - duration: - description: Duration of the request in human-readable format - title: Duration - type: string - x-stream-index: "001.001" + auto_cancel_timeout_ms: + format: int32 + type: integer + x-stream-index: "002" + incoming_call_timeout_ms: + format: int32 + type: integer + x-stream-index: "001" required: - - duration + - incoming_call_timeout_ms + - auto_cancel_timeout_ms type: object - SyncRequest: - nullable: true + RingSettingsRequest: properties: - channel_cids: - description: List of channel CIDs to sync - items: - type: string - maximum: 255 - minimum: 1 - title: Channel CIDs - type: array + auto_cancel_timeout_ms: + format: int32 + maximum: 180000 + minimum: 5000 + type: integer + x-stream-index: "002" + incoming_call_timeout_ms: + format: int32 + maximum: 180000 + minimum: 5000 + type: integer x-stream-index: "001" - connection_id: - type: string - x-stream-index: "006.003" - last_sync_at: - description: Date from which synchronization should happen - format: date-time - title: Last sync at + type: object + SFULocationResponse: + properties: + coordinates: + $ref: '#/components/schemas/Coordinates' + x-stream-index: "004" + datacenter: type: string x-stream-index: "002" - watch: - description: If set to true this will start watching requested and newly - added channels that user has access to. If error occurred with this option - enabled and it is not an input error - channels will still be watched. - title: Watch synced channels - type: boolean - x-stream-index: "004" - with_inaccessible_cids: - description: If set to true this will add 'inaccessible_cids' to response - type - title: With inaccessible CIDs - type: boolean + id: + type: string + x-stream-index: "001" + location: + $ref: '#/components/schemas/Location' x-stream-index: "003" required: - - last_sync_at + - id + - datacenter + - location + - coordinates type: object - SyncResponse: - nullable: true + SFUResponse: properties: - duration: + edge_name: type: string - x-stream-index: "003.001" - events: - description: List of events - items: - $ref: '#/components/schemas/WSEvent' - title: Events - type: array x-stream-index: "001" - inaccessible_cids: - description: List of CIDs that user can't access - items: - type: string - title: Inaccessible CIDs - type: array + url: + type: string x-stream-index: "002" + ws_endpoint: + type: string + x-stream-index: "003" required: - - events - - duration + - edge_name + - url + - ws_endpoint type: object - TargetResolution: + ScreensharingSettings: properties: - bitrate: - format: int32 - maximum: 6000000 - type: integer - x-stream-index: "003" - height: - format: int32 - maximum: 2560 - minimum: 240 - type: integer + access_request_enabled: + type: boolean x-stream-index: "002" - width: - format: int32 - maximum: 2560 - minimum: 240 - type: integer + enabled: + type: boolean x-stream-index: "001" required: - - width - - height - - bitrate + - enabled + - access_request_enabled type: object - TargetResolutionRequest: + ScreensharingSettingsRequest: properties: - bitrate: - format: int32 - maximum: 6000000 - type: integer - x-stream-index: "003" - height: - format: int32 - maximum: 2560 - minimum: 240 - type: integer + access_request_enabled: + type: boolean x-stream-index: "002" - width: - format: int32 - maximum: 2560 - minimum: 240 - type: integer + enabled: + type: boolean x-stream-index: "001" type: object - Thread: - description: Represents a conversation thread linked to a specific message in - a channel. + SearchRequest: properties: - Custom: + filter_conditions: + description: Channel filter conditions + maximum: 100 + minimum: 1 + title: Channel filter type: object - writeOnly: true - x-stream-index: "017" - channel: - $ref: '#/components/schemas/Channel' - description: Channel is the channel the thread belongs to - title: Channel + x-stream-docs-page-id: query_channels + x-stream-index: "002" + limit: + description: Number of messages to return + format: int32 + title: Limit + type: integer x-stream-index: "004" - channel_cid: - description: Channel CID is unique string identifier of the channel - title: Channel CID - type: string + message_filter_conditions: + description: Message filter conditions + title: Message filter + type: object x-stream-index: "003" - created_at: - description: Date/time of creation - format: date-time - title: Created at - type: string - x-stream-index: "013" - created_by: - $ref: '#/components/schemas/UserObject' - description: Created By is the user who created the thread - title: Created By - x-stream-index: "008" - deleted_at: - description: Date/time of deletion - format: date-time - title: Deleted at - type: string - x-stream-index: "015" - last_message_at: - description: Last Message At is the time of the last message in the thread - format: date-time - title: Last Message At - type: string - x-stream-index: "012" - parent_message: - $ref: '#/components/schemas/Message' - description: Parent Message is the message the thread is replying to - title: Parent Message - x-stream-index: "006" - parent_message_id: - description: Parent Message ID is unique string identifier of the parent - message - title: Parent Message ID + next: + description: Pagination parameter. Cannot be used with non-zero offset. + title: Next type: string - x-stream-index: "005" - participant_count: - description: The number of participants in the thread - format: int32 - title: Participant Count - type: integer - x-stream-index: "010" - reply_count: - description: The number of replies in the thread + x-stream-index: "007" + offset: + description: Pagination offset. Cannot be used with sort or next. format: int32 - title: Reply Count + title: Offset type: integer - x-stream-index: "009" - thread_participants: + x-stream-index: "005" + query: + description: Search phrase + title: Query + type: string + x-stream-index: "001" + sort: + description: Sort parameters. Cannot be used with non-zero offset items: - $ref: '#/components/schemas/ThreadParticipant' + $ref: '#/components/schemas/SortParam' + title: Sort type: array - x-stream-index: "011" - title: - description: Title is the title of the thread - title: Title + x-stream-index: "006" + required: + - filter_conditions + type: object + SearchResponse: + nullable: true + properties: + duration: type: string - x-stream-index: "016" - updated_at: - description: Date/time of the last update - format: date-time - title: Updated at + x-stream-index: "005.001" + next: + description: Value to pass to the next search query in order to paginate + title: Next type: string - x-stream-index: "014" + x-stream-index: "003" + previous: + description: Value that points to the previous page. Pass as the next value + in a search query to paginate backwards + title: Previous + type: string + x-stream-index: "004" + results: + description: Search results + items: + $ref: '#/components/schemas/SearchResult' + title: Results + type: array + x-stream-index: "001" + results_warning: + $ref: '#/components/schemas/SearchWarning' + description: Warning about the search results + title: Results Warning + x-stream-index: "002" required: - - channel_cid - - parent_message_id - - created_at - - updated_at - - title - - Custom - title: Thread + - results + - duration type: object - ThreadParticipant: - description: Represents a user that is participating in a thread. + SearchResult: nullable: true + properties: + message: + $ref: '#/components/schemas/SearchResultMessage' + description: Found message + title: Message + x-stream-index: "001" + type: object + SearchResultMessage: properties: Custom: type: object writeOnly: true - x-stream-index: "010" - app_pk: - format: int32 - readOnly: true - type: integer + x-stream-index: "001.031" + attachments: + items: + $ref: '#/components/schemas/Attachment' + type: array + x-stream-index: "001.011" + before_message_send_failed: + type: boolean + x-stream-index: "001.043" + channel: + $ref: '#/components/schemas/ChannelResponse' + description: Channel object + title: Channel x-stream-index: "002" - channel_cid: + cid: type: string - x-stream-index: "003" + x-stream-index: "001.026" + command: + type: string + x-stream-index: "001.006" created_at: - description: Date/time of creation format: date-time - title: Created at type: string - x-stream-index: "007" - last_read_at: + x-stream-index: "001.028" + deleted_at: format: date-time type: string - x-stream-index: "009" - left_thread_at: - description: Left Thread At is the time when the user left the thread - format: date-time - title: Left Thread At + x-stream-index: "001.030" + deleted_reply_count: + format: int32 + type: integer + x-stream-index: "001.021" + html: type: string - x-stream-index: "008" - thread_id: - description: Thead ID is unique string identifier of the thread - title: ID + x-stream-index: "001.007" + i18n: + additionalProperties: + type: string + type: object + x-stream-index: "001.041" + id: type: string - x-stream-index: "004" - user: - $ref: '#/components/schemas/UserObject' - description: User is the user object - title: User - x-stream-index: "006" - user_id: - description: User ID is unique string identifier of the user - title: User ID - type: string - x-stream-index: "005" - required: - - app_pk - - channel_cid - - created_at - - last_read_at - - Custom - title: ThreadParticipant - type: object - ThreadResponse: - properties: - channel: - $ref: '#/components/schemas/ChannelResponse' - x-stream-index: "002" - channel_cid: - type: string - x-stream-index: "001" - created_at: + x-stream-index: "001.002" + image_labels: + additionalProperties: + items: + type: string + type: array + type: object + x-stream-index: "001.037" + latest_reactions: + items: + $ref: '#/components/schemas/Reaction' + type: array + x-stream-index: "001.012" + mentioned_users: + items: + $ref: '#/components/schemas/UserObject' + type: array + x-stream-index: "001.040" + message_text_updated_at: format: date-time type: string - x-stream-index: "011" - created_by: - $ref: '#/components/schemas/UserObject' - x-stream-index: "006" - created_by_user_id: + x-stream-index: "001.049" + mml: type: string - x-stream-index: "005" - custom: - type: object - x-stream-index: "015" - deleted_at: + x-stream-index: "001.005" + own_reactions: + items: + $ref: '#/components/schemas/Reaction' + type: array + x-stream-index: "001.013" + parent_id: + type: string + x-stream-index: "001.017" + pin_expires: format: date-time type: string - x-stream-index: "013" - last_message_at: + x-stream-index: "001.048" + pinned: + type: boolean + x-stream-index: "001.044" + pinned_at: format: date-time type: string - x-stream-index: "010" - parent_message: + x-stream-index: "001.045" + pinned_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001.047" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001.051" + poll_id: + type: string + x-stream-index: "001.050" + quoted_message: $ref: '#/components/schemas/Message' - x-stream-index: "004" - parent_message_id: + x-stream-index: "001.023" + quoted_message_id: type: string - x-stream-index: "003" - participant_count: - format: int32 - type: integer - x-stream-index: "008" + x-stream-index: "001.022" + reaction_counts: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "001.014" + reaction_scores: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "001.015" reply_count: format: int32 type: integer - x-stream-index: "007" + x-stream-index: "001.020" + shadowed: + type: boolean + x-stream-index: "001.033" + show_in_channel: + type: boolean + x-stream-index: "001.019" + silent: + type: boolean + x-stream-index: "001.042" + text: + type: string + x-stream-index: "001.004" thread_participants: items: - $ref: '#/components/schemas/ThreadParticipant' + $ref: '#/components/schemas/UserObject' type: array - x-stream-index: "009" - title: + x-stream-index: "001.025" + type: type: string - x-stream-index: "014" + x-stream-index: "001.008" updated_at: format: date-time type: string - x-stream-index: "012" + x-stream-index: "001.029" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001.010" required: - - channel_cid - - parent_message_id - - created_by_user_id + - id + - text + - html + - type + - attachments + - latest_reactions + - own_reactions + - reaction_counts + - reaction_scores + - reply_count + - deleted_reply_count + - cid - created_at - updated_at - - title - - custom + - Custom + - shadowed + - mentioned_users + - silent + - pinned + - poll_id type: object - ThreadState: - description: Represents a conversation thread linked to a specific message in - a channel. - nullable: true + SearchWarning: properties: - Custom: - type: object - writeOnly: true - x-stream-index: "001.017" - channel: - $ref: '#/components/schemas/Channel' - description: Channel is the channel the thread belongs to - title: Channel - x-stream-index: "001.004" - channel_cid: - description: Channel CID is unique string identifier of the channel - title: Channel CID - type: string - x-stream-index: "001.003" - created_at: - description: Date/time of creation - format: date-time - title: Created at - type: string - x-stream-index: "001.013" - created_by: - $ref: '#/components/schemas/UserObject' - description: Created By is the user who created the thread - title: Created By - x-stream-index: "001.008" - deleted_at: - description: Date/time of deletion - format: date-time - title: Deleted at - type: string - x-stream-index: "001.015" - last_message_at: - description: Last Message At is the time of the last message in the thread - format: date-time - title: Last Message At - type: string - x-stream-index: "001.012" - latest_replies: + channel_search_cids: + description: Channel CIDs for the searched channels items: - $ref: '#/components/schemas/Message' + type: string + title: Channel Search CIDs type: array - x-stream-index: "002" - parent_message: - $ref: '#/components/schemas/Message' - description: Parent Message is the message the thread is replying to - title: Parent Message - x-stream-index: "001.006" - parent_message_id: - description: Parent Message ID is unique string identifier of the parent - message - title: Parent Message ID - type: string - x-stream-index: "001.005" - participant_count: - description: The number of participants in the thread + x-stream-index: "004" + channel_search_count: + description: Number of channels searched format: int32 - title: Participant Count + title: Channel Search Count type: integer - x-stream-index: "001.010" - read: - items: - $ref: '#/components/schemas/Read' - type: array x-stream-index: "003" - reply_count: - description: The number of replies in the thread + warning_code: + description: Code corresponding to the warning format: int32 - title: Reply Count + title: Warning Code type: integer - x-stream-index: "001.009" - thread_participants: - items: - $ref: '#/components/schemas/ThreadParticipant' - type: array - x-stream-index: "001.011" - title: - description: Title is the title of the thread - title: Title - type: string - x-stream-index: "001.016" - updated_at: - description: Date/time of the last update - format: date-time - title: Updated at + x-stream-index: "002" + warning_description: + description: Description of the warning + title: Warning Description type: string - x-stream-index: "001.014" + x-stream-index: "001" required: - - channel_cid - - parent_message_id - - created_at - - updated_at - - title - - Custom - - latest_replies - title: Thread + - warning_description + - warning_code type: object - ThreadStateResponse: + SendEventRequest: + nullable: true properties: - channel: - $ref: '#/components/schemas/ChannelResponse' - x-stream-index: "001.002" - channel_cid: - type: string - x-stream-index: "001.001" - created_at: - format: date-time - type: string - x-stream-index: "001.011" - created_by: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001.006" - created_by_user_id: - type: string - x-stream-index: "001.005" - custom: - type: object - x-stream-index: "001.015" - deleted_at: - format: date-time - type: string - x-stream-index: "001.013" - last_message_at: - format: date-time - type: string - x-stream-index: "001.010" - latest_replies: - items: - $ref: '#/components/schemas/Message' - type: array - x-stream-index: "002" - parent_message: - $ref: '#/components/schemas/Message' - x-stream-index: "001.004" - parent_message_id: - type: string - x-stream-index: "001.003" - participant_count: - format: int32 - type: integer - x-stream-index: "001.008" - read: - items: - $ref: '#/components/schemas/Read' - type: array - x-stream-index: "003" - reply_count: - format: int32 - type: integer - x-stream-index: "001.007" - thread_participants: - items: - $ref: '#/components/schemas/ThreadParticipant' - type: array - x-stream-index: "001.009" - title: - type: string - x-stream-index: "001.014" - updated_at: - format: date-time - type: string - x-stream-index: "001.012" + event: + $ref: '#/components/schemas/EventRequest' + x-stream-index: "001" required: - - channel_cid - - parent_message_id - - created_by_user_id - - created_at - - updated_at - - title - - custom - - latest_replies + - event type: object - ThreadUpdatedEvent: + SendEventResponse: + nullable: true properties: - channel_id: - type: string - x-stream-index: "001.002" - channel_type: - type: string - x-stream-index: "001.003" - cid: + duration: type: string x-stream-index: "001.001" - created_at: - format: date-time - type: string - x-stream-index: "004.002" - thread: - $ref: '#/components/schemas/Thread' - x-stream-index: "003.001" - type: - default: thread.updated - type: string - x-stream-index: "004.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "002.001" required: - - cid - - channel_id - - channel_type - - type - - created_at - title: ThreadUpdatedEvent + - duration type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - Thresholds: - description: Sets thresholds for AI moderation + SendMessageRequest: + nullable: true properties: - explicit: - $ref: '#/components/schemas/LabelThresholds' - description: Thresholds for explicit messages - title: Explicit + message: + $ref: '#/components/schemas/MessageRequest' x-stream-index: "001" - spam: - $ref: '#/components/schemas/LabelThresholds' - description: Thresholds for spam - title: Spam - x-stream-index: "002" - toxic: - $ref: '#/components/schemas/LabelThresholds' - description: Thresholds for toxic messages - title: Toxic + skip_enrich_url: + type: boolean x-stream-index: "003" - title: Auto moderation thresholds + skip_push: + type: boolean + x-stream-index: "002" + required: + - message type: object - ThumbnailResponse: + SendMessageResponse: + nullable: true properties: - image_url: + duration: + description: Duration of the request in human-readable format + title: Duration type: string + x-stream-index: "003.001" + message: + $ref: '#/components/schemas/Message' x-stream-index: "001" + pending_message_metadata: + additionalProperties: + type: string + type: object + x-stream-index: "002" required: - - image_url + - message + - duration type: object - ThumbnailsSettings: + SendReactionRequest: + nullable: true properties: - enabled: - type: boolean + ID: + type: string + writeOnly: true x-stream-index: "001" + enforce_unique: + description: Whether to replace all existing user reactions + title: Enforce unique + type: boolean + x-stream-index: "003" + reaction: + $ref: '#/components/schemas/ReactionRequest' + x-stream-index: "002" + skip_push: + description: Skips any mobile push notifications + title: Skip push + type: boolean + x-stream-index: "004" required: - - enabled + - reaction type: object - ThumbnailsSettingsRequest: + SendReactionResponse: + nullable: true properties: - enabled: - type: boolean + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "002.001" + reaction: + $ref: '#/components/schemas/ReactionResponse' x-stream-index: "001" + required: + - reaction + - duration type: object - TranscriptionSettings: + ShowChannelRequest: + nullable: true + type: object + ShowChannelResponse: + nullable: true properties: - closed_caption_mode: + duration: + description: Duration of the request in human-readable format + title: Duration type: string + x-stream-index: "001.001" + required: + - duration + type: object + SortParam: + nullable: true + properties: + direction: + description: Direction of sorting, -1 for descending, 1 for ascending + format: int32 + title: Direction + type: integer x-stream-index: "002" - mode: - enum: - - available - - disabled - - auto-on + field: + description: Name of field to sort by + title: Field type: string x-stream-index: "001" - required: - - mode - - closed_caption_mode type: object - TranscriptionSettingsRequest: + SortParamRequest: + nullable: true properties: - closed_caption_mode: - type: string + direction: + description: Direction of sorting, -1 for descending, 1 for ascending + format: int32 + title: Direction + type: integer x-stream-index: "002" - mode: - enum: - - available - - disabled - - auto-on + field: + description: Name of field to sort by + title: Field type: string x-stream-index: "001" type: object - TranslateMessageRequest: + StartHLSBroadcastingRequest: + nullable: true + type: object + StartHLSBroadcastingResponse: nullable: true properties: - language: - description: Language to translate message to - enum: - - af - - sq - - am - - ar - - az - - bn - - bs - - bg - - zh - - zh-TW - - hr - - cs - - da - - fa-AF - - nl - - en - - et - - fi - - fr - - fr-CA - - ka - - de - - el - - ha - - he - - hi - - hu - - id - - it - - ja - - ko - - lv - - ms - - "no" - - fa - - ps - - pl - - pt - - ro - - ru - - sr - - sk - - sl - - so - - es - - es-MX - - sw - - sv - - tl - - ta - - th - - tr - - uk - - ur - - vi - title: Language + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "001.001" + playlist_url: type: string x-stream-index: "002" required: - - language + - duration + - playlist_url type: object - TruncateChannelRequest: + StartRecordingRequest: nullable: true properties: - hard_delete: - description: Permanently delete channel data (messages, reactions, etc.) - title: Hard delete - type: boolean + recording_external_storage: + type: string x-stream-index: "002" - message: - $ref: '#/components/schemas/MessageRequest' - x-stream-index: "004" - skip_push: - description: When `message` is set disables all push notifications for it - title: Skip push - type: boolean - x-stream-index: "005" - truncated_at: - description: Truncate channel data up to `truncated_at`. The system message - (if provided) creation time is always greater than `truncated_at` - format: date-time - title: Truncated at + type: object + StartRecordingResponse: + nullable: true + properties: + duration: type: string - x-stream-index: "006" + x-stream-index: "001.001" + required: + - duration type: object - TruncateChannelResponse: + StartTranscriptionRequest: nullable: true properties: - channel: - $ref: '#/components/schemas/ChannelResponse' + transcription_external_storage: + type: string + x-stream-index: "002" + type: object + StartTranscriptionResponse: + nullable: true + properties: + duration: + type: string + x-stream-index: "001.001" + required: + - duration + type: object + Stats: + properties: + average_seconds: + format: float + type: number + x-stream-index: "001" + max_seconds: + format: float + type: number x-stream-index: "002" + required: + - average_seconds + - max_seconds + type: object + StatsOptions: + properties: + reporting_interval_ms: + format: int32 + type: integer + x-stream-index: "001" + required: + - reporting_interval_ms + type: object + StopHLSBroadcastingRequest: + nullable: true + type: object + StopHLSBroadcastingResponse: + nullable: true + properties: duration: description: Duration of the request in human-readable format title: Duration type: string x-stream-index: "001.001" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "003" required: - duration type: object - TypingStartEvent: + StopLiveRequest: + nullable: true + type: object + StopLiveResponse: + nullable: true properties: - channel_id: - type: string - x-stream-index: "003.002" - channel_type: - type: string - x-stream-index: "003.003" - cid: - type: string - x-stream-index: "003.001" - created_at: - format: date-time - type: string - x-stream-index: "004.002" - parent_id: - type: string + call: + $ref: '#/components/schemas/CallResponse' x-stream-index: "001" - type: - default: typing.start + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "004.001" - user: - $ref: '#/components/schemas/UserObject' x-stream-index: "002.001" required: - - cid - - channel_id - - channel_type - - type - - created_at - title: TypingStartEvent + - call + - duration type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - TypingStopEvent: + StopRecordingRequest: + nullable: true + type: object + StopRecordingResponse: + nullable: true properties: - channel_id: - type: string - x-stream-index: "002.002" - channel_type: - type: string - x-stream-index: "002.003" - cid: - type: string - x-stream-index: "002.001" - created_at: - format: date-time - type: string - x-stream-index: "004.002" - parent_id: - type: string - x-stream-index: "001" - type: - default: typing.stop + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "004.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" + x-stream-index: "001.001" required: - - cid - - channel_id - - channel_type - - type - - created_at - title: TypingStopEvent + - duration type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UnblockUserRequest: + StopTranscriptionRequest: + nullable: true + type: object + StopTranscriptionResponse: nullable: true properties: - user_id: - description: the user to unblock - title: UserID + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "003" + x-stream-index: "001.001" required: - - user_id + - duration type: object - UnblockUserResponse: + StopWatchingResponse: nullable: true properties: duration: @@ -10166,1689 +10342,3222 @@ components: required: - duration type: object - UnblockedUserEvent: - description: "This event is sent when a user is unblocked on a call, \nthis - can be useful to notify the user that they can now join the call again" + Subsession: properties: - call_cid: - type: string - x-stream-index: "002.001" - created_at: - format: date-time + sfu_id: type: string - x-stream-index: "001.002" - type: - default: call.unblocked_user - description: 'The type of event: "call.unblocked_user" in this case' - title: Event Type - type: string - x-stream-index: "001.001" - user: - $ref: '#/components/schemas/UserResponse' - description: The user that was unblocked - title: User x-stream-index: "003" + ts_ended_at: + format: int64 + type: integer + x-stream-index: "002" + ts_joined_at: + format: int64 + type: integer + x-stream-index: "001" required: - - type - - created_at - - call_cid - - user - title: UnblockedUserEvent + - ts_joined_at + - ts_ended_at + - sfu_id type: object - x-stream-event-call-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UnmuteChannelRequest: + SyncRequest: nullable: true properties: channel_cids: - description: Channel CIDs to mute (if multiple channels) + description: List of channel CIDs to sync items: type: string - maximum: 25 + maximum: 255 + minimum: 1 title: Channel CIDs type: array - x-stream-index: "001.002" - expiration: - description: Duration of mute in milliseconds - title: Expiration - type: integer - x-stream-index: "001.003" + x-stream-index: "001" + connection_id: + type: string + x-stream-index: "006.003" + last_sync_at: + description: Date from which synchronization should happen + format: date-time + title: Last sync at + type: string + x-stream-index: "002" + watch: + description: If set to true this will start watching requested and newly + added channels that user has access to. If error occurred with this option + enabled and it is not an input error - channels will still be watched. + title: Watch synced channels + type: boolean + x-stream-index: "004" + with_inaccessible_cids: + description: If set to true this will add 'inaccessible_cids' to response + type + title: With inaccessible CIDs + type: boolean + x-stream-index: "003" required: - - channel_cids + - last_sync_at type: object - UnmuteResponse: + SyncResponse: nullable: true properties: duration: - description: Duration of the request in human-readable format - title: Duration type: string - x-stream-index: "002.001" - non_existing_users: + x-stream-index: "003.001" + events: + description: List of events items: - type: string + $ref: '#/components/schemas/WSEvent' + title: Events type: array x-stream-index: "001" - required: - - duration - type: object - UnmuteUserRequest: - nullable: true - properties: - target_ids: - description: User IDs to mute (if multiple users) + inaccessible_cids: + description: List of CIDs that user can't access items: type: string - maximum: 1000 - title: Target IDs + title: Inaccessible CIDs type: array - x-stream-index: "001.002" - timeout: - description: Duration of mute in minutes - minimum: 0 - title: Timeout - type: integer - x-stream-index: "001.003" - required: - - target_ids - type: object - UnpinRequest: - nullable: true - properties: - session_id: - type: string - x-stream-index: "003" - user_id: - type: string x-stream-index: "002" required: - - user_id - - session_id - type: object - UnpinResponse: - nullable: true - properties: - duration: - description: Duration of the request in human-readable format - title: Duration - type: string - x-stream-index: "001.001" - required: + - events - duration type: object - UnreadCountsChannel: + TargetResolution: properties: - channel_id: - type: string - x-stream-index: "001" - last_read: - format: date-time - type: string + bitrate: + format: int32 + maximum: 6000000 + type: integer x-stream-index: "003" - unread_count: + height: format: int32 + maximum: 2560 + minimum: 240 type: integer x-stream-index: "002" + width: + format: int32 + maximum: 2560 + minimum: 240 + type: integer + x-stream-index: "001" required: - - channel_id - - unread_count - - last_read + - width + - height + - bitrate type: object - UnreadCountsChannelType: + TargetResolutionRequest: properties: - channel_count: + bitrate: + format: int32 + maximum: 6000000 + type: integer + x-stream-index: "003" + height: format: int32 + maximum: 2560 + minimum: 240 type: integer x-stream-index: "002" - channel_type: - type: string - x-stream-index: "001" - unread_count: + width: format: int32 + maximum: 2560 + minimum: 240 type: integer - x-stream-index: "003" - required: - - channel_type - - channel_count - - unread_count + x-stream-index: "001" type: object - UnreadCountsThread: + Thread: + description: Represents a conversation thread linked to a specific message in + a channel. properties: - last_read: + Custom: + type: object + writeOnly: true + x-stream-index: "017" + channel: + $ref: '#/components/schemas/Channel' + description: Channel is the channel the thread belongs to + title: Channel + x-stream-index: "004" + channel_cid: + description: Channel CID is unique string identifier of the channel + title: Channel CID + type: string + x-stream-index: "003" + created_at: + description: Date/time of creation format: date-time + title: Created at type: string - x-stream-index: "002" - last_read_message_id: + x-stream-index: "013" + created_by: + $ref: '#/components/schemas/UserObject' + description: Created By is the user who created the thread + title: Created By + x-stream-index: "008" + deleted_at: + description: Date/time of deletion + format: date-time + title: Deleted at type: string - x-stream-index: "003" + x-stream-index: "015" + last_message_at: + description: Last Message At is the time of the last message in the thread + format: date-time + title: Last Message At + type: string + x-stream-index: "012" + parent_message: + $ref: '#/components/schemas/Message' + description: Parent Message is the message the thread is replying to + title: Parent Message + x-stream-index: "006" parent_message_id: + description: Parent Message ID is unique string identifier of the parent + message + title: Parent Message ID type: string - x-stream-index: "004" - unread_count: + x-stream-index: "005" + participant_count: + description: The number of participants in the thread format: int32 + title: Participant Count type: integer - x-stream-index: "001" - required: - - unread_count - - last_read - - last_read_message_id - - parent_message_id - type: object - UpdateCallMembersRequest: - nullable: true - properties: - remove_members: - description: List of userID to remove + x-stream-index: "010" + reply_count: + description: The number of replies in the thread + format: int32 + title: Reply Count + type: integer + x-stream-index: "009" + thread_participants: items: - type: string - maximum: 100 - title: Remove Members + $ref: '#/components/schemas/ThreadParticipant' type: array - x-stream-index: "003" - update_members: - description: List of members to update or insert - items: - $ref: '#/components/schemas/MemberRequest' - maximum: 100 - title: Update Members - type: array - x-stream-index: "004" - type: object - UpdateCallMembersResponse: - nullable: true - properties: - duration: - description: Duration of the request in human-readable format - title: Duration + x-stream-index: "011" + title: + description: Title is the title of the thread + title: Title type: string - x-stream-index: "001.001" - members: - items: - $ref: '#/components/schemas/MemberResponse' - type: array - x-stream-index: "002" + x-stream-index: "016" + updated_at: + description: Date/time of the last update + format: date-time + title: Updated at + type: string + x-stream-index: "014" required: - - duration - - members + - channel_cid + - parent_message_id + - created_at + - updated_at + - title + - Custom + title: Thread type: object - UpdateCallRequest: + ThreadParticipant: + description: Represents a user that is participating in a thread. nullable: true properties: - custom: - description: Custom data for this object - title: Custom data + Custom: type: object + writeOnly: true + x-stream-index: "010" + app_pk: + format: int32 + readOnly: true + type: integer + x-stream-index: "002" + channel_cid: + type: string x-stream-index: "003" - settings_override: - $ref: '#/components/schemas/CallSettingsRequest' - description: the settings to change for this call - title: Settings Override - x-stream-index: "004" - starts_at: - description: the time the call is scheduled to start + created_at: + description: Date/time of creation format: date-time - title: Starts At + title: Created at type: string - x-stream-index: "005" - type: object - UpdateCallResponse: - description: Represents a call - nullable: true - properties: - call: - $ref: '#/components/schemas/CallResponse' - x-stream-index: "001.001" - duration: + x-stream-index: "007" + last_read_at: + format: date-time type: string - x-stream-index: "002.001" - members: - items: - $ref: '#/components/schemas/MemberResponse' - type: array - x-stream-index: "001.002" - membership: - $ref: '#/components/schemas/MemberResponse' - x-stream-index: "001.003" - own_capabilities: - items: - $ref: '#/components/schemas/OwnCapability' - type: array - x-stream-index: "001.004" - required: - - call - - members - - own_capabilities - - duration - title: Call - type: object - UpdateChannelPartialRequest: - nullable: true - properties: - set: - type: object - x-stream-index: "002.001" - unset: - items: - type: string - type: array - x-stream-index: "002.002" + x-stream-index: "009" + left_thread_at: + description: Left Thread At is the time when the user left the thread + format: date-time + title: Left Thread At + type: string + x-stream-index: "008" + thread_id: + description: Thead ID is unique string identifier of the thread + title: ID + type: string + x-stream-index: "004" + user: + $ref: '#/components/schemas/UserObject' + description: User is the user object + title: User + x-stream-index: "006" + user_id: + description: User ID is unique string identifier of the user + title: User ID + type: string + x-stream-index: "005" required: - - set - - unset + - app_pk + - channel_cid + - created_at + - last_read_at + - Custom + title: ThreadParticipant type: object - UpdateChannelPartialResponse: - nullable: true + ThreadResponse: properties: channel: $ref: '#/components/schemas/ChannelResponse' + x-stream-index: "002" + channel_cid: + type: string x-stream-index: "001" - duration: - description: Duration of the request in human-readable format - title: Duration + created_at: + format: date-time type: string - x-stream-index: "003.001" - members: + x-stream-index: "011" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "006" + created_by_user_id: + type: string + x-stream-index: "005" + custom: + type: object + x-stream-index: "015" + deleted_at: + format: date-time + type: string + x-stream-index: "013" + last_message_at: + format: date-time + type: string + x-stream-index: "010" + parent_message: + $ref: '#/components/schemas/Message' + x-stream-index: "004" + parent_message_id: + type: string + x-stream-index: "003" + participant_count: + format: int32 + type: integer + x-stream-index: "008" + reply_count: + format: int32 + type: integer + x-stream-index: "007" + thread_participants: items: - $ref: '#/components/schemas/ChannelMember' + $ref: '#/components/schemas/ThreadParticipant' type: array - x-stream-index: "002" + x-stream-index: "009" + title: + type: string + x-stream-index: "014" + updated_at: + format: date-time + type: string + x-stream-index: "012" required: - - members - - duration + - channel_cid + - parent_message_id + - created_by_user_id + - created_at + - updated_at + - title + - custom type: object - UpdateChannelRequest: + ThreadState: + description: Represents a conversation thread linked to a specific message in + a channel. nullable: true properties: - accept_invite: - description: Set to `true` to accept the invite - title: Accept invite - type: boolean - x-stream-index: "008" - add_members: - description: List of user IDs to add to the channel + Custom: + type: object + writeOnly: true + x-stream-index: "001.017" + channel: + $ref: '#/components/schemas/Channel' + description: Channel is the channel the thread belongs to + title: Channel + x-stream-index: "001.004" + channel_cid: + description: Channel CID is unique string identifier of the channel + title: Channel CID + type: string + x-stream-index: "001.003" + created_at: + description: Date/time of creation + format: date-time + title: Created at + type: string + x-stream-index: "001.013" + created_by: + $ref: '#/components/schemas/UserObject' + description: Created By is the user who created the thread + title: Created By + x-stream-index: "001.008" + deleted_at: + description: Date/time of deletion + format: date-time + title: Deleted at + type: string + x-stream-index: "001.015" + last_message_at: + description: Last Message At is the time of the last message in the thread + format: date-time + title: Last Message At + type: string + x-stream-index: "001.012" + latest_replies: items: - $ref: '#/components/schemas/ChannelMemberRequest' - maximum: 100 - title: Add members + $ref: '#/components/schemas/Message' type: array - x-stream-index: "001" - add_moderators: - description: List of user IDs to make channel moderators + x-stream-index: "002" + parent_message: + $ref: '#/components/schemas/Message' + description: Parent Message is the message the thread is replying to + title: Parent Message + x-stream-index: "001.006" + parent_message_id: + description: Parent Message ID is unique string identifier of the parent + message + title: Parent Message ID + type: string + x-stream-index: "001.005" + participant_count: + description: The number of participants in the thread + format: int32 + title: Participant Count + type: integer + x-stream-index: "001.010" + read: items: - type: string - maximum: 100 - title: Add moderators + $ref: '#/components/schemas/Read' type: array x-stream-index: "003" - assign_roles: - description: List of channel member role assignments. If any specified user - is not part of the channel, the request will fail - items: - $ref: '#/components/schemas/ChannelMemberRequest' - maximum: 100 - title: Assign roles - type: array - x-stream-index: "006" - cooldown: - description: Sets cool down period for the channel in seconds + reply_count: + description: The number of replies in the thread format: int32 - maximum: 120 - minimum: 0 - title: Cool down + title: Reply Count type: integer - x-stream-index: "007" - data: - $ref: '#/components/schemas/ChannelRequest' - x-stream-index: "013.001" - demote_moderators: - description: List of user IDs to take away moderators status from - items: - type: string - maximum: 100 - title: Demote moderators - type: array - x-stream-index: "004" - hide_history: - description: Set to `true` to hide channel's history when adding new members - title: Hide history - type: boolean - x-stream-index: "012" - invites: - description: List of user IDs to invite to the channel - items: - $ref: '#/components/schemas/ChannelMemberRequest' - maximum: 100 - title: Invites - type: array - x-stream-index: "005" - message: - $ref: '#/components/schemas/MessageRequest' - description: Message to send to the chat when channel is successfully updated - title: Message - x-stream-index: "010" - reject_invite: - description: Set to `true` to reject the invite - title: Reject invite - type: boolean - x-stream-index: "009" - remove_members: - description: List of user IDs to remove from the channel + x-stream-index: "001.009" + thread_participants: items: - type: string - maximum: 100 - title: Remove members + $ref: '#/components/schemas/ThreadParticipant' type: array - x-stream-index: "002" - skip_push: - description: When `message` is set disables all push notifications for it - title: Skip push - type: boolean - x-stream-index: "011" + x-stream-index: "001.011" + title: + description: Title is the title of the thread + title: Title + type: string + x-stream-index: "001.016" + updated_at: + description: Date/time of the last update + format: date-time + title: Updated at + type: string + x-stream-index: "001.014" required: - - remove_members - - add_moderators - - demote_moderators - title: Channel update request + - channel_cid + - parent_message_id + - created_at + - updated_at + - title + - Custom + - latest_replies + title: Thread type: object - x-stream-docs-page-id: channel_update - UpdateChannelResponse: - nullable: true + ThreadStateResponse: properties: channel: $ref: '#/components/schemas/ChannelResponse' - x-stream-index: "001" - duration: - description: Duration of the request in human-readable format - title: Duration + x-stream-index: "001.002" + channel_cid: type: string - x-stream-index: "004.001" - members: + x-stream-index: "001.001" + created_at: + format: date-time + type: string + x-stream-index: "001.011" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001.006" + created_by_user_id: + type: string + x-stream-index: "001.005" + custom: + type: object + x-stream-index: "001.015" + deleted_at: + format: date-time + type: string + x-stream-index: "001.013" + last_message_at: + format: date-time + type: string + x-stream-index: "001.010" + latest_replies: items: - $ref: '#/components/schemas/ChannelMember' + $ref: '#/components/schemas/Message' type: array - x-stream-index: "003" - message: - $ref: '#/components/schemas/Message' x-stream-index: "002" - required: - - members - - duration - type: object - UpdateMessagePartialRequest: - nullable: true - properties: - set: - description: Sets new field values - title: Set - type: object - x-stream-index: "002.001" - x-stream-map: - description: New value to set - key: field - title: Value - skip_enrich_url: - type: boolean - x-stream-index: "001" - unset: - description: Array of field names to unset + parent_message: + $ref: '#/components/schemas/Message' + x-stream-index: "001.004" + parent_message_id: + type: string + x-stream-index: "001.003" + participant_count: + format: int32 + type: integer + x-stream-index: "001.008" + read: items: - type: string - title: Unset + $ref: '#/components/schemas/Read' type: array - x-stream-index: "002.002" + x-stream-index: "003" + reply_count: + format: int32 + type: integer + x-stream-index: "001.007" + thread_participants: + items: + $ref: '#/components/schemas/ThreadParticipant' + type: array + x-stream-index: "001.009" + title: + type: string + x-stream-index: "001.014" + updated_at: + format: date-time + type: string + x-stream-index: "001.012" required: - - set - - unset + - channel_cid + - parent_message_id + - created_by_user_id + - created_at + - updated_at + - title + - custom + - latest_replies type: object - UpdateMessagePartialResponse: - nullable: true + ThreadUpdatedEvent: properties: - duration: - description: Duration of the request in human-readable format - title: Duration + channel_id: + type: string + x-stream-index: "001.002" + channel_type: + type: string + x-stream-index: "001.003" + cid: type: string + x-stream-index: "001.001" + created_at: + format: date-time + type: string + x-stream-index: "004.002" + thread: + $ref: '#/components/schemas/Thread' x-stream-index: "003.001" - message: - $ref: '#/components/schemas/Message' - x-stream-index: "001" - pending_message_metadata: - additionalProperties: - type: string - type: object - x-stream-index: "002" + type: + default: thread.updated + type: string + x-stream-index: "004.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "002.001" required: - - message - - duration + - cid + - channel_id + - channel_type + - type + - created_at + title: ThreadUpdatedEvent type: object - UpdateMessageRequest: - nullable: true + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + Thresholds: + description: Sets thresholds for AI moderation properties: - message: - $ref: '#/components/schemas/MessageRequest' + explicit: + $ref: '#/components/schemas/LabelThresholds' + description: Thresholds for explicit messages + title: Explicit x-stream-index: "001" - skip_enrich_url: - type: boolean + spam: + $ref: '#/components/schemas/LabelThresholds' + description: Thresholds for spam + title: Spam x-stream-index: "002" - required: - - message + toxic: + $ref: '#/components/schemas/LabelThresholds' + description: Thresholds for toxic messages + title: Toxic + x-stream-index: "003" + title: Auto moderation thresholds type: object - UpdateMessageResponse: - nullable: true + ThumbnailResponse: properties: - duration: - description: Duration of the request in human-readable format - title: Duration + image_url: type: string - x-stream-index: "003.001" - message: - $ref: '#/components/schemas/Message' x-stream-index: "001" - pending_message_metadata: - additionalProperties: - type: string - type: object - x-stream-index: "002" required: - - message - - duration + - image_url type: object - UpdateThreadPartialRequest: - nullable: true + ThumbnailsSettings: properties: - ID: - type: string - writeOnly: true + enabled: + type: boolean x-stream-index: "001" - set: - type: object - x-stream-index: "004.001" - unset: - items: - type: string - type: array - x-stream-index: "004.002" required: - - set - - unset + - enabled type: object - UpdateThreadPartialResponse: - nullable: true + ThumbnailsSettingsRequest: properties: - duration: + enabled: + type: boolean + x-stream-index: "001" + type: object + TranscriptionSettings: + properties: + closed_caption_mode: + type: string + x-stream-index: "002" + mode: + enum: + - available + - disabled + - auto-on type: string - x-stream-index: "002.001" - thread: - $ref: '#/components/schemas/ThreadResponse' - description: Updated thread (not enriched) - title: Thread x-stream-index: "001" required: - - thread - - duration + - mode + - closed_caption_mode type: object - UpdateUserPartialRequest: - nullable: true + TranscriptionSettingsRequest: properties: - id: - description: User ID to update - title: ID + closed_caption_mode: + type: string + x-stream-index: "002" + mode: + enum: + - available + - disabled + - auto-on type: string x-stream-index: "001" - set: - type: object - x-stream-index: "002.001" - unset: - items: - type: string - type: array - x-stream-index: "002.002" + type: object + TranslateMessageRequest: + nullable: true + properties: + language: + description: Language to translate message to + enum: + - af + - sq + - am + - ar + - az + - bn + - bs + - bg + - zh + - zh-TW + - hr + - cs + - da + - fa-AF + - nl + - en + - et + - fi + - fr + - fr-CA + - ka + - de + - el + - ha + - he + - hi + - hu + - id + - it + - ja + - ko + - lv + - ms + - "no" + - fa + - ps + - pl + - pt + - ro + - ru + - sr + - sk + - sl + - so + - es + - es-MX + - sw + - sv + - tl + - ta + - th + - tr + - uk + - ur + - vi + title: Language + type: string + x-stream-index: "002" required: - - id - - set - - unset + - language type: object - UpdateUserPermissionsRequest: + TruncateChannelRequest: nullable: true properties: - grant_permissions: - items: - type: string - type: array + hard_delete: + description: Permanently delete channel data (messages, reactions, etc.) + title: Hard delete + type: boolean x-stream-index: "002" - revoke_permissions: - items: - type: string - type: array - x-stream-index: "003" - user_id: + message: + $ref: '#/components/schemas/MessageRequest' + x-stream-index: "004" + skip_push: + description: When `message` is set disables all push notifications for it + title: Skip push + type: boolean + x-stream-index: "005" + truncated_at: + description: Truncate channel data up to `truncated_at`. The system message + (if provided) creation time is always greater than `truncated_at` + format: date-time + title: Truncated at type: string - x-stream-index: "001" - required: - - user_id + x-stream-index: "006" type: object - UpdateUserPermissionsResponse: + TruncateChannelResponse: nullable: true properties: + channel: + $ref: '#/components/schemas/ChannelResponse' + x-stream-index: "002" duration: description: Duration of the request in human-readable format title: Duration type: string x-stream-index: "001.001" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "003" required: - duration type: object - UpdateUsersRequest: - nullable: true - properties: - users: - additionalProperties: - $ref: '#/components/schemas/UserObjectRequest' - description: Object containing users - title: Users - type: object - x-stream-index: "001" - x-stream-map: - key: user_id - required: - - users - type: object - UpdateUsersResponse: - nullable: true + TypingStartEvent: properties: - duration: + channel_id: type: string - x-stream-index: "003.001" - membership_deletion_task_id: + x-stream-index: "003.002" + channel_type: type: string - x-stream-index: "002" - users: - additionalProperties: - $ref: '#/components/schemas/UserObject' - description: Object containing users - title: Users - type: object - x-stream-index: "001" - x-stream-map: - key: user_id - required: - - users - - membership_deletion_task_id - - duration - type: object - UpdatedCallPermissionsEvent: - description: This event is sent to notify about permission changes for a user, - clients receiving this event should update their UI accordingly - properties: - call_cid: + x-stream-index: "003.003" + cid: type: string - x-stream-index: "002.001" + x-stream-index: "003.001" created_at: format: date-time type: string - x-stream-index: "001.002" - own_capabilities: - description: The capabilities of the current user - items: - $ref: '#/components/schemas/OwnCapability' - title: Own capabilities - type: array - x-stream-index: "004" + x-stream-index: "004.002" + parent_id: + type: string + x-stream-index: "001" type: - default: call.permissions_updated - description: 'The type of event: "call.permissions_updated" in this case' - title: Event Type + default: typing.start type: string - x-stream-index: "001.001" + x-stream-index: "004.001" user: - $ref: '#/components/schemas/UserResponse' - description: The user who received the new permissions - title: User - x-stream-index: "003" + $ref: '#/components/schemas/UserObject' + x-stream-index: "002.001" required: + - cid + - channel_id + - channel_type - type - created_at - - call_cid - - user - - own_capabilities - title: UpdatedCallPermissionsEvent + title: TypingStartEvent type: object - x-stream-event-call-type: true + x-stream-event-client-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent - UserBannedEvent: + TypingStopEvent: properties: channel_id: type: string - x-stream-index: "006.002" + x-stream-index: "002.002" channel_type: type: string - x-stream-index: "006.003" + x-stream-index: "002.003" cid: type: string - x-stream-index: "006.001" + x-stream-index: "002.001" created_at: format: date-time type: string - x-stream-index: "008.002" - created_by: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001" - expiration: - format: date-time - type: string - x-stream-index: "003" - reason: - type: string - x-stream-index: "004" - shadow: - type: boolean - x-stream-index: "002" - team: + x-stream-index: "004.002" + parent_id: type: string - x-stream-index: "005.001" + x-stream-index: "001" type: - default: user.banned + default: typing.stop type: string - x-stream-index: "008.001" + x-stream-index: "004.001" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "007.001" + x-stream-index: "003.001" required: - - created_by - - shadow - cid - channel_id - channel_type - type - created_at - title: UserBannedEvent + title: TypingStopEvent type: object x-stream-event-client-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent - UserDeactivatedEvent: + UnblockUserRequest: + nullable: true properties: - created_at: - format: date-time + user_id: + description: the user to unblock + title: UserID type: string - x-stream-index: "003.002" - created_by: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001" - type: - default: user.deactivated + x-stream-index: "003" + required: + - user_id + type: object + UnblockUserResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "003.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "002.001" + x-stream-index: "001.001" required: - - created_by - - type - - created_at - title: UserDeactivatedEvent + - duration type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserDeletedEvent: + UnblockedUserEvent: + description: "This event is sent when a user is unblocked on a call, \nthis + can be useful to notify the user that they can now join the call again" properties: + call_cid: + type: string + x-stream-index: "002.001" created_at: format: date-time type: string - x-stream-index: "002.002" - delete_conversation_channels: - type: boolean - x-stream-index: "005" - hard_delete: - type: boolean - x-stream-index: "003.001" - mark_messages_deleted: - type: boolean - x-stream-index: "004" + x-stream-index: "001.002" type: - default: user.deleted + default: call.unblocked_user + description: 'The type of event: "call.unblocked_user" in this case' + title: Event Type type: string - x-stream-index: "002.001" - user: - $ref: '#/components/schemas/UserObject' x-stream-index: "001.001" + user: + $ref: '#/components/schemas/UserResponse' + description: The user that was unblocked + title: User + x-stream-index: "003" required: - type - created_at - - hard_delete - - mark_messages_deleted - - delete_conversation_channels - title: UserDeletedEvent + - call_cid + - user + title: UnblockedUserEvent type: object - x-stream-event-client-type: true + x-stream-event-call-type: true x-stream-is-event: true x-stream-ws-base-event-name: VideoEvent - UserInfoResponse: + UnmuteChannelRequest: + nullable: true properties: - custom: - type: object - x-stream-index: "003" - image: - type: string - x-stream-index: "002" - name: - type: string - x-stream-index: "001" - roles: + channel_cids: + description: Channel CIDs to mute (if multiple channels) items: type: string + maximum: 25 + title: Channel CIDs type: array - x-stream-index: "004" + x-stream-index: "001.002" + expiration: + description: Duration of mute in milliseconds + title: Expiration + type: integer + x-stream-index: "001.003" required: - - name - - image - - custom - - roles + - channel_cids type: object - UserMute: + UnmuteResponse: nullable: true properties: - created_at: - description: Date/time of creation - format: date-time - title: Created at - type: string - x-stream-index: "009" - expires: - description: Date/time of mute expiration - format: date-time - title: Expires - type: string - x-stream-index: "008" - target: - $ref: '#/components/schemas/UserObject' - description: User who's muted - title: Target - x-stream-index: "007" - updated_at: - description: Date/time of the last update - format: date-time - title: Updated at + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "010" - user: - $ref: '#/components/schemas/UserObject' - description: Owner of channel mute - title: User - x-stream-index: "005" + x-stream-index: "002.001" + non_existing_users: + items: + type: string + type: array + x-stream-index: "001" required: - - created_at - - updated_at + - duration type: object - UserMutedEvent: + UnmuteUserRequest: + nullable: true properties: - created_at: - format: date-time - type: string - x-stream-index: "004.002" - target_user: - type: string - x-stream-index: "001" - target_users: + target_ids: + description: User IDs to mute (if multiple users) items: type: string + maximum: 1000 + title: Target IDs type: array - x-stream-index: "002" - type: - default: user.muted - type: string - x-stream-index: "004.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" + x-stream-index: "001.002" + timeout: + description: Duration of mute in minutes + minimum: 0 + title: Timeout + type: integer + x-stream-index: "001.003" required: - - type - - created_at - title: UserMutedEvent + - target_ids type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserObject: - description: Represents chat user + UnpinRequest: + nullable: true properties: - Custom: - type: object - writeOnly: true - x-stream-index: "005" - ban_expires: - description: Expiration date of the ban - format: date-time - title: Ban expires - type: string - x-stream-index: "015" - banned: - description: Whether a user is banned or not - title: Banned - type: boolean - x-stream-index: "014" - created_at: - description: Date/time of creation - format: date-time - readOnly: true - title: Created at - type: string - x-stream-index: "007" - deactivated_at: - description: Date of deactivation - format: date-time - readOnly: true - title: Deactivated at - type: string - x-stream-index: "012" - deleted_at: - description: Date/time of deletion - format: date-time - readOnly: true - title: Deleted at - type: string - x-stream-index: "011" - id: - description: Unique user identifier - title: ID + session_id: type: string x-stream-index: "003" - invisible: - type: boolean - x-stream-index: "021" - language: - description: Preferred language of a user - title: Language - type: string - x-stream-index: "031" - last_active: - description: Date of last activity - format: date-time - readOnly: true - title: Last active - type: string - x-stream-index: "010" - online: - description: Whether a user online or not - readOnly: true - title: Online - type: boolean - x-stream-index: "020" - push_notifications: - $ref: '#/components/schemas/PushNotificationSettings' - x-stream-index: "023" - revoke_tokens_issued_before: - description: Revocation date for tokens - format: date-time - title: Revoke tokens issued before - type: string - x-stream-index: "038" - role: - description: Determines the set of user permissions - title: Role - type: string - x-stream-index: "004" - teams: - description: List of teams user is a part of - items: - type: string - title: Teams - type: array - x-stream-index: "032" - updated_at: - description: Date/time of the last update - format: date-time - readOnly: true - title: Updated at + user_id: type: string - x-stream-index: "008" + x-stream-index: "002" required: - - id - title: User object + - user_id + - session_id type: object - UserObjectRequest: - description: Represents chat user + UnpinResponse: nullable: true properties: - Custom: - type: object - writeOnly: true - x-stream-index: "005" - id: - description: Unique user identifier - title: ID - type: string - x-stream-index: "003" - invisible: - type: boolean - x-stream-index: "016" - language: - description: Preferred language of a user - title: Language - type: string - x-stream-index: "021" - push_notifications: - $ref: '#/components/schemas/PushNotificationSettingsRequest' - x-stream-index: "022" - role: - description: Determines the set of user permissions - title: Role + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "004" - teams: - description: List of teams user is a part of - items: - type: string - title: Teams - type: array - x-stream-index: "019" + x-stream-index: "001.001" required: - - id - title: User object + - duration type: object - UserPresenceChangedEvent: + UnreadCountsChannel: properties: - created_at: - format: date-time + channel_id: type: string - x-stream-index: "002.002" - type: - default: user.presence.changed + x-stream-index: "001" + last_read: + format: date-time type: string - x-stream-index: "002.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001.001" + x-stream-index: "003" + unread_count: + format: int32 + type: integer + x-stream-index: "002" required: - - type - - created_at - title: UserPresenceChangedEvent + - channel_id + - unread_count + - last_read type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserReactivatedEvent: + UnreadCountsChannelType: properties: - created_at: - format: date-time - type: string - x-stream-index: "002.002" - type: - default: user.reactivated + channel_count: + format: int32 + type: integer + x-stream-index: "002" + channel_type: type: string - x-stream-index: "002.001" - user: - $ref: '#/components/schemas/UserObject' x-stream-index: "001" + unread_count: + format: int32 + type: integer + x-stream-index: "003" required: - - type - - created_at - title: UserReactivatedEvent + - channel_type + - channel_count + - unread_count type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserRequest: + UnreadCountsThread: properties: - custom: - title: Custom - type: object - x-stream-index: "004" - id: - description: User ID - title: ID + last_read: + format: date-time type: string - x-stream-index: "001" - image: - title: Image + x-stream-index: "002" + last_read_message_id: type: string x-stream-index: "003" - language: - type: string - x-stream-index: "005" - name: - description: Optional name of user - title: Name + parent_message_id: type: string - x-stream-index: "002" + x-stream-index: "004" + unread_count: + format: int32 + type: integer + x-stream-index: "001" required: - - id + - unread_count + - last_read + - last_read_message_id + - parent_message_id type: object - UserResponse: + UpdateCallMembersRequest: nullable: true properties: - Custom: - type: object - writeOnly: true - x-stream-index: "001.005" - ban_expires: - format: date-time - type: string - x-stream-index: "001.015" - banned: - type: boolean - x-stream-index: "001.014" - created_at: - format: date-time - readOnly: true - type: string - x-stream-index: "001.007" - deactivated_at: - format: date-time - readOnly: true - type: string - x-stream-index: "001.012" - deleted_at: - format: date-time - readOnly: true - type: string - x-stream-index: "001.011" - id: - type: string - x-stream-index: "001.003" - invisible: - type: boolean - x-stream-index: "001.021" - language: - type: string - x-stream-index: "001.031" - last_active: - format: date-time - readOnly: true - type: string - x-stream-index: "001.010" - online: - readOnly: true - type: boolean - x-stream-index: "001.020" - push_notifications: - $ref: '#/components/schemas/PushNotificationSettings' - x-stream-index: "001.023" - revoke_tokens_issued_before: - format: date-time - type: string - x-stream-index: "001.038" - role: - type: string - x-stream-index: "001.004" - shadow_banned: - description: Whether user is shadow banned or not - title: Shadow banned - type: boolean - x-stream-index: "002" - teams: + remove_members: + description: List of userID to remove items: type: string + maximum: 100 + title: Remove Members type: array - x-stream-index: "001.032" - updated_at: - format: date-time - readOnly: true - type: string - x-stream-index: "001.008" - required: - - id - - role - - Custom - - banned - - online - - shadow_banned + x-stream-index: "003" + update_members: + description: List of members to update or insert + items: + $ref: '#/components/schemas/MemberRequest' + maximum: 100 + title: Update Members + type: array + x-stream-index: "004" type: object - UserSessionStats: + UpdateCallMembersResponse: + nullable: true properties: - freeze_duration_seconds: - format: float - type: number - x-stream-index: "009" - jitter: - $ref: '#/components/schemas/Stats' - x-stream-index: "006" - latency: - $ref: '#/components/schemas/Stats' - x-stream-index: "007" - os: + duration: + description: Duration of the request in human-readable format + title: Duration type: string + x-stream-index: "001.001" + members: + items: + $ref: '#/components/schemas/MemberResponse' + type: array x-stream-index: "002" - packet_loss_fraction: - format: float - type: number - x-stream-index: "010" - quality_score: - format: float - type: number - x-stream-index: "008" - sdk: - type: string + required: + - duration + - members + type: object + UpdateCallRequest: + nullable: true + properties: + custom: + description: Custom data for this object + title: Custom data + type: object + x-stream-index: "003" + settings_override: + $ref: '#/components/schemas/CallSettingsRequest' + description: the settings to change for this call + title: Settings Override x-stream-index: "004" - sdk_version: + starts_at: + description: the time the call is scheduled to start + format: date-time + title: Starts At type: string x-stream-index: "005" - timeline: - $ref: '#/components/schemas/CallTimeline' - x-stream-index: "001" - webrtc_version: + type: object + UpdateCallResponse: + description: Represents a call + nullable: true + properties: + call: + $ref: '#/components/schemas/CallResponse' + x-stream-index: "001.001" + duration: type: string - x-stream-index: "003" + x-stream-index: "002.001" + members: + items: + $ref: '#/components/schemas/MemberResponse' + type: array + x-stream-index: "001.002" + membership: + $ref: '#/components/schemas/MemberResponse' + x-stream-index: "001.003" + own_capabilities: + items: + $ref: '#/components/schemas/OwnCapability' + type: array + x-stream-index: "001.004" required: - - os - - webrtc_version - - sdk - - sdk_version - - quality_score - - freeze_duration_seconds - - packet_loss_fraction + - call + - members + - own_capabilities + - duration + title: Call type: object - UserStats: + UpdateChannelPartialRequest: + nullable: true properties: - info: - $ref: '#/components/schemas/UserInfoResponse' - x-stream-index: "001" - session_stats: - additionalProperties: - $ref: '#/components/schemas/UserSessionStats' + set: type: object - x-stream-index: "002" + x-stream-index: "002.001" + unset: + items: + type: string + type: array + x-stream-index: "002.002" required: - - info - - session_stats + - set + - unset type: object - UserUnbannedEvent: + UpdateChannelPartialResponse: + nullable: true properties: - channel_id: - type: string - x-stream-index: "002.002" - channel_type: - type: string - x-stream-index: "002.003" - cid: - type: string - x-stream-index: "002.001" - created_at: - format: date-time - type: string - x-stream-index: "005.002" - shadow: - type: boolean + channel: + $ref: '#/components/schemas/ChannelResponse' x-stream-index: "001" - team: - type: string - x-stream-index: "004.001" - type: - default: user.unbanned + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "005.001" - user: - $ref: '#/components/schemas/UserObject' x-stream-index: "003.001" + members: + items: + $ref: '#/components/schemas/ChannelMember' + type: array + x-stream-index: "002" required: - - shadow - - cid - - channel_id - - channel_type - - type - - created_at - title: UserUnbannedEvent + - members + - duration type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserUpdatedEvent: + UpdateChannelRequest: + nullable: true properties: - created_at: - format: date-time - type: string - x-stream-index: "002.002" - type: - default: user.updated - type: string - x-stream-index: "002.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "001" + accept_invite: + description: Set to `true` to accept the invite + title: Accept invite + type: boolean + x-stream-index: "008" + add_members: + description: List of user IDs to add to the channel + items: + $ref: '#/components/schemas/ChannelMemberRequest' + maximum: 100 + title: Add members + type: array + x-stream-index: "001" + add_moderators: + description: List of user IDs to make channel moderators + items: + type: string + maximum: 100 + title: Add moderators + type: array + x-stream-index: "003" + assign_roles: + description: List of channel member role assignments. If any specified user + is not part of the channel, the request will fail + items: + $ref: '#/components/schemas/ChannelMemberRequest' + maximum: 100 + title: Assign roles + type: array + x-stream-index: "006" + cooldown: + description: Sets cool down period for the channel in seconds + format: int32 + maximum: 120 + minimum: 0 + title: Cool down + type: integer + x-stream-index: "007" + data: + $ref: '#/components/schemas/ChannelRequest' + x-stream-index: "013.001" + demote_moderators: + description: List of user IDs to take away moderators status from + items: + type: string + maximum: 100 + title: Demote moderators + type: array + x-stream-index: "004" + hide_history: + description: Set to `true` to hide channel's history when adding new members + title: Hide history + type: boolean + x-stream-index: "012" + invites: + description: List of user IDs to invite to the channel + items: + $ref: '#/components/schemas/ChannelMemberRequest' + maximum: 100 + title: Invites + type: array + x-stream-index: "005" + message: + $ref: '#/components/schemas/MessageRequest' + description: Message to send to the chat when channel is successfully updated + title: Message + x-stream-index: "010" + reject_invite: + description: Set to `true` to reject the invite + title: Reject invite + type: boolean + x-stream-index: "009" + remove_members: + description: List of user IDs to remove from the channel + items: + type: string + maximum: 100 + title: Remove members + type: array + x-stream-index: "002" + skip_push: + description: When `message` is set disables all push notifications for it + title: Skip push + type: boolean + x-stream-index: "011" required: - - type - - created_at - title: UserUpdatedEvent + - remove_members + - add_moderators + - demote_moderators + title: Channel update request type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserWatchingStartEvent: + x-stream-docs-page-id: channel_update + UpdateChannelResponse: + nullable: true properties: - channel_id: - type: string - x-stream-index: "004.002" - channel_type: - type: string - x-stream-index: "004.003" - cid: + channel: + $ref: '#/components/schemas/ChannelResponse' + x-stream-index: "001" + duration: + description: Duration of the request in human-readable format + title: Duration type: string x-stream-index: "004.001" - created_at: - format: date-time - type: string - x-stream-index: "003.002" - team: - type: string - x-stream-index: "002.001" - type: - default: user.watching.start - type: string - x-stream-index: "003.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "005.001" - watcher_count: - format: int32 - type: integer - x-stream-index: "001.001" + members: + items: + $ref: '#/components/schemas/ChannelMember' + type: array + x-stream-index: "003" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "002" required: - - watcher_count - - type - - created_at - - cid - - channel_id - - channel_type - title: UserWatchingStartEvent + - members + - duration type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UserWatchingStopEvent: + UpdateMessagePartialRequest: + nullable: true properties: - channel_id: - type: string - x-stream-index: "004.002" - channel_type: - type: string - x-stream-index: "004.003" - cid: - type: string - x-stream-index: "004.001" - created_at: - format: date-time - type: string - x-stream-index: "002.002" - type: - default: user.watching.stop - type: string + set: + description: Sets new field values + title: Set + type: object x-stream-index: "002.001" - user: - $ref: '#/components/schemas/UserObject' - x-stream-index: "003.001" - watcher_count: - format: int32 - type: integer - x-stream-index: "001.001" + x-stream-map: + description: New value to set + key: field + title: Value + skip_enrich_url: + type: boolean + x-stream-index: "001" + unset: + description: Array of field names to unset + items: + type: string + title: Unset + type: array + x-stream-index: "002.002" required: - - watcher_count - - type - - created_at - - cid - - channel_id - - channel_type - title: UserWatchingStopEvent + - set + - unset type: object - x-stream-event-client-type: true - x-stream-is-event: true - x-stream-ws-base-event-name: VideoEvent - UsersResponse: + UpdateMessagePartialResponse: nullable: true properties: duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "002.001" - users: - description: List of found users - items: - $ref: '#/components/schemas/UserResponse' - title: Users - type: array + x-stream-index: "003.001" + message: + $ref: '#/components/schemas/Message' x-stream-index: "001" + pending_message_metadata: + additionalProperties: + type: string + type: object + x-stream-index: "002" required: - - users + - message - duration type: object - VideoSettings: + UpdateMessageRequest: + nullable: true properties: - access_request_enabled: + message: + $ref: '#/components/schemas/MessageRequest' + x-stream-index: "001" + skip_enrich_url: type: boolean x-stream-index: "002" - camera_default_on: - type: boolean - x-stream-index: "004" - camera_facing: - enum: - - front - - back - - external - type: string - x-stream-index: "005" - enabled: - type: boolean - x-stream-index: "001" - target_resolution: - $ref: '#/components/schemas/TargetResolution' - x-stream-index: "003" required: - - enabled - - access_request_enabled - - target_resolution - - camera_default_on - - camera_facing + - message type: object - VideoSettingsRequest: + UpdateMessageResponse: + nullable: true properties: - access_request_enabled: - type: boolean + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "003.001" + message: + $ref: '#/components/schemas/Message' + x-stream-index: "001" + pending_message_metadata: + additionalProperties: + type: string + type: object x-stream-index: "002" - camera_default_on: - type: boolean + required: + - message + - duration + type: object + UpdatePollOptionRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true x-stream-index: "004" - camera_facing: - enum: - - front - - back - - external + id: + maxLength: 255 + type: string + x-stream-index: "002" + poll_id: + maxLength: 255 type: string - x-stream-index: "005" - enabled: - type: boolean x-stream-index: "001" - target_resolution: - $ref: '#/components/schemas/TargetResolutionRequest' + text: + type: string x-stream-index: "003" + required: + - poll_id + - id + - text type: object - WSEvent: - description: The discriminator object for all websocket events, it maps events' - payload to the final type - discriminator: - mapping: - call.accepted: '#/components/schemas/CallAcceptedEvent' - call.blocked_user: '#/components/schemas/BlockedUserEvent' - call.closed_caption: '#/components/schemas/ClosedCaptionEvent' - call.created: '#/components/schemas/CallCreatedEvent' - call.deleted: '#/components/schemas/CallDeletedEvent' - call.ended: '#/components/schemas/CallEndedEvent' - call.hls_broadcasting_failed: '#/components/schemas/CallHLSBroadcastingFailedEvent' - call.hls_broadcasting_started: '#/components/schemas/CallHLSBroadcastingStartedEvent' - call.hls_broadcasting_stopped: '#/components/schemas/CallHLSBroadcastingStoppedEvent' - call.live_started: '#/components/schemas/CallLiveStartedEvent' - call.member_added: '#/components/schemas/CallMemberAddedEvent' - call.member_removed: '#/components/schemas/CallMemberRemovedEvent' - call.member_updated: '#/components/schemas/CallMemberUpdatedEvent' - call.member_updated_permission: '#/components/schemas/CallMemberUpdatedPermissionEvent' - call.notification: '#/components/schemas/CallNotificationEvent' - call.permission_request: '#/components/schemas/PermissionRequestEvent' - call.permissions_updated: '#/components/schemas/UpdatedCallPermissionsEvent' - call.reaction_new: '#/components/schemas/CallReactionEvent' - call.recording_failed: '#/components/schemas/CallRecordingFailedEvent' - call.recording_ready: '#/components/schemas/CallRecordingReadyEvent' - call.recording_started: '#/components/schemas/CallRecordingStartedEvent' - call.recording_stopped: '#/components/schemas/CallRecordingStoppedEvent' - call.rejected: '#/components/schemas/CallRejectedEvent' - call.ring: '#/components/schemas/CallRingEvent' - call.session_ended: '#/components/schemas/CallSessionEndedEvent' - call.session_participant_joined: '#/components/schemas/CallSessionParticipantJoinedEvent' - call.session_participant_left: '#/components/schemas/CallSessionParticipantLeftEvent' - call.session_started: '#/components/schemas/CallSessionStartedEvent' - call.transcription_failed: '#/components/schemas/CallTranscriptionFailedEvent' - call.transcription_ready: '#/components/schemas/CallTranscriptionReadyEvent' - call.transcription_started: '#/components/schemas/CallTranscriptionStartedEvent' - call.transcription_stopped: '#/components/schemas/CallTranscriptionStoppedEvent' - call.unblocked_user: '#/components/schemas/UnblockedUserEvent' - call.updated: '#/components/schemas/CallUpdatedEvent' - call.user_muted: '#/components/schemas/CallUserMuted' - channel.created: '#/components/schemas/ChannelCreatedEvent' - channel.deleted: '#/components/schemas/ChannelDeletedEvent' - channel.frozen: '#/components/schemas/ChannelFrozenEvent' - channel.hidden: '#/components/schemas/ChannelHiddenEvent' - channel.kicked: '#/components/schemas/ChannelKickedEvent' - channel.truncated: '#/components/schemas/ChannelTruncatedEvent' - channel.unfrozen: '#/components/schemas/ChannelUnFrozenEvent' - channel.updated: '#/components/schemas/ChannelUpdatedEvent' - channel.visible: '#/components/schemas/ChannelVisibleEvent' - connection.error: '#/components/schemas/ConnectionErrorEvent' - connection.ok: '#/components/schemas/ConnectedEvent' - custom: '#/components/schemas/AnyEvent' - health.check: '#/components/schemas/HealthCheckEvent' - member.added: '#/components/schemas/MemberAddedEvent' - member.removed: '#/components/schemas/MemberRemovedEvent' - member.updated: '#/components/schemas/MemberUpdatedEvent' - message.deleted: '#/components/schemas/MessageDeletedEvent' - message.new: '#/components/schemas/MessageNewEvent' - message.read: '#/components/schemas/MessageReadEvent' - message.undeleted: '#/components/schemas/MessageUndeletedEvent' - message.updated: '#/components/schemas/MessageUpdatedEvent' - notification.added_to_channel: '#/components/schemas/NotificationAddedToChannelEvent' - notification.channel_deleted: '#/components/schemas/NotificationChannelDeletedEvent' - notification.channel_mutes_updated: '#/components/schemas/NotificationChannelMutesUpdatedEvent' - notification.channel_truncated: '#/components/schemas/NotificationChannelTruncatedEvent' - notification.invite_accepted: '#/components/schemas/NotificationInviteAcceptedEvent' - notification.invite_rejected: '#/components/schemas/NotificationInviteRejectedEvent' - notification.invited: '#/components/schemas/NotificationInvitedEvent' - notification.mark_read: '#/components/schemas/NotificationMarkReadEvent' - notification.mark_unread: '#/components/schemas/NotificationMarkUnreadEvent' - notification.message_new: '#/components/schemas/NotificationNewMessageEvent' - notification.mutes_updated: '#/components/schemas/NotificationMutesUpdatedEvent' - notification.removed_from_channel: '#/components/schemas/NotificationRemovedFromChannelEvent' - notification.thread_message_new: '#/components/schemas/MessageNewEvent' - reaction.deleted: '#/components/schemas/ReactionDeletedEvent' - reaction.new: '#/components/schemas/ReactionNewEvent' - reaction.updated: '#/components/schemas/ReactionUpdatedEvent' - thread.updated: '#/components/schemas/ThreadUpdatedEvent' - typing.start: '#/components/schemas/TypingStartEvent' - typing.stop: '#/components/schemas/TypingStopEvent' - user.banned: '#/components/schemas/UserBannedEvent' - user.deactivated: '#/components/schemas/UserDeactivatedEvent' - user.deleted: '#/components/schemas/UserDeletedEvent' - user.muted: '#/components/schemas/UserMutedEvent' - user.presence.changed: '#/components/schemas/UserPresenceChangedEvent' - user.reactivated: '#/components/schemas/UserReactivatedEvent' - user.unbanned: '#/components/schemas/UserUnbannedEvent' - user.updated: '#/components/schemas/UserUpdatedEvent' - user.watching.start: '#/components/schemas/UserWatchingStartEvent' - user.watching.stop: '#/components/schemas/UserWatchingStopEvent' - propertyName: type - oneOf: - - $ref: '#/components/schemas/AnyEvent' - - $ref: '#/components/schemas/BlockedUserEvent' - - $ref: '#/components/schemas/CallAcceptedEvent' - - $ref: '#/components/schemas/CallCreatedEvent' - - $ref: '#/components/schemas/CallDeletedEvent' - - $ref: '#/components/schemas/CallEndedEvent' - - $ref: '#/components/schemas/CallHLSBroadcastingFailedEvent' - - $ref: '#/components/schemas/CallHLSBroadcastingStartedEvent' - - $ref: '#/components/schemas/CallHLSBroadcastingStoppedEvent' - - $ref: '#/components/schemas/CallLiveStartedEvent' - - $ref: '#/components/schemas/CallMemberAddedEvent' - - $ref: '#/components/schemas/CallMemberRemovedEvent' - - $ref: '#/components/schemas/CallMemberUpdatedEvent' - - $ref: '#/components/schemas/CallMemberUpdatedPermissionEvent' - - $ref: '#/components/schemas/CallNotificationEvent' - - $ref: '#/components/schemas/CallReactionEvent' - - $ref: '#/components/schemas/CallRecordingFailedEvent' - - $ref: '#/components/schemas/CallRecordingReadyEvent' - - $ref: '#/components/schemas/CallRecordingStartedEvent' - - $ref: '#/components/schemas/CallRecordingStoppedEvent' - - $ref: '#/components/schemas/CallRejectedEvent' - - $ref: '#/components/schemas/CallRingEvent' - - $ref: '#/components/schemas/CallSessionEndedEvent' - - $ref: '#/components/schemas/CallSessionParticipantJoinedEvent' - - $ref: '#/components/schemas/CallSessionParticipantLeftEvent' - - $ref: '#/components/schemas/CallSessionStartedEvent' - - $ref: '#/components/schemas/CallTranscriptionFailedEvent' - - $ref: '#/components/schemas/CallTranscriptionReadyEvent' - - $ref: '#/components/schemas/CallTranscriptionStartedEvent' - - $ref: '#/components/schemas/CallTranscriptionStoppedEvent' - - $ref: '#/components/schemas/CallUpdatedEvent' - - $ref: '#/components/schemas/CallUserMuted' - - $ref: '#/components/schemas/ChannelCreatedEvent' - - $ref: '#/components/schemas/ChannelDeletedEvent' - - $ref: '#/components/schemas/ChannelFrozenEvent' - - $ref: '#/components/schemas/ChannelHiddenEvent' - - $ref: '#/components/schemas/ChannelKickedEvent' - - $ref: '#/components/schemas/ChannelTruncatedEvent' - - $ref: '#/components/schemas/ChannelUnFrozenEvent' - - $ref: '#/components/schemas/ChannelUpdatedEvent' - - $ref: '#/components/schemas/ChannelVisibleEvent' - - $ref: '#/components/schemas/ClosedCaptionEvent' - - $ref: '#/components/schemas/ConnectedEvent' - - $ref: '#/components/schemas/ConnectionErrorEvent' - - $ref: '#/components/schemas/HealthCheckEvent' - - $ref: '#/components/schemas/MemberAddedEvent' - - $ref: '#/components/schemas/MemberRemovedEvent' - - $ref: '#/components/schemas/MemberUpdatedEvent' - - $ref: '#/components/schemas/MessageDeletedEvent' - - $ref: '#/components/schemas/MessageNewEvent' - - $ref: '#/components/schemas/MessageNewEvent' - - $ref: '#/components/schemas/MessageReadEvent' - - $ref: '#/components/schemas/MessageUndeletedEvent' - - $ref: '#/components/schemas/MessageUpdatedEvent' - - $ref: '#/components/schemas/NotificationAddedToChannelEvent' - - $ref: '#/components/schemas/NotificationChannelDeletedEvent' - - $ref: '#/components/schemas/NotificationChannelMutesUpdatedEvent' - - $ref: '#/components/schemas/NotificationChannelTruncatedEvent' - - $ref: '#/components/schemas/NotificationInviteAcceptedEvent' - - $ref: '#/components/schemas/NotificationInviteRejectedEvent' - - $ref: '#/components/schemas/NotificationInvitedEvent' - - $ref: '#/components/schemas/NotificationMarkReadEvent' - - $ref: '#/components/schemas/NotificationMarkUnreadEvent' - - $ref: '#/components/schemas/NotificationMutesUpdatedEvent' - - $ref: '#/components/schemas/NotificationNewMessageEvent' - - $ref: '#/components/schemas/NotificationRemovedFromChannelEvent' - - $ref: '#/components/schemas/PermissionRequestEvent' - - $ref: '#/components/schemas/ReactionDeletedEvent' - - $ref: '#/components/schemas/ReactionNewEvent' - - $ref: '#/components/schemas/ReactionUpdatedEvent' - - $ref: '#/components/schemas/ThreadUpdatedEvent' - - $ref: '#/components/schemas/TypingStartEvent' - - $ref: '#/components/schemas/TypingStopEvent' - - $ref: '#/components/schemas/UnblockedUserEvent' - - $ref: '#/components/schemas/UpdatedCallPermissionsEvent' - - $ref: '#/components/schemas/UserBannedEvent' - - $ref: '#/components/schemas/UserDeactivatedEvent' - - $ref: '#/components/schemas/UserDeletedEvent' - - $ref: '#/components/schemas/UserMutedEvent' - - $ref: '#/components/schemas/UserPresenceChangedEvent' - - $ref: '#/components/schemas/UserReactivatedEvent' - - $ref: '#/components/schemas/UserUnbannedEvent' - - $ref: '#/components/schemas/UserUpdatedEvent' - - $ref: '#/components/schemas/UserWatchingStartEvent' - - $ref: '#/components/schemas/UserWatchingStopEvent' - WrappedUnreadCountsResponse: + UpdatePollPartialRequest: nullable: true properties: - channel_type: - items: - $ref: '#/components/schemas/UnreadCountsChannelType' - type: array - x-stream-index: "001.004" - channels: - items: - $ref: '#/components/schemas/UnreadCountsChannel' - type: array - x-stream-index: "001.003" - duration: - description: Duration of the request in human-readable format - title: Duration + poll_id: + maxLength: 255 type: string + x-stream-index: "001" + set: + description: Sets new field values + title: Set + type: object x-stream-index: "002.001" - threads: + x-stream-map: + description: New value to set + key: field + title: Value + unset: + description: Array of field names to unset items: - $ref: '#/components/schemas/UnreadCountsThread' + type: string + title: Unset type: array - x-stream-index: "001.005" - total_unread_count: + x-stream-index: "002.002" + required: + - poll_id + - set + - unset + type: object + UpdatePollRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "011" + allow_answers: + type: boolean + x-stream-index: "009" + allow_user_suggested_options: + type: boolean + x-stream-index: "008" + description: + type: string + x-stream-index: "003" + enforce_unique_vote: + type: boolean + x-stream-index: "005" + id: + maxLength: 255 + type: string + x-stream-index: "001" + is_closed: + type: boolean + x-stream-index: "010" + max_votes_allowed: format: int32 + maximum: 10 type: integer + x-stream-index: "007" + name: + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionRequest' + maximum: 100 + type: array + x-stream-index: "004" + voting_visibility: + enum: + - anonymous + - public + type: string + x-stream-index: "006" + required: + - id + - name + type: object + UpdateThreadPartialRequest: + nullable: true + properties: + ID: + type: string + writeOnly: true + x-stream-index: "001" + set: + type: object + x-stream-index: "004.001" + unset: + items: + type: string + type: array + x-stream-index: "004.002" + required: + - set + - unset + type: object + UpdateThreadPartialResponse: + nullable: true + properties: + duration: + type: string + x-stream-index: "002.001" + thread: + $ref: '#/components/schemas/ThreadResponse' + description: Updated thread (not enriched) + title: Thread + x-stream-index: "001" + required: + - thread + - duration + type: object + UpdateUserPartialRequest: + nullable: true + properties: + id: + description: User ID to update + title: ID + type: string + x-stream-index: "001" + set: + type: object + x-stream-index: "002.001" + unset: + items: + type: string + type: array + x-stream-index: "002.002" + required: + - id + - set + - unset + type: object + UpdateUserPermissionsRequest: + nullable: true + properties: + grant_permissions: + items: + type: string + type: array + x-stream-index: "002" + revoke_permissions: + items: + type: string + type: array + x-stream-index: "003" + user_id: + type: string + x-stream-index: "001" + required: + - user_id + type: object + UpdateUserPermissionsResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration + type: string x-stream-index: "001.001" - total_unread_threads_count: - format: int32 - type: integer - x-stream-index: "001.002" required: - - total_unread_count - - total_unread_threads_count - - channels - - channel_type - - threads - duration type: object - XiaomiConfigFields: + UpdateUsersRequest: + nullable: true properties: - enabled: - type: boolean + users: + additionalProperties: + $ref: '#/components/schemas/UserObjectRequest' + description: Object containing users + title: Users + type: object x-stream-index: "001" - package_name: + x-stream-map: + key: user_id + required: + - users + type: object + UpdateUsersResponse: + nullable: true + properties: + duration: + type: string + x-stream-index: "003.001" + membership_deletion_task_id: + type: string + x-stream-index: "002" + users: + additionalProperties: + $ref: '#/components/schemas/UserObject' + description: Object containing users + title: Users + type: object + x-stream-index: "001" + x-stream-map: + key: user_id + required: + - users + - membership_deletion_task_id + - duration + type: object + UpdatedCallPermissionsEvent: + description: This event is sent to notify about permission changes for a user, + clients receiving this event should update their UI accordingly + properties: + call_cid: + type: string + x-stream-index: "002.001" + created_at: + format: date-time + type: string + x-stream-index: "001.002" + own_capabilities: + description: The capabilities of the current user + items: + $ref: '#/components/schemas/OwnCapability' + title: Own capabilities + type: array + x-stream-index: "004" + type: + default: call.permissions_updated + description: 'The type of event: "call.permissions_updated" in this case' + title: Event Type + type: string + x-stream-index: "001.001" + user: + $ref: '#/components/schemas/UserResponse' + description: The user who received the new permissions + title: User + x-stream-index: "003" + required: + - type + - created_at + - call_cid + - user + - own_capabilities + title: UpdatedCallPermissionsEvent + type: object + x-stream-event-call-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserBannedEvent: + properties: + channel_id: + type: string + x-stream-index: "006.002" + channel_type: + type: string + x-stream-index: "006.003" + cid: + type: string + x-stream-index: "006.001" + created_at: + format: date-time + type: string + x-stream-index: "008.002" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001" + expiration: + format: date-time + type: string + x-stream-index: "003" + reason: + type: string + x-stream-index: "004" + shadow: + type: boolean + x-stream-index: "002" + team: + type: string + x-stream-index: "005.001" + type: + default: user.banned + type: string + x-stream-index: "008.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "007.001" + required: + - created_by + - shadow + - cid + - channel_id + - channel_type + - type + - created_at + title: UserBannedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserDeactivatedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "003.002" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001" + type: + default: user.deactivated + type: string + x-stream-index: "003.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "002.001" + required: + - created_by + - type + - created_at + title: UserDeactivatedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserDeletedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "002.002" + delete_conversation_channels: + type: boolean + x-stream-index: "005" + hard_delete: + type: boolean + x-stream-index: "003.001" + mark_messages_deleted: + type: boolean + x-stream-index: "004" + type: + default: user.deleted + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001.001" + required: + - type + - created_at + - hard_delete + - mark_messages_deleted + - delete_conversation_channels + title: UserDeletedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserInfoResponse: + properties: + custom: + type: object + x-stream-index: "003" + image: + type: string + x-stream-index: "002" + name: + type: string + x-stream-index: "001" + roles: + items: + type: string + type: array + x-stream-index: "004" + required: + - name + - image + - custom + - roles + type: object + UserMute: + nullable: true + properties: + created_at: + description: Date/time of creation + format: date-time + title: Created at + type: string + x-stream-index: "009" + expires: + description: Date/time of mute expiration + format: date-time + title: Expires + type: string + x-stream-index: "008" + target: + $ref: '#/components/schemas/UserObject' + description: User who's muted + title: Target + x-stream-index: "007" + updated_at: + description: Date/time of the last update + format: date-time + title: Updated at + type: string + x-stream-index: "010" + user: + $ref: '#/components/schemas/UserObject' + description: Owner of channel mute + title: User + x-stream-index: "005" + required: + - created_at + - updated_at + type: object + UserMutedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "004.002" + target_user: + type: string + x-stream-index: "001" + target_users: + items: + type: string + type: array + x-stream-index: "002" + type: + default: user.muted + type: string + x-stream-index: "004.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "003.001" + required: + - type + - created_at + title: UserMutedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserObject: + description: Represents chat user + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "005" + ban_expires: + description: Expiration date of the ban + format: date-time + title: Ban expires + type: string + x-stream-index: "015" + banned: + description: Whether a user is banned or not + title: Banned + type: boolean + x-stream-index: "014" + created_at: + description: Date/time of creation + format: date-time + readOnly: true + title: Created at + type: string + x-stream-index: "007" + deactivated_at: + description: Date of deactivation + format: date-time + readOnly: true + title: Deactivated at + type: string + x-stream-index: "012" + deleted_at: + description: Date/time of deletion + format: date-time + readOnly: true + title: Deleted at + type: string + x-stream-index: "011" + id: + description: Unique user identifier + title: ID + type: string + x-stream-index: "003" + invisible: + type: boolean + x-stream-index: "021" + language: + description: Preferred language of a user + title: Language + type: string + x-stream-index: "031" + last_active: + description: Date of last activity + format: date-time + readOnly: true + title: Last active + type: string + x-stream-index: "010" + online: + description: Whether a user online or not + readOnly: true + title: Online + type: boolean + x-stream-index: "020" + push_notifications: + $ref: '#/components/schemas/PushNotificationSettings' + x-stream-index: "023" + revoke_tokens_issued_before: + description: Revocation date for tokens + format: date-time + title: Revoke tokens issued before + type: string + x-stream-index: "038" + role: + description: Determines the set of user permissions + title: Role + type: string + x-stream-index: "004" + teams: + description: List of teams user is a part of + items: + type: string + title: Teams + type: array + x-stream-index: "032" + updated_at: + description: Date/time of the last update + format: date-time + readOnly: true + title: Updated at + type: string + x-stream-index: "008" + required: + - id + title: User object + type: object + UserObjectRequest: + description: Represents chat user + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "005" + id: + description: Unique user identifier + title: ID + type: string + x-stream-index: "003" + invisible: + type: boolean + x-stream-index: "016" + language: + description: Preferred language of a user + title: Language + type: string + x-stream-index: "021" + push_notifications: + $ref: '#/components/schemas/PushNotificationSettingsRequest' + x-stream-index: "022" + role: + description: Determines the set of user permissions + title: Role + type: string + x-stream-index: "004" + teams: + description: List of teams user is a part of + items: + type: string + title: Teams + type: array + x-stream-index: "019" + required: + - id + title: User object + type: object + UserPresenceChangedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "002.002" + type: + default: user.presence.changed + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001.001" + required: + - type + - created_at + title: UserPresenceChangedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserReactivatedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "002.002" + type: + default: user.reactivated + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001" + required: + - type + - created_at + title: UserReactivatedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserRequest: + properties: + custom: + title: Custom + type: object + x-stream-index: "004" + id: + description: User ID + title: ID + type: string + x-stream-index: "001" + image: + title: Image + type: string + x-stream-index: "003" + language: + type: string + x-stream-index: "005" + name: + description: Optional name of user + title: Name + type: string + x-stream-index: "002" + required: + - id + type: object + UserResponse: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "001.005" + ban_expires: + format: date-time + type: string + x-stream-index: "001.015" + banned: + type: boolean + x-stream-index: "001.014" + created_at: + format: date-time + readOnly: true + type: string + x-stream-index: "001.007" + deactivated_at: + format: date-time + readOnly: true + type: string + x-stream-index: "001.012" + deleted_at: + format: date-time + readOnly: true + type: string + x-stream-index: "001.011" + id: + type: string + x-stream-index: "001.003" + invisible: + type: boolean + x-stream-index: "001.021" + language: + type: string + x-stream-index: "001.031" + last_active: + format: date-time + readOnly: true + type: string + x-stream-index: "001.010" + online: + readOnly: true + type: boolean + x-stream-index: "001.020" + push_notifications: + $ref: '#/components/schemas/PushNotificationSettings' + x-stream-index: "001.023" + revoke_tokens_issued_before: + format: date-time + type: string + x-stream-index: "001.038" + role: + type: string + x-stream-index: "001.004" + shadow_banned: + description: Whether user is shadow banned or not + title: Shadow banned + type: boolean + x-stream-index: "002" + teams: + items: + type: string + type: array + x-stream-index: "001.032" + updated_at: + format: date-time + readOnly: true + type: string + x-stream-index: "001.008" + required: + - id + - role + - Custom + - banned + - online + - shadow_banned + type: object + UserSessionStats: + properties: + browser: + type: string + x-stream-index: "009" + browser_version: + type: string + x-stream-index: "010" + current_ip: + type: string + x-stream-index: "028" + current_sfu: + type: string + x-stream-index: "029" + device_model: + type: string + x-stream-index: "007" + device_version: + type: string + x-stream-index: "008" + freeze_duration_seconds: + format: float + type: number + x-stream-index: "023" + geolocation: + $ref: '#/components/schemas/GeolocationResult' + x-stream-index: "030" + jitter: + $ref: '#/components/schemas/Stats' + x-stream-index: "011" + latency: + $ref: '#/components/schemas/Stats' + x-stream-index: "012" + max_fir_per_minute: + format: float + type: number + x-stream-index: "019" + max_freezes_per_minute: + format: float + type: number + x-stream-index: "020" + max_nack_per_minute: + format: float + type: number + x-stream-index: "018" + max_pli_per_minute: + format: float + type: number + x-stream-index: "017" + max_publishing_video_quality: + $ref: '#/components/schemas/VideoQuality' + x-stream-index: "016" + max_receiving_video_quality: + $ref: '#/components/schemas/VideoQuality' + x-stream-index: "025" + os: + type: string + x-stream-index: "002" + os_version: + type: string + x-stream-index: "003" + packet_loss_fraction: + format: float + type: number + x-stream-index: "021" + publishing_audio_codec: + type: string + x-stream-index: "015" + publishing_duration_seconds: + format: int32 + type: integer + x-stream-index: "014" + quality_score: + format: float + type: number + x-stream-index: "013" + receiving_audio_codec: + type: string + x-stream-index: "024" + receiving_duration_seconds: + format: int32 + type: integer + x-stream-index: "022" + sdk: + type: string + x-stream-index: "005" + sdk_version: + type: string + x-stream-index: "006" + subsessions: + items: + $ref: '#/components/schemas/Subsession' + type: array + x-stream-index: "031" + timeline: + $ref: '#/components/schemas/CallTimeline' + x-stream-index: "001" + total_pixels_in: + type: integer + x-stream-index: "026" + total_pixels_out: + type: integer + x-stream-index: "027" + webrtc_version: + type: string + x-stream-index: "004" + required: + - quality_score + - publishing_duration_seconds + - packet_loss_fraction + - receiving_duration_seconds + - freeze_duration_seconds + - total_pixels_in + - total_pixels_out + type: object + UserStats: + properties: + info: + $ref: '#/components/schemas/UserInfoResponse' + x-stream-index: "001" + session_stats: + additionalProperties: + $ref: '#/components/schemas/UserSessionStats' + type: object + x-stream-index: "002" + required: + - info + - session_stats + type: object + UserUnbannedEvent: + properties: + channel_id: + type: string + x-stream-index: "002.002" + channel_type: + type: string + x-stream-index: "002.003" + cid: + type: string + x-stream-index: "002.001" + created_at: + format: date-time + type: string + x-stream-index: "005.002" + shadow: + type: boolean + x-stream-index: "001" + team: + type: string + x-stream-index: "004.001" + type: + default: user.unbanned + type: string + x-stream-index: "005.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "003.001" + required: + - shadow + - cid + - channel_id + - channel_type + - type + - created_at + title: UserUnbannedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserUpdatedEvent: + properties: + created_at: + format: date-time + type: string + x-stream-index: "002.002" + type: + default: user.updated + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "001" + required: + - type + - created_at + title: UserUpdatedEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserWatchingStartEvent: + properties: + channel_id: + type: string + x-stream-index: "004.002" + channel_type: + type: string + x-stream-index: "004.003" + cid: + type: string + x-stream-index: "004.001" + created_at: + format: date-time + type: string + x-stream-index: "003.002" + team: + type: string + x-stream-index: "002.001" + type: + default: user.watching.start + type: string + x-stream-index: "003.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "005.001" + watcher_count: + format: int32 + type: integer + x-stream-index: "001.001" + required: + - watcher_count + - type + - created_at + - cid + - channel_id + - channel_type + title: UserWatchingStartEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UserWatchingStopEvent: + properties: + channel_id: + type: string + x-stream-index: "004.002" + channel_type: + type: string + x-stream-index: "004.003" + cid: + type: string + x-stream-index: "004.001" + created_at: + format: date-time + type: string + x-stream-index: "002.002" + type: + default: user.watching.stop + type: string + x-stream-index: "002.001" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "003.001" + watcher_count: + format: int32 + type: integer + x-stream-index: "001.001" + required: + - watcher_count + - type + - created_at + - cid + - channel_id + - channel_type + title: UserWatchingStopEvent + type: object + x-stream-event-client-type: true + x-stream-is-event: true + x-stream-ws-base-event-name: VideoEvent + UsersResponse: + nullable: true + properties: + duration: + type: string + x-stream-index: "002.001" + users: + description: List of found users + items: + $ref: '#/components/schemas/UserResponse' + title: Users + type: array + x-stream-index: "001" + required: + - users + - duration + type: object + VideoQuality: + properties: + resolution: + $ref: '#/components/schemas/VideoResolution' + x-stream-index: "001" + required: + - resolution + type: object + VideoResolution: + properties: + height: + format: int32 + type: integer + x-stream-index: "002" + width: + format: int32 + type: integer + x-stream-index: "001" + required: + - width + - height + type: object + VideoSettings: + properties: + access_request_enabled: + type: boolean + x-stream-index: "002" + camera_default_on: + type: boolean + x-stream-index: "004" + camera_facing: + enum: + - front + - back + - external + type: string + x-stream-index: "005" + enabled: + type: boolean + x-stream-index: "001" + target_resolution: + $ref: '#/components/schemas/TargetResolution' + x-stream-index: "003" + required: + - enabled + - access_request_enabled + - target_resolution + - camera_default_on + - camera_facing + type: object + VideoSettingsRequest: + properties: + access_request_enabled: + type: boolean + x-stream-index: "002" + camera_default_on: + type: boolean + x-stream-index: "004" + camera_facing: + enum: + - front + - back + - external + type: string + x-stream-index: "005" + enabled: + type: boolean + x-stream-index: "001" + target_resolution: + $ref: '#/components/schemas/TargetResolutionRequest' + x-stream-index: "003" + type: object + VoteDataRequest: + properties: + Option: + $ref: '#/components/schemas/PollOptionRequest' + x-stream-index: "003" + answer_text: + type: string + x-stream-index: "002" + option_id: + maxLength: 255 + type: string + x-stream-index: "001" + type: object + WSEvent: + description: The discriminator object for all websocket events, it maps events' + payload to the final type + discriminator: + mapping: + call.accepted: '#/components/schemas/CallAcceptedEvent' + call.blocked_user: '#/components/schemas/BlockedUserEvent' + call.closed_caption: '#/components/schemas/ClosedCaptionEvent' + call.created: '#/components/schemas/CallCreatedEvent' + call.deleted: '#/components/schemas/CallDeletedEvent' + call.ended: '#/components/schemas/CallEndedEvent' + call.hls_broadcasting_failed: '#/components/schemas/CallHLSBroadcastingFailedEvent' + call.hls_broadcasting_started: '#/components/schemas/CallHLSBroadcastingStartedEvent' + call.hls_broadcasting_stopped: '#/components/schemas/CallHLSBroadcastingStoppedEvent' + call.live_started: '#/components/schemas/CallLiveStartedEvent' + call.member_added: '#/components/schemas/CallMemberAddedEvent' + call.member_removed: '#/components/schemas/CallMemberRemovedEvent' + call.member_updated: '#/components/schemas/CallMemberUpdatedEvent' + call.member_updated_permission: '#/components/schemas/CallMemberUpdatedPermissionEvent' + call.notification: '#/components/schemas/CallNotificationEvent' + call.permission_request: '#/components/schemas/PermissionRequestEvent' + call.permissions_updated: '#/components/schemas/UpdatedCallPermissionsEvent' + call.reaction_new: '#/components/schemas/CallReactionEvent' + call.recording_failed: '#/components/schemas/CallRecordingFailedEvent' + call.recording_ready: '#/components/schemas/CallRecordingReadyEvent' + call.recording_started: '#/components/schemas/CallRecordingStartedEvent' + call.recording_stopped: '#/components/schemas/CallRecordingStoppedEvent' + call.rejected: '#/components/schemas/CallRejectedEvent' + call.ring: '#/components/schemas/CallRingEvent' + call.session_ended: '#/components/schemas/CallSessionEndedEvent' + call.session_participant_joined: '#/components/schemas/CallSessionParticipantJoinedEvent' + call.session_participant_left: '#/components/schemas/CallSessionParticipantLeftEvent' + call.session_started: '#/components/schemas/CallSessionStartedEvent' + call.transcription_failed: '#/components/schemas/CallTranscriptionFailedEvent' + call.transcription_ready: '#/components/schemas/CallTranscriptionReadyEvent' + call.transcription_started: '#/components/schemas/CallTranscriptionStartedEvent' + call.transcription_stopped: '#/components/schemas/CallTranscriptionStoppedEvent' + call.unblocked_user: '#/components/schemas/UnblockedUserEvent' + call.updated: '#/components/schemas/CallUpdatedEvent' + call.user_muted: '#/components/schemas/CallUserMuted' + channel.created: '#/components/schemas/ChannelCreatedEvent' + channel.deleted: '#/components/schemas/ChannelDeletedEvent' + channel.frozen: '#/components/schemas/ChannelFrozenEvent' + channel.hidden: '#/components/schemas/ChannelHiddenEvent' + channel.kicked: '#/components/schemas/ChannelKickedEvent' + channel.truncated: '#/components/schemas/ChannelTruncatedEvent' + channel.unfrozen: '#/components/schemas/ChannelUnFrozenEvent' + channel.updated: '#/components/schemas/ChannelUpdatedEvent' + channel.visible: '#/components/schemas/ChannelVisibleEvent' + connection.error: '#/components/schemas/ConnectionErrorEvent' + connection.ok: '#/components/schemas/ConnectedEvent' + custom: '#/components/schemas/AnyEvent' + health.check: '#/components/schemas/HealthCheckEvent' + member.added: '#/components/schemas/MemberAddedEvent' + member.removed: '#/components/schemas/MemberRemovedEvent' + member.updated: '#/components/schemas/MemberUpdatedEvent' + message.deleted: '#/components/schemas/MessageDeletedEvent' + message.new: '#/components/schemas/MessageNewEvent' + message.read: '#/components/schemas/MessageReadEvent' + message.undeleted: '#/components/schemas/MessageUndeletedEvent' + message.updated: '#/components/schemas/MessageUpdatedEvent' + notification.added_to_channel: '#/components/schemas/NotificationAddedToChannelEvent' + notification.channel_deleted: '#/components/schemas/NotificationChannelDeletedEvent' + notification.channel_mutes_updated: '#/components/schemas/NotificationChannelMutesUpdatedEvent' + notification.channel_truncated: '#/components/schemas/NotificationChannelTruncatedEvent' + notification.invite_accepted: '#/components/schemas/NotificationInviteAcceptedEvent' + notification.invite_rejected: '#/components/schemas/NotificationInviteRejectedEvent' + notification.invited: '#/components/schemas/NotificationInvitedEvent' + notification.mark_read: '#/components/schemas/NotificationMarkReadEvent' + notification.mark_unread: '#/components/schemas/NotificationMarkUnreadEvent' + notification.message_new: '#/components/schemas/NotificationNewMessageEvent' + notification.mutes_updated: '#/components/schemas/NotificationMutesUpdatedEvent' + notification.removed_from_channel: '#/components/schemas/NotificationRemovedFromChannelEvent' + notification.thread_message_new: '#/components/schemas/MessageNewEvent' + poll.closed: '#/components/schemas/PollClosedEvent' + poll.created: '#/components/schemas/PollCreatedEvent' + poll.deleted: '#/components/schemas/PollDeletedEvent' + poll.updated: '#/components/schemas/PollUpdatedEvent' + poll.vote_casted: '#/components/schemas/PollVoteCastedEvent' + poll.vote_changed: '#/components/schemas/PollVoteChangedEvent' + poll.vote_removed: '#/components/schemas/PollVoteRemovedEvent' + reaction.deleted: '#/components/schemas/ReactionDeletedEvent' + reaction.new: '#/components/schemas/ReactionNewEvent' + reaction.updated: '#/components/schemas/ReactionUpdatedEvent' + thread.updated: '#/components/schemas/ThreadUpdatedEvent' + typing.start: '#/components/schemas/TypingStartEvent' + typing.stop: '#/components/schemas/TypingStopEvent' + user.banned: '#/components/schemas/UserBannedEvent' + user.deactivated: '#/components/schemas/UserDeactivatedEvent' + user.deleted: '#/components/schemas/UserDeletedEvent' + user.muted: '#/components/schemas/UserMutedEvent' + user.presence.changed: '#/components/schemas/UserPresenceChangedEvent' + user.reactivated: '#/components/schemas/UserReactivatedEvent' + user.unbanned: '#/components/schemas/UserUnbannedEvent' + user.updated: '#/components/schemas/UserUpdatedEvent' + user.watching.start: '#/components/schemas/UserWatchingStartEvent' + user.watching.stop: '#/components/schemas/UserWatchingStopEvent' + propertyName: type + oneOf: + - $ref: '#/components/schemas/AnyEvent' + - $ref: '#/components/schemas/BlockedUserEvent' + - $ref: '#/components/schemas/CallAcceptedEvent' + - $ref: '#/components/schemas/CallCreatedEvent' + - $ref: '#/components/schemas/CallDeletedEvent' + - $ref: '#/components/schemas/CallEndedEvent' + - $ref: '#/components/schemas/CallHLSBroadcastingFailedEvent' + - $ref: '#/components/schemas/CallHLSBroadcastingStartedEvent' + - $ref: '#/components/schemas/CallHLSBroadcastingStoppedEvent' + - $ref: '#/components/schemas/CallLiveStartedEvent' + - $ref: '#/components/schemas/CallMemberAddedEvent' + - $ref: '#/components/schemas/CallMemberRemovedEvent' + - $ref: '#/components/schemas/CallMemberUpdatedEvent' + - $ref: '#/components/schemas/CallMemberUpdatedPermissionEvent' + - $ref: '#/components/schemas/CallNotificationEvent' + - $ref: '#/components/schemas/CallReactionEvent' + - $ref: '#/components/schemas/CallRecordingFailedEvent' + - $ref: '#/components/schemas/CallRecordingReadyEvent' + - $ref: '#/components/schemas/CallRecordingStartedEvent' + - $ref: '#/components/schemas/CallRecordingStoppedEvent' + - $ref: '#/components/schemas/CallRejectedEvent' + - $ref: '#/components/schemas/CallRingEvent' + - $ref: '#/components/schemas/CallSessionEndedEvent' + - $ref: '#/components/schemas/CallSessionParticipantJoinedEvent' + - $ref: '#/components/schemas/CallSessionParticipantLeftEvent' + - $ref: '#/components/schemas/CallSessionStartedEvent' + - $ref: '#/components/schemas/CallTranscriptionFailedEvent' + - $ref: '#/components/schemas/CallTranscriptionReadyEvent' + - $ref: '#/components/schemas/CallTranscriptionStartedEvent' + - $ref: '#/components/schemas/CallTranscriptionStoppedEvent' + - $ref: '#/components/schemas/CallUpdatedEvent' + - $ref: '#/components/schemas/CallUserMuted' + - $ref: '#/components/schemas/ChannelCreatedEvent' + - $ref: '#/components/schemas/ChannelDeletedEvent' + - $ref: '#/components/schemas/ChannelFrozenEvent' + - $ref: '#/components/schemas/ChannelHiddenEvent' + - $ref: '#/components/schemas/ChannelKickedEvent' + - $ref: '#/components/schemas/ChannelTruncatedEvent' + - $ref: '#/components/schemas/ChannelUnFrozenEvent' + - $ref: '#/components/schemas/ChannelUpdatedEvent' + - $ref: '#/components/schemas/ChannelVisibleEvent' + - $ref: '#/components/schemas/ClosedCaptionEvent' + - $ref: '#/components/schemas/ConnectedEvent' + - $ref: '#/components/schemas/ConnectionErrorEvent' + - $ref: '#/components/schemas/HealthCheckEvent' + - $ref: '#/components/schemas/MemberAddedEvent' + - $ref: '#/components/schemas/MemberRemovedEvent' + - $ref: '#/components/schemas/MemberUpdatedEvent' + - $ref: '#/components/schemas/MessageDeletedEvent' + - $ref: '#/components/schemas/MessageNewEvent' + - $ref: '#/components/schemas/MessageNewEvent' + - $ref: '#/components/schemas/MessageReadEvent' + - $ref: '#/components/schemas/MessageUndeletedEvent' + - $ref: '#/components/schemas/MessageUpdatedEvent' + - $ref: '#/components/schemas/NotificationAddedToChannelEvent' + - $ref: '#/components/schemas/NotificationChannelDeletedEvent' + - $ref: '#/components/schemas/NotificationChannelMutesUpdatedEvent' + - $ref: '#/components/schemas/NotificationChannelTruncatedEvent' + - $ref: '#/components/schemas/NotificationInviteAcceptedEvent' + - $ref: '#/components/schemas/NotificationInviteRejectedEvent' + - $ref: '#/components/schemas/NotificationInvitedEvent' + - $ref: '#/components/schemas/NotificationMarkReadEvent' + - $ref: '#/components/schemas/NotificationMarkUnreadEvent' + - $ref: '#/components/schemas/NotificationMutesUpdatedEvent' + - $ref: '#/components/schemas/NotificationNewMessageEvent' + - $ref: '#/components/schemas/NotificationRemovedFromChannelEvent' + - $ref: '#/components/schemas/PermissionRequestEvent' + - $ref: '#/components/schemas/PollClosedEvent' + - $ref: '#/components/schemas/PollCreatedEvent' + - $ref: '#/components/schemas/PollDeletedEvent' + - $ref: '#/components/schemas/PollUpdatedEvent' + - $ref: '#/components/schemas/PollVoteCastedEvent' + - $ref: '#/components/schemas/PollVoteChangedEvent' + - $ref: '#/components/schemas/PollVoteRemovedEvent' + - $ref: '#/components/schemas/ReactionDeletedEvent' + - $ref: '#/components/schemas/ReactionNewEvent' + - $ref: '#/components/schemas/ReactionUpdatedEvent' + - $ref: '#/components/schemas/ThreadUpdatedEvent' + - $ref: '#/components/schemas/TypingStartEvent' + - $ref: '#/components/schemas/TypingStopEvent' + - $ref: '#/components/schemas/UnblockedUserEvent' + - $ref: '#/components/schemas/UpdatedCallPermissionsEvent' + - $ref: '#/components/schemas/UserBannedEvent' + - $ref: '#/components/schemas/UserDeactivatedEvent' + - $ref: '#/components/schemas/UserDeletedEvent' + - $ref: '#/components/schemas/UserMutedEvent' + - $ref: '#/components/schemas/UserPresenceChangedEvent' + - $ref: '#/components/schemas/UserReactivatedEvent' + - $ref: '#/components/schemas/UserUnbannedEvent' + - $ref: '#/components/schemas/UserUpdatedEvent' + - $ref: '#/components/schemas/UserWatchingStartEvent' + - $ref: '#/components/schemas/UserWatchingStopEvent' + WrappedUnreadCountsResponse: + nullable: true + properties: + channel_type: + items: + $ref: '#/components/schemas/UnreadCountsChannelType' + type: array + x-stream-index: "001.004" + channels: + items: + $ref: '#/components/schemas/UnreadCountsChannel' + type: array + x-stream-index: "001.003" + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "002.001" + threads: + items: + $ref: '#/components/schemas/UnreadCountsThread' + type: array + x-stream-index: "001.005" + total_unread_count: + format: int32 + type: integer + x-stream-index: "001.001" + total_unread_threads_count: + format: int32 + type: integer + x-stream-index: "001.002" + required: + - total_unread_count + - total_unread_threads_count + - channels + - channel_type + - threads + - duration + type: object + XiaomiConfigFields: + properties: + enabled: + type: boolean + x-stream-index: "001" + package_name: + type: string + x-stream-index: "002" + secret: + type: string + x-stream-index: "003" + required: + - enabled + type: object + connectRequestQueryRequest: + nullable: true + type: object + securitySchemes: + JWT: + description: | + JWT should be always provided when stream-auth-type=jwt. + + Using JWT auth request could be authenticated as user or as server-side. + + When using user authentication permission checking is going to be applied to requests based on the user that is + performing a request. + + The `authorization` header should be a JWT string signed using the secret attached to the API key used to perform + requests. + + **WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not + shared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side. + If you wish, you can configure your application to ignore authentication (see `disable_auth_check`) + The JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well. + in: header + name: Authorization + type: apiKey + api_key: + description: Application API key should be always set in order to authenticate + the request. + in: query + name: api_key + type: apiKey + stream-auth-type: + description: |- + Stream-Auth-Type should be always set in order to authenticate the request. Possible + values: `jwt` or `anonymous`. + + `jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization + header. + + `anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available + to anonymous users. + in: header + name: Stream-Auth-Type + type: apiKey +info: + title: Stream API + version: v105.1.0 +openapi: 3.0.3 +paths: + /api/v2/app: + get: + description: | + This Method returns the application settings + operationId: GetApp + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/GetApplicationResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get App Settings + tags: + - Settings + /api/v2/chat/channels: + post: + description: | + Query channels with filter query + + Required permissions: + - ReadChannel + operationId: QueryChannels + parameters: + - in: query + name: connection_id + schema: + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID + type: string + x-stream-index: "011.003" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryChannelsRequest' + description: Query Channels Request + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/ChannelsResponse' + description: Channels list + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Query channels + tags: + - Channels + /api/v2/chat/channels/{type}/{id}: + delete: + description: | + Deletes channel + + Sends events: + - channel.deleted + + Required permissions: + - DeleteChannel + operationId: DeleteChannel + parameters: + - in: path + name: type + required: true + schema: + description: Channel type to interact with + title: Channel type + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "001.002" + - in: query + name: hard_delete + schema: + type: boolean + x-stream-index: "002" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/DeleteChannelResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete channel + tags: + - Channels + patch: + description: | + Updates certain fields of the channel + + Sends events: + - channel.updated + + Required permissions: + - UpdateChannel + - UpdateChannelCooldown + - UpdateChannelFrozen + operationId: UpdateChannelPartial + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelPartialRequest' + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelPartialResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Partially update channel + tags: + - Channels + post: + description: | + Change channel data + + Sends events: + - channel.updated + - member.added + - member.removed + - member.updated + - message.new + + Required permissions: + - AddOwnChannelMembership + - RemoveOwnChannelMembership + - UpdateChannel + - UpdateChannelCooldown + - UpdateChannelFrozen + - UpdateChannelMembers + operationId: UpdateChannel + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: 013.002.001 + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: 013.002.002 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelRequest' + description: Channel update request + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Update channel + tags: + - Channels + /api/v2/chat/channels/{type}/{id}/event: + post: + description: | + Sends event to the channel + + Required permissions: + - SendCustomEvent + operationId: SendEvent + parameters: + - in: path + name: type + required: true + schema: + description: Channel type to interact with + title: Channel type + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "002.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SendEventRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/EventResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Send event + tags: + - Events + /api/v2/chat/channels/{type}/{id}/file: + delete: + description: | + Deletes previously uploaded file + + Required permissions: + - DeleteAttachment + operationId: DeleteFile + parameters: + - in: path + name: type + required: true + schema: + description: The type of file + title: Type + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + description: File ID + title: ID + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: url + schema: + description: File URL to delete + title: URL + type: string + writeOnly: true + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/FileDeleteResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete file + tags: + - Messages + - Files + post: + description: | + Uploads file + + Required permissions: + - UploadAttachment + operationId: UploadFile + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.002" + requestBody: + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/FileUploadRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/FileUploadResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Upload file + tags: + - Messages + - Files + /api/v2/chat/channels/{type}/{id}/hide: + post: + description: | + Marks channel as hidden for current user + + Sends events: + - channel.hidden + + Required permissions: + - ReadChannel + operationId: HideChannel + parameters: + - in: path + name: type + required: true + schema: type: string - x-stream-index: "002" - secret: + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: type: string - x-stream-index: "003" - required: - - enabled - type: object - connectRequestQueryRequest: - nullable: true - type: object - securitySchemes: - JWT: + writeOnly: true + x-stream-index: "002.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/HideChannelRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/HideChannelResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Hide channel + tags: + - Channels + /api/v2/chat/channels/{type}/{id}/image: + delete: description: | - JWT should be always provided when stream-auth-type=jwt. - - Using JWT auth request could be authenticated as user or as server-side. - - When using user authentication permission checking is going to be applied to requests based on the user that is - performing a request. - - The `authorization` header should be a JWT string signed using the secret attached to the API key used to perform - requests. - - **WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not - shared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side. - If you wish, you can configure your application to ignore authentication (see `disable_auth_check`) - The JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well. - in: header - name: Authorization - type: apiKey - api_key: - description: Application API key should be always set in order to authenticate - the request. - in: query - name: api_key - type: apiKey - stream-auth-type: - description: |- - Stream-Auth-Type should be always set in order to authenticate the request. Possible - values: `jwt` or `anonymous`. - - `jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization - header. + Deletes previously uploaded image - `anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available - to anonymous users. - in: header - name: Stream-Auth-Type - type: apiKey -info: - title: Stream API - version: v104.0.1 -openapi: 3.0.3 -paths: - /api/v2/app: - get: - description: | - This Method returns the application settings - operationId: GetApp + Required permissions: + - DeleteAttachment + operationId: DeleteImage + parameters: + - in: path + name: type + required: true + schema: + description: The type of file + title: Type + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + description: File ID + title: ID + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: url + schema: + description: File URL to delete + title: URL + type: string + writeOnly: true + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/GetApplicationResponse' + $ref: '#/components/schemas/FileDeleteResponse' description: Successful response "400": content: @@ -11862,40 +13571,45 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get App Settings + summary: Delete image tags: - - Settings - /api/v2/chat/channels: + - Messages + - Files post: description: | - Query channels with filter query + Uploads image Required permissions: - - ReadChannel - operationId: QueryChannels + - UploadAttachment + operationId: UploadImage parameters: - - in: query - name: connection_id + - in: path + name: type + required: true schema: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID type: string - x-stream-index: "011.003" + writeOnly: true + x-stream-index: 001.001.001 + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: 001.001.002 requestBody: content: - application/json: + multipart/form-data: schema: - $ref: '#/components/schemas/QueryChannelsRequest' - description: Query Channels Request + $ref: '#/components/schemas/ImageUploadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ChannelsResponse' - description: Channels list + $ref: '#/components/schemas/ImageUploadResponse' + description: Successful response "400": content: application/json: @@ -11908,20 +13622,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query channels + summary: Upload image tags: - - Channels - /api/v2/chat/channels/{type}/{id}: - delete: + - Messages + - Files + /api/v2/chat/channels/{type}/{id}/message: + post: description: | - Deletes channel + Sends new message to the specified channel Sends events: - - channel.deleted + - message.new + - message.updated Required permissions: - - DeleteChannel - operationId: DeleteChannel + - AddLinks + - CreateMessage + - PinMessage + - SkipChannelCooldown + - SkipMessageModeration + - UseFrozenChannel + operationId: SendMessage parameters: - in: path name: type @@ -11931,7 +13652,7 @@ paths: title: Channel type type: string writeOnly: true - x-stream-index: "001.001" + x-stream-index: "009.001" - in: path name: id required: true @@ -11940,18 +13661,75 @@ paths: title: Channel ID type: string writeOnly: true - x-stream-index: "001.002" + x-stream-index: "009.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SendMessageRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/SendMessageResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Send new message + tags: + - Messages + /api/v2/chat/channels/{type}/{id}/messages: + get: + description: | + Returns list messages found by IDs + + Required permissions: + - ReadChannel + operationId: GetManyMessages + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.002" - in: query - name: hard_delete + name: ids schema: - type: boolean - x-stream-index: "002" + description: List of comma-separated IDs + items: + type: string + maximum: 50 + minimum: 1 + title: IDs + type: array + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelResponse' + $ref: '#/components/schemas/GetManyMessagesResponse' description: Successful response "400": content: @@ -11965,48 +13743,61 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete channel + summary: Get many messages tags: - - Channels - patch: + - Messages + /api/v2/chat/channels/{type}/{id}/query: + post: description: | - Updates certain fields of the channel + This Method creates a channel or returns an existing one with matching attributes Sends events: - - channel.updated - - Required permissions: - - UpdateChannel - - UpdateChannelCooldown - - UpdateChannelFrozen - operationId: UpdateChannelPartial + - channel.created + - member.added + - member.removed + - member.updated + - user.watching.start + operationId: GetOrCreateChannel parameters: - in: path name: type required: true schema: + description: Channel type + maxLength: 64 + title: Type type: string writeOnly: true - x-stream-index: "001.001" + x-stream-index: "002" - in: path name: id required: true schema: + description: Channel ID (maximum length of 64 characters) + title: ID type: string writeOnly: true - x-stream-index: "001.002" + x-stream-index: "003" + - in: query + name: connection_id + schema: + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID + type: string + x-stream-index: "001.003" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelPartialRequest' + $ref: '#/components/schemas/ChannelGetOrCreateRequest' required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelPartialResponse' + $ref: '#/components/schemas/ChannelStateResponse' description: Successful response "400": content: @@ -12020,28 +13811,20 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Partially update channel + summary: Get or create channel tags: - Channels + /api/v2/chat/channels/{type}/{id}/read: post: description: | - Change channel data + Marks channel as read up to the specific message Sends events: - - channel.updated - - member.added - - member.removed - - member.updated - - message.new + - message.read Required permissions: - - AddOwnChannelMembership - - RemoveOwnChannelMembership - - UpdateChannel - - UpdateChannelCooldown - - UpdateChannelFrozen - - UpdateChannelMembers - operationId: UpdateChannel + - ReadChannel + operationId: MarkRead parameters: - in: path name: type @@ -12049,27 +13832,26 @@ paths: schema: type: string writeOnly: true - x-stream-index: 013.002.001 + x-stream-index: "002.001" - in: path name: id required: true schema: type: string writeOnly: true - x-stream-index: 013.002.002 + x-stream-index: "002.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelRequest' - description: Channel update request + $ref: '#/components/schemas/MarkReadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelResponse' + $ref: '#/components/schemas/MarkReadResponse' description: Successful response "400": content: @@ -12083,17 +13865,18 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update channel + summary: Mark read tags: - Channels - /api/v2/chat/channels/{type}/{id}/event: + - Messages + /api/v2/chat/channels/{type}/{id}/show: post: description: | - Sends event to the channel + Shows previously hidden channel - Required permissions: - - SendCustomEvent - operationId: SendEvent + Sends events: + - channel.visible + operationId: ShowChannel parameters: - in: path name: type @@ -12103,7 +13886,7 @@ paths: title: Channel type type: string writeOnly: true - x-stream-index: "002.001" + x-stream-index: "001.001" - in: path name: id required: true @@ -12112,19 +13895,19 @@ paths: title: Channel ID type: string writeOnly: true - x-stream-index: "002.002" + x-stream-index: "001.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/SendEventRequest' + $ref: '#/components/schemas/ShowChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/EventResponse' + $ref: '#/components/schemas/ShowChannelResponse' description: Successful response "400": content: @@ -12138,24 +13921,22 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send event + summary: Show channel tags: - - Events - /api/v2/chat/channels/{type}/{id}/file: - delete: + - Channels + /api/v2/chat/channels/{type}/{id}/stop-watching: + post: description: | - Deletes previously uploaded file + Call this Method to stop receiving channel events - Required permissions: - - DeleteAttachment - operationId: DeleteFile + Sends events: + - user.watching.stop + operationId: StopWatchingChannel parameters: - in: path name: type required: true schema: - description: The type of file - title: Type type: string writeOnly: true x-stream-index: "002.001" @@ -12163,25 +13944,26 @@ paths: name: id required: true schema: - description: File ID - title: ID type: string writeOnly: true x-stream-index: "002.002" - in: query - name: url + name: connection_id schema: - description: File URL to delete - title: URL type: string - writeOnly: true - x-stream-index: "001" + x-stream-index: "001.003" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChannelStopWatchingRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/FileDeleteResponse' + $ref: '#/components/schemas/StopWatchingResponse' description: Successful response "400": content: @@ -12195,17 +13977,21 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete file + summary: Stop watching channel tags: - - Messages - - Files + - Channels + /api/v2/chat/channels/{type}/{id}/truncate: post: description: | - Uploads file + Truncates channel + + Sends events: + - channel.truncated Required permissions: - - UploadAttachment - operationId: UploadFile + - DeleteChannel + - TruncateChannel + operationId: TruncateChannel parameters: - in: path name: type @@ -12223,16 +14009,16 @@ paths: x-stream-index: "001.002" requestBody: content: - multipart/form-data: + application/json: schema: - $ref: '#/components/schemas/FileUploadRequest' + $ref: '#/components/schemas/TruncateChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/FileUploadResponse' + $ref: '#/components/schemas/TruncateChannelResponse' description: Successful response "400": content: @@ -12246,21 +14032,17 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Upload file + summary: Truncate channel tags: - - Messages - - Files - /api/v2/chat/channels/{type}/{id}/hide: + - Channels + /api/v2/chat/channels/{type}/{id}/unread: post: description: | - Marks channel as hidden for current user - - Sends events: - - channel.hidden + Marks channel as unread from a specific message Required permissions: - ReadChannel - operationId: HideChannel + operationId: MarkUnread parameters: - in: path name: type @@ -12280,14 +14062,14 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/HideChannelRequest' + $ref: '#/components/schemas/MarkUnreadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/HideChannelResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -12301,50 +14083,92 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Hide channel + summary: Mark unread tags: - Channels - /api/v2/chat/channels/{type}/{id}/image: - delete: + - Messages + /api/v2/chat/channels/{type}/query: + post: description: | - Deletes previously uploaded image + This Method creates a channel or returns an existing one with matching attributes - Required permissions: - - DeleteAttachment - operationId: DeleteImage + Sends events: + - channel.created + - member.added + - member.removed + - member.updated + - user.watching.start + operationId: GetOrCreateChannel parameters: - in: path name: type required: true schema: - description: The type of file + description: Channel type + maxLength: 64 title: Type type: string writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true - schema: - description: File ID - title: ID - type: string - writeOnly: true - x-stream-index: "002.002" + x-stream-index: "002" - in: query - name: url + name: connection_id schema: - description: File URL to delete - title: URL + description: Websocket connection ID to interact with. You can pass it as + Body or URL parameter + title: Connection ID type: string - writeOnly: true - x-stream-index: "001" + x-stream-index: "001.003" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChannelGetOrCreateRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/ChannelStateResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get or create channel + tags: + - Channels + /api/v2/chat/channels/delete: + post: + description: | + Allows to delete several channels at once asynchronously + + Sends events: + - channel.deleted + + Required permissions: + - DeleteChannel + operationId: DeleteChannels + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DeleteChannelsRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/FileDeleteResponse' + $ref: '#/components/schemas/DeleteChannelsResponse' description: Successful response "400": content: @@ -12358,44 +14182,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete image + summary: Deletes channels asynchronously tags: - - Messages - - Files + - Channels + - GDPR + /api/v2/chat/channels/read: post: description: | - Uploads image + Marks channels as read up to the specific message. If no channels is given, mark all channel as read + + Sends events: + - message.read Required permissions: - - UploadAttachment - operationId: UploadImage - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: 001.001.001 - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: 001.001.002 + - ReadChannel + operationId: MarkChannelsRead requestBody: content: - multipart/form-data: + application/json: schema: - $ref: '#/components/schemas/ImageUploadRequest' + $ref: '#/components/schemas/MarkChannelsReadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ImageUploadResponse' + $ref: '#/components/schemas/MarkReadResponse' description: Successful response "400": content: @@ -12409,58 +14222,89 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Upload image + summary: Mark channels as read tags: + - Channels - Messages - - Files - /api/v2/chat/channels/{type}/{id}/message: - post: + /api/v2/chat/members: + get: description: | - Sends new message to the specified channel + Find and filter channel members + + Required permissions: + - ReadChannel + operationId: QueryMembers + parameters: + - content: + application/json: + schema: + $ref: '#/components/schemas/QueryMembersRequest' + x-stream-index: "001" + in: query + name: payload + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/MembersResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Query members + tags: + - Channels + /api/v2/chat/messages/{id}: + delete: + description: | + Deletes message Sends events: - - message.new - - message.updated + - message.deleted Required permissions: - - AddLinks - - CreateMessage - - PinMessage - - SkipChannelCooldown - - SkipMessageModeration - - UseFrozenChannel - operationId: SendMessage + - DeleteMessage + operationId: DeleteMessage parameters: - in: path - name: type + name: id required: true schema: - description: Channel type to interact with - title: Channel type + description: Message ID to delete + title: ID type: string writeOnly: true - x-stream-index: "009.001" - - in: path - name: id - required: true + x-stream-index: "001" + - in: query + name: hard + schema: + description: Delete all message reactions and replies as well + title: Hard + type: boolean + writeOnly: true + x-stream-index: "002" + - in: query + name: deleted_by schema: - description: Channel ID to interact with - title: Channel ID type: string writeOnly: true - x-stream-index: "009.002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SendMessageRequest' - required: true + x-stream-index: "003" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/SendMessageResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -12474,49 +14318,38 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send new message + summary: Delete message tags: - Messages - /api/v2/chat/channels/{type}/{id}/messages: get: description: | - Returns list messages found by IDs + Returns message by ID Required permissions: - ReadChannel - operationId: GetManyMessages + operationId: GetMessage parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - in: path name: id required: true schema: + description: Message ID + title: ID type: string writeOnly: true - x-stream-index: "002.002" + x-stream-index: "002" - in: query - name: ids + name: show_deleted_message schema: - description: List of comma-separated IDs - items: - type: string - maximum: 50 - minimum: 1 - title: IDs - type: array - x-stream-index: "001" + type: boolean + writeOnly: true + x-stream-index: "003" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/GetManyMessagesResponse' + $ref: '#/components/schemas/MessageWithPendingMetadataResponse' description: Successful response "400": content: @@ -12530,61 +14363,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get many messages + summary: Get message tags: - Messages - /api/v2/chat/channels/{type}/{id}/query: post: description: | - This Method creates a channel or returns an existing one with matching attributes + Updates message with new data Sends events: - - channel.created - - member.added - - member.removed - - member.updated - - user.watching.start - operationId: GetOrCreateChannel + - message.updated + + Required permissions: + - AddLinks + - PinMessage + - SkipMessageModeration + - UpdateMessage + operationId: UpdateMessage parameters: - - in: path - name: type - required: true - schema: - description: Channel type - maxLength: 64 - title: Type - type: string - writeOnly: true - x-stream-index: "002" - in: path name: id required: true schema: - description: Channel ID (maximum length of 64 characters) - title: ID type: string writeOnly: true - x-stream-index: "003" - - in: query - name: connection_id - schema: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID - type: string - x-stream-index: "001.003" + x-stream-index: "003.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/ChannelGetOrCreateRequest' + $ref: '#/components/schemas/UpdateMessageRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ChannelStateResponse' + $ref: '#/components/schemas/UpdateMessageResponse' description: Successful response "400": content: @@ -12598,47 +14412,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get or create channel + summary: Update message tags: - - Channels - /api/v2/chat/channels/{type}/{id}/read: - post: + - Messages + put: description: | - Marks channel as read up to the specific message + Updates certain fields of the message Sends events: - - message.read + - message.updated Required permissions: - - ReadChannel - operationId: MarkRead + - AddLinks + - PinMessage + - SkipMessageModeration + - UpdateMessage + operationId: UpdateMessagePartial parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - in: path name: id required: true schema: type: string writeOnly: true - x-stream-index: "002.002" + x-stream-index: "003.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/MarkReadRequest' + $ref: '#/components/schemas/UpdateMessagePartialRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MarkReadResponse' + $ref: '#/components/schemas/UpdateMessagePartialResponse' description: Successful response "400": content: @@ -12652,49 +14461,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark read + summary: Partially message update tags: - - Channels - Messages - /api/v2/chat/channels/{type}/{id}/show: + /api/v2/chat/messages/{id}/action: post: description: | - Shows previously hidden channel + Executes message command action with given parameters Sends events: - - channel.visible - operationId: ShowChannel + - message.new + + Required permissions: + - RunMessageAction + operationId: RunMessageAction parameters: - - in: path - name: type - required: true - schema: - description: Channel type to interact with - title: Channel type - type: string - writeOnly: true - x-stream-index: "001.001" - in: path name: id required: true schema: - description: Channel ID to interact with - title: Channel ID + description: Message ID + title: ID type: string writeOnly: true - x-stream-index: "001.002" + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/ShowChannelRequest' + $ref: '#/components/schemas/MessageActionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ShowChannelResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -12708,49 +14510,44 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Show channel + summary: Run message command action tags: - - Channels - /api/v2/chat/channels/{type}/{id}/stop-watching: + - Messages + /api/v2/chat/messages/{id}/reaction: post: description: | - Call this Method to stop receiving channel events + Sends reaction to specified message Sends events: - - user.watching.stop - operationId: StopWatchingChannel + - reaction.new + - reaction.updated + + Required permissions: + - CreateReaction + - UseFrozenChannel + operationId: SendReaction parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - in: path name: id required: true schema: + description: Message ID to send reaction for + title: ID type: string writeOnly: true - x-stream-index: "002.002" - - in: query - name: connection_id - schema: - type: string - x-stream-index: "001.003" + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/ChannelStopWatchingRequest' + $ref: '#/components/schemas/SendReactionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/StopWatchingResponse' + $ref: '#/components/schemas/ReactionResponse' description: Successful response "400": content: @@ -12764,48 +14561,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Stop watching channel + summary: Send reaction tags: - - Channels - /api/v2/chat/channels/{type}/{id}/truncate: - post: + - Messages + - Reactions + /api/v2/chat/messages/{id}/reaction/{type}: + delete: description: | - Truncates channel + Removes user reaction from the message Sends events: - - channel.truncated + - reaction.deleted Required permissions: - - DeleteChannel - - TruncateChannel - operationId: TruncateChannel + - DeleteReaction + operationId: DeleteReaction parameters: - in: path - name: type + name: id required: true schema: + description: Message ID to remove reaction from + title: ID type: string writeOnly: true - x-stream-index: "001.001" + x-stream-index: "001" - in: path - name: id + name: type required: true schema: + description: Reaction type to remove + title: Type type: string writeOnly: true - x-stream-index: "001.002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TruncateChannelRequest' - required: true + x-stream-index: "002" + - in: query + name: user_id + schema: + description: '**Server-side only**. User ID which server acts upon' + title: User ID + type: string + writeOnly: true + x-stream-index: "003" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/TruncateChannelResponse' + $ref: '#/components/schemas/ReactionRemovalResponse' description: Successful response "400": content: @@ -12819,44 +14622,52 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Truncate channel + summary: Delete reaction tags: - - Channels - /api/v2/chat/channels/{type}/{id}/unread: - post: + - Messages + - Reactions + /api/v2/chat/messages/{id}/reactions: + get: description: | - Marks channel as unread from a specific message + Returns list of reactions of specific message Required permissions: - ReadChannel - operationId: MarkUnread + operationId: GetReactions parameters: - in: path - name: type + name: id required: true schema: + description: Message ID + title: ID type: string writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true + x-stream-index: "001" + - in: query + name: limit schema: - type: string + description: Number of records to return + format: int32 + title: Limit + type: integer writeOnly: true - x-stream-index: "002.002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MarkUnreadRequest' - required: true + x-stream-index: "002" + - in: query + name: offset + schema: + description: Number of records to offset + format: int32 + title: Offset + type: integer + writeOnly: true + x-stream-index: "003" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/GetReactionsResponse' description: Successful response "400": content: @@ -12870,53 +14681,43 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark unread + summary: Get reactions tags: - - Channels - Messages - /api/v2/chat/channels/{type}/query: + - Reactions + /api/v2/chat/messages/{id}/translate: post: description: | - This Method creates a channel or returns an existing one with matching attributes + Translates message to a given language using automated translation software Sends events: - - channel.created - - member.added - - member.removed - - member.updated - - user.watching.start - operationId: GetOrCreateChannel + - message.updated + + Required permissions: + - ReadChannel + operationId: TranslateMessage parameters: - in: path - name: type + name: id required: true schema: - description: Channel type - maxLength: 64 - title: Type + description: Message ID + title: ID type: string writeOnly: true - x-stream-index: "002" - - in: query - name: connection_id - schema: - description: Websocket connection ID to interact with. You can pass it as - Body or URL parameter - title: Connection ID - type: string - x-stream-index: "001.003" + x-stream-index: "001.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/ChannelGetOrCreateRequest' + $ref: '#/components/schemas/TranslateMessageRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ChannelStateResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -12930,32 +14731,47 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get or create channel + summary: Translate message tags: - - Channels - /api/v2/chat/channels/delete: + - Messages + /api/v2/chat/messages/{message_id}/polls/{poll_id}/vote: post: description: | - Allows to delete several channels at once asynchronously + Cast a vote on a poll Sends events: - - channel.deleted + - poll.vote_casted Required permissions: - - DeleteChannel - operationId: DeleteChannels + - CastVote + operationId: CastPollVote + parameters: + - in: path + name: message_id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001" + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelsRequest' + $ref: '#/components/schemas/CastPollVoteRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelsResponse' + $ref: '#/components/schemas/PollVoteResponse' description: Successful response "400": content: @@ -12969,33 +14785,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Deletes channels asynchronously + summary: Cast vote tags: - - Channels - - GDPR - /api/v2/chat/channels/read: - post: + - Polls + /api/v2/chat/messages/{message_id}/polls/{poll_id}/vote/{vote_id}: + delete: description: | - Marks channels as read up to the specific message. If no channels is given, mark all channel as read + Delete a vote from a poll Sends events: - - message.read + - poll.vote_removed Required permissions: - - ReadChannel - operationId: MarkChannelsRead - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MarkChannelsReadRequest' + - CastVote + operationId: RemovePollVote + parameters: + - in: path + name: message_id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002" + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: path + name: vote_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "004" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MarkReadResponse' + $ref: '#/components/schemas/PollVoteResponse' description: Successful response "400": content: @@ -13009,32 +14846,88 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark channels as read + summary: Delete vote tags: - - Channels - - Messages - /api/v2/chat/members: + - Polls + /api/v2/chat/messages/{parent_id}/replies: get: description: | - Find and filter channel members + Returns replies (thread) of the message Required permissions: - ReadChannel - operationId: QueryMembers + operationId: GetReplies parameters: - - content: - application/json: - schema: - $ref: '#/components/schemas/QueryMembersRequest' - x-stream-index: "001" - in: query - name: payload + - in: path + name: parent_id + required: true + schema: + description: ID of a message which replies to return + title: Parent ID + type: string + writeOnly: true + x-stream-index: "001" + - in: query + name: id_gte + schema: + type: string + x-stream-index: 002.001.003 + - in: query + name: id_gt + schema: + type: string + x-stream-index: 002.001.004 + - in: query + name: id_lte + schema: + type: string + x-stream-index: 002.001.005 + - in: query + name: id_lt + schema: + type: string + x-stream-index: 002.001.006 + - in: query + name: created_at_after_or_equal + schema: + format: date-time + type: string + x-stream-index: 002.001.007 + - in: query + name: created_at_after + schema: + format: date-time + type: string + x-stream-index: 002.001.008 + - in: query + name: created_at_before_or_equal + schema: + format: date-time + type: string + x-stream-index: 002.001.009 + - in: query + name: created_at_before + schema: + format: date-time + type: string + x-stream-index: 002.001.010 + - in: query + name: id_around + schema: + type: string + x-stream-index: 002.001.011 + - in: query + name: created_at_around + schema: + format: date-time + type: string + x-stream-index: 002.001.012 responses: "200": content: application/json: schema: - $ref: '#/components/schemas/MembersResponse' + $ref: '#/components/schemas/GetRepliesResponse' description: Successful response "400": content: @@ -13048,50 +14941,48 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query members + summary: Get replies tags: - - Channels - /api/v2/chat/messages/{id}: + - Messages + /api/v2/chat/moderation/ban: delete: description: | - Deletes message + Removes previously applied ban Sends events: - - message.deleted + - user.unbanned Required permissions: - - DeleteMessage - operationId: DeleteMessage + - BanChannelMember + - BanUser + operationId: Unban parameters: - - in: path - name: id - required: true + - in: query + name: target_user_id schema: - description: Message ID to delete - title: ID type: string - writeOnly: true x-stream-index: "001" - in: query - name: hard + name: type schema: - description: Delete all message reactions and replies as well - title: Hard - type: boolean - writeOnly: true + type: string x-stream-index: "002" - in: query - name: deleted_by + name: id schema: type: string - writeOnly: true x-stream-index: "003" + - in: query + name: created_by + schema: + type: string + x-stream-index: "004" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -13105,38 +14996,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete message + summary: Unban user tags: - - Messages - get: + - Users + - Moderation + post: description: | - Returns message by ID + Restricts user activity either in specific channel or globally + + Sends events: + - user.banned Required permissions: - - ReadChannel - operationId: GetMessage - parameters: - - in: path - name: id + - BanChannelMember + - BanUser + operationId: Ban + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/BanRequest' required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "002" - - in: query - name: show_deleted_message - schema: - type: boolean - writeOnly: true - x-stream-index: "003" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/MessageWithPendingMetadataResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -13150,42 +15036,35 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get message + summary: Ban user tags: - - Messages + - Users + - Moderation + /api/v2/chat/moderation/flag: post: description: | - Updates message with new data + Reports message or user for review by moderators Sends events: - - message.updated + - message.flagged + - user.flagged Required permissions: - - AddLinks - - PinMessage - - SkipMessageModeration - - UpdateMessage - operationId: UpdateMessage - parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "003.001" + - FlagMessage + - FlagUser + operationId: Flag requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageRequest' + $ref: '#/components/schemas/FlagRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageResponse' + $ref: '#/components/schemas/FlagResponse' description: Successful response "400": content: @@ -13199,42 +15078,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update message + summary: Flag tags: + - Moderation - Messages - put: + - Users + /api/v2/chat/moderation/flags/message: + get: description: | - Updates certain fields of the message - - Sends events: - - message.updated + Find and filter message flags Required permissions: - - AddLinks - - PinMessage - - SkipMessageModeration - - UpdateMessage - operationId: UpdateMessagePartial + - ReadMessageFlags + operationId: QueryMessageFlags parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "003.001" - requestBody: - content: + - content: application/json: schema: - $ref: '#/components/schemas/UpdateMessagePartialRequest' - required: true + $ref: '#/components/schemas/QueryMessageFlagsRequest' + x-stream-index: "001" + in: query + name: payload responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessagePartialResponse' + $ref: '#/components/schemas/QueryMessageFlagsResponse' description: Successful response "400": content: @@ -13248,42 +15118,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Partially message update + summary: Query Message Flags tags: - Messages - /api/v2/chat/messages/{id}/action: + - Moderation + /api/v2/chat/moderation/mute: post: description: | - Executes message command action with given parameters + Mutes one or several users Sends events: - - message.new + - user.muted Required permissions: - - RunMessageAction - operationId: RunMessageAction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001" + - MuteUser + operationId: MuteUser requestBody: content: application/json: schema: - $ref: '#/components/schemas/MessageActionRequest' + $ref: '#/components/schemas/MuteUserRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/MuteUserResponse' description: Successful response "400": content: @@ -13297,44 +15158,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Run message command action + summary: Mute user tags: - - Messages - /api/v2/chat/messages/{id}/reaction: + - Users + - Moderation + /api/v2/chat/moderation/mute/channel: post: description: | - Sends reaction to specified message + Mutes channel for user Sends events: - - reaction.new - - reaction.updated + - channel.muted Required permissions: - - CreateReaction - - UseFrozenChannel - operationId: SendReaction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID to send reaction for - title: ID - type: string - writeOnly: true - x-stream-index: "001" + - MuteChannel + operationId: MuteChannel requestBody: content: application/json: schema: - $ref: '#/components/schemas/SendReactionRequest' + $ref: '#/components/schemas/MuteChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ReactionResponse' + $ref: '#/components/schemas/MuteChannelResponse' description: Successful response "400": content: @@ -13348,54 +15198,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send reaction + summary: Mute channel tags: - - Messages - - Reactions - /api/v2/chat/messages/{id}/reaction/{type}: - delete: + - Channels + /api/v2/chat/moderation/unmute: + post: description: | - Removes user reaction from the message + Unmutes previously muted user Sends events: - - reaction.deleted + - user.unmuted Required permissions: - - DeleteReaction - operationId: DeleteReaction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID to remove reaction from - title: ID - type: string - writeOnly: true - x-stream-index: "001" - - in: path - name: type + - MuteUser + operationId: UnmuteUser + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UnmuteUserRequest' required: true - schema: - description: Reaction type to remove - title: Type - type: string - writeOnly: true - x-stream-index: "002" - - in: query - name: user_id - schema: - description: '**Server-side only**. User ID which server acts upon' - title: User ID - type: string - writeOnly: true - x-stream-index: "003" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/ReactionRemovalResponse' + $ref: '#/components/schemas/UnmuteResponse' description: Successful response "400": content: @@ -13409,52 +15237,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete reaction + summary: Unmute user tags: - - Messages - - Reactions - /api/v2/chat/messages/{id}/reactions: - get: + - Users + - Moderation + /api/v2/chat/moderation/unmute/channel: + post: description: | - Returns list of reactions of specific message + Unmutes channel for user + + Sends events: + - channel.unmuted Required permissions: - - ReadChannel - operationId: GetReactions - parameters: - - in: path - name: id + - MuteChannel + operationId: UnmuteChannel + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UnmuteChannelRequest' required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001" - - in: query - name: limit - schema: - description: Number of records to return - format: int32 - title: Limit - type: integer - writeOnly: true - x-stream-index: "002" - - in: query - name: offset - schema: - description: Number of records to offset - format: int32 - title: Offset - type: integer - writeOnly: true - x-stream-index: "003" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetReactionsResponse' + $ref: '#/components/schemas/UnmuteResponse' description: Successful response "400": content: @@ -13468,43 +15277,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get reactions + summary: Unmute channel tags: - - Messages - - Reactions - /api/v2/chat/messages/{id}/translate: + - Channels + /api/v2/chat/polls: post: description: | - Translates message to a given language using automated translation software + Creates a new poll Sends events: - - message.updated + - poll.created Required permissions: - - ReadChannel - operationId: TranslateMessage - parameters: - - in: path - name: id - required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001.001" + - CreatePoll + operationId: CreatePoll requestBody: content: application/json: schema: - $ref: '#/components/schemas/TranslateMessageRequest' + $ref: '#/components/schemas/CreatePollRequest' + description: Create Poll Request required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -13518,88 +15317,31 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Translate message + summary: Create poll tags: - - Messages - /api/v2/chat/messages/{parent_id}/replies: - get: + - Polls + put: description: | - Returns replies (thread) of the message + Updates a poll + + Sends events: + - poll.updated Required permissions: - - ReadChannel - operationId: GetReplies - parameters: - - in: path - name: parent_id - required: true - schema: - description: ID of a message which replies to return - title: Parent ID - type: string - writeOnly: true - x-stream-index: "001" - - in: query - name: id_gte - schema: - type: string - x-stream-index: 002.001.003 - - in: query - name: id_gt - schema: - type: string - x-stream-index: 002.001.004 - - in: query - name: id_lte - schema: - type: string - x-stream-index: 002.001.005 - - in: query - name: id_lt - schema: - type: string - x-stream-index: 002.001.006 - - in: query - name: created_at_after_or_equal - schema: - format: date-time - type: string - x-stream-index: 002.001.007 - - in: query - name: created_at_after - schema: - format: date-time - type: string - x-stream-index: 002.001.008 - - in: query - name: created_at_before_or_equal - schema: - format: date-time - type: string - x-stream-index: 002.001.009 - - in: query - name: created_at_before - schema: - format: date-time - type: string - x-stream-index: 002.001.010 - - in: query - name: id_around - schema: - type: string - x-stream-index: 002.001.011 - - in: query - name: created_at_around - schema: - format: date-time - type: string - x-stream-index: 002.001.012 + - UpdatePoll + operationId: UpdatePoll + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdatePollRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetRepliesResponse' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -13613,48 +15355,80 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get replies + summary: Update poll tags: - - Messages - /api/v2/chat/moderation/ban: + - Polls + /api/v2/chat/polls/{poll_id}: delete: description: | - Removes previously applied ban + Deletes a poll Sends events: - - user.unbanned + - poll.deleted Required permissions: - - BanChannelMember - - BanUser - operationId: Unban + - DeletePoll + operationId: DeletePoll parameters: - - in: query - name: target_user_id + - in: path + name: poll_id + required: true schema: + maxLength: 255 type: string - x-stream-index: "001" + x-stream-index: "002" - in: query - name: type + name: user_id schema: type: string - x-stream-index: "002" - - in: query - name: id + writeOnly: true + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete poll + tags: + - Polls + get: + description: | + Retrieves a poll + operationId: GetPoll + parameters: + - in: path + name: poll_id + required: true schema: + maxLength: 255 type: string - x-stream-index: "003" + x-stream-index: "002" - in: query - name: created_by + name: user_id schema: type: string - x-stream-index: "004" + writeOnly: true + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -13668,33 +15442,39 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unban user + summary: Get poll tags: - - Users - - Moderation - post: + - Polls + patch: description: | - Restricts user activity either in specific channel or globally + Updates a poll partially Sends events: - - user.banned + - poll.updated Required permissions: - - BanChannelMember - - BanUser - operationId: Ban + - UpdatePoll + operationId: UpdatePollPartial + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/BanRequest' + $ref: '#/components/schemas/UpdatePollPartialRequest' required: true responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -13708,35 +15488,41 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Ban user + summary: Partial update poll tags: - - Users - - Moderation - /api/v2/chat/moderation/flag: + - Polls + /api/v2/chat/polls/{poll_id}/options: post: description: | - Reports message or user for review by moderators + Creates a poll option Sends events: - - message.flagged - - user.flagged + - poll.updated Required permissions: - - FlagMessage - - FlagUser - operationId: Flag + - CastVote + - UpdatePoll + operationId: CreatePollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/FlagRequest' + $ref: '#/components/schemas/CreatePollOptionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/FlagResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -13750,33 +15536,39 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Flag + summary: Create poll option tags: - - Moderation - - Messages - - Users - /api/v2/chat/moderation/flags/message: - get: + - Polls + put: description: | - Find and filter message flags + Updates a poll option + + Sends events: + - poll.updated Required permissions: - - ReadMessageFlags - operationId: QueryMessageFlags + - UpdatePoll + operationId: UpdatePollOption parameters: - - content: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" + requestBody: + content: application/json: schema: - $ref: '#/components/schemas/QueryMessageFlagsRequest' - x-stream-index: "001" - in: query - name: payload + $ref: '#/components/schemas/UpdatePollOptionRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/QueryMessageFlagsResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -13790,33 +15582,47 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query Message Flags + summary: Update poll option tags: - - Messages - - Moderation - /api/v2/chat/moderation/mute: - post: + - Polls + /api/v2/chat/polls/{poll_id}/options/{option_id}: + delete: description: | - Mutes one or several users + Deletes a poll option Sends events: - - user.muted + - poll.updated Required permissions: - - MuteUser - operationId: MuteUser - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MuteUserRequest' + - UpdatePoll + operationId: DeletePollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: path + name: option_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MuteUserResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -13830,33 +15636,40 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mute user + summary: Delete poll option tags: - - Users - - Moderation - /api/v2/chat/moderation/mute/channel: - post: + - Polls + get: description: | - Mutes channel for user - - Sends events: - - channel.muted - - Required permissions: - - MuteChannel - operationId: MuteChannel - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MuteChannelRequest' + Retrieves a poll option + operationId: GetPollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: path + name: option_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MuteChannelResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -13870,32 +15683,40 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mute channel + summary: Get poll option tags: - - Channels - /api/v2/chat/moderation/unmute: + - Polls + /api/v2/chat/polls/{poll_id}/votes: post: description: | - Unmutes previously muted user - - Sends events: - - user.unmuted - - Required permissions: - - MuteUser - operationId: UnmuteUser + Queries votes + operationId: QueryPollVotes + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UnmuteUserRequest' + $ref: '#/components/schemas/QueryPollVotesRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UnmuteResponse' + $ref: '#/components/schemas/PollVotesResponse' description: Successful response "400": content: @@ -13909,33 +15730,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unmute user + summary: Query votes tags: - - Users - - Moderation - /api/v2/chat/moderation/unmute/channel: + - Polls + /api/v2/chat/polls/query: post: description: | - Unmutes channel for user - - Sends events: - - channel.unmuted - - Required permissions: - - MuteChannel - operationId: UnmuteChannel + Queries polls + operationId: QueryPolls + parameters: + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UnmuteChannelRequest' + $ref: '#/components/schemas/QueryPollsRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UnmuteResponse' + $ref: '#/components/schemas/QueryPollsResponse' description: Successful response "400": content: @@ -13949,9 +15770,9 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unmute channel + summary: Query polls tags: - - Channels + - Polls /api/v2/chat/query_banned_users: get: description: | diff --git a/openapi/serverside-api.json b/openapi/serverside-api.json index 4ff48fdc..38017705 100644 --- a/openapi/serverside-api.json +++ b/openapi/serverside-api.json @@ -1 +1 @@ -{"components":{"schemas":{"APIError":{"nullable":true,"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNConfigFields":{"properties":{"auth_key":{"type":"string","x-stream-index":"009"},"auth_type":{"type":"string","x-stream-index":"003"},"bundle_id":{"type":"string","x-stream-index":"006"},"development":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"},"host":{"type":"string","x-stream-index":"005"},"key_id":{"type":"string","x-stream-index":"008"},"notification_template":{"type":"string","x-stream-index":"004"},"p12_cert":{"type":"string","x-stream-index":"010"},"team_id":{"type":"string","x-stream-index":"007"}},"required":["enabled","development","notification_template"],"type":"object"},"APNConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"005"},"auth_key":{"type":"string","x-stream-index":"006.001"},"auth_type":{"enum":["certificate","token"],"type":"string","x-stream-index":"001"},"bundle_id":{"type":"string","x-stream-index":"004"},"development":{"type":"boolean","x-stream-index":"002"},"host":{"type":"string","x-stream-index":"003"},"key_id":{"type":"string","x-stream-index":"006.002"},"notification_template":{"type":"string","x-stream-index":"008"},"p12_cert":{"type":"string","x-stream-index":"007.001"},"team_id":{"type":"string","x-stream-index":"006.003"}},"type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"APNSRequest":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"type":"object"},"Action":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"required":["name","text","type"],"type":"object"},"ActionRequest":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"type":"object"},"App":{"properties":{"agora_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.038"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.018"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.016"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.019"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.020"},"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallType"},"type":"object","x-stream-index":"001.006"},"campaign_enabled":{"type":"boolean","x-stream-index":"001.033"},"cdn_expiration_seconds":{"format":"int32","type":"integer","x-stream-index":"001.036"},"channel_configs":{"additionalProperties":{"$ref":"#/components/schemas/ChannelConfig"},"description":"Object with channel configs","title":"Channel configs","type":"object","x-stream-index":"001.005","x-stream-map":{"key":"channel_type"}},"custom_action_handler_url":{"type":"string","x-stream-index":"001.021"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfo","x-stream-index":"001.041"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.010"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.011"},"enforce_unique_usernames":{"type":"string","x-stream-index":"001.022"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.029"},"geofences":{"items":{"$ref":"#/components/schemas/GeofenceResponse"},"type":"array","x-stream-index":"001.040"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.039"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.015"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.017"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.030"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.014"},"name":{"type":"string","x-stream-index":"001.001"},"organization":{"type":"string","x-stream-index":"001.002"},"permission_version":{"type":"string","x-stream-index":"001.012"},"policies":{"additionalProperties":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"type":"object","x-stream-index":"001.007"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationFields","x-stream-index":"001.003"},"reminders_interval":{"format":"int32","type":"integer","x-stream-index":"001.035"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.031"},"sns_key":{"type":"string","x-stream-index":"001.027"},"sns_secret":{"type":"string","x-stream-index":"001.028"},"sns_topic_arn":{"type":"string","x-stream-index":"001.026"},"sqs_key":{"type":"string","x-stream-index":"001.024"},"sqs_secret":{"type":"string","x-stream-index":"001.025"},"sqs_url":{"type":"string","x-stream-index":"001.023"},"suspended":{"type":"boolean","x-stream-index":"001.008"},"suspended_explanation":{"type":"string","x-stream-index":"001.009"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"video_provider":{"type":"string","x-stream-index":"001.037"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.034"},"webhook_url":{"type":"string","x-stream-index":"001.004"}},"required":["name","organization","push_notifications","webhook_url","channel_configs","call_types","policies","suspended","suspended_explanation","disable_auth_checks","disable_permissions_checks","permission_version","user_search_disallowed_roles","multi_tenant_enabled","image_moderation_enabled","async_url_enrich_enabled","custom_action_handler_url","enforce_unique_usernames","sqs_url","sqs_key","sqs_secret","sns_topic_arn","sns_key","sns_secret","file_upload_config","image_upload_config","grants","campaign_enabled","webhook_events","reminders_interval","cdn_expiration_seconds","video_provider"],"type":"object"},"AsyncModerationCallbackConfigRequest":{"properties":{"mode":{"enum":["CALLBACK_MODE_NONE","CALLBACK_MODE_REST","CALLBACK_MODE_TWIRP"],"type":"string","x-stream-index":"002"},"server_url":{"type":"string","x-stream-index":"001"}},"type":"object"},"AsyncModerationConfigurationRequest":{"properties":{"callback":{"$ref":"#/components/schemas/AsyncModerationCallbackConfigRequest","x-stream-index":"002"},"timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"type":"object"},"Attachment":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"019"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"021"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url)","title":"Type","type":"string","x-stream-index":"001"}},"required":["Custom"],"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AttachmentRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"actions":{"items":{"$ref":"#/components/schemas/ActionRequest"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/FieldRequest"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/ImagesRequest","x-stream-index":"019"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"021"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url)","title":"Type","type":"string","x-stream-index":"001"}},"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AudioSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["default_device"],"type":"object"},"AutomodDetails":{"properties":{"action":{"type":"string","x-stream-index":"001"},"image_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"message_details":{"$ref":"#/components/schemas/FlagMessageDetails","x-stream-index":"004"},"original_message_type":{"type":"string","x-stream-index":"002"},"result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"003"}},"type":"object"},"AzureRequest":{"properties":{"abs_account_name":{"type":"string","x-stream-index":"001"},"abs_client_id":{"type":"string","x-stream-index":"003"},"abs_client_secret":{"type":"string","x-stream-index":"004"},"abs_tenant_id":{"type":"string","x-stream-index":"002"}},"required":["abs_account_name","abs_tenant_id","abs_client_id","abs_client_secret"],"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BackstageSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"BanRequest":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserRequest_1","description":"User who issued a ban","title":"Banned by","x-stream-index":"009"},"banned_by_id":{"description":"User ID who issued a ban","title":"Banned by ID","type":"string","x-stream-index":"008"},"id":{"description":"Channel ID to ban user in","title":"ID","type":"string","x-stream-index":"005"},"ip_ban":{"description":"Whether to perform IP ban or not","title":"IP ban","type":"boolean","x-stream-index":"007"},"reason":{"description":"Ban reason","title":"Reason","type":"string","x-stream-index":"003"},"shadow":{"description":"Whether to perform shadow ban or not","title":"Shadow","type":"boolean","x-stream-index":"006"},"target_user_id":{"description":"ID of user to ban","title":"Target user ID","type":"string","x-stream-index":"001"},"timeout":{"description":"Timeout of ban in minutes. User will be unbanned after this period of time","title":"Timeout","type":"integer","x-stream-index":"002"},"type":{"description":"Channel type to ban user in","title":"Type","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"010.002"},"user_id":{"type":"string","x-stream-index":"010.001"}},"required":["target_user_id"],"type":"object"},"BanResponse":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"expires":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"required":["created_at"],"type":"object"},"BlockList":{"description":"Block list contains restricted words","nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"name":{"description":"Block list name","title":"Name","type":"string","x-stream-index":"006"},"type":{"description":"Block list type.","title":"Type","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"},"words":{"description":"List of words to block","items":{"type":"string"},"title":"Words","type":"array","x-stream-index":"008"}},"required":["name","type","words"],"title":"Block list","type":"object","x-stream-docs-page-id":"block_lists"},"BlockListOptions":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"required":["blocklist","behavior"],"type":"object"},"BlockListOptionsRequest":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"type":"object"},"BlockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to block","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"BlockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"BroadcastSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettings","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"BroadcastSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsRequest","x-stream-index":"002"}},"type":"object"},"BroadcastSettingsResponse":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsResponse","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"CallEvent":{"nullable":true,"properties":{"description":{"type":"string","x-stream-index":"003"},"severity":{"format":"int32","type":"integer","x-stream-index":"002"},"timestamp":{"format":"int32","type":"integer","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"004"}},"required":["timestamp","severity","description","type"],"type":"object"},"CallIngressResponse":{"properties":{"rtmp":{"$ref":"#/components/schemas/RTMPIngress","x-stream-index":"001"}},"required":["rtmp"],"title":"Call inputs","type":"object"},"CallParticipantResponse":{"properties":{"joined_at":{"format":"date-time","type":"string","x-stream-index":"004"},"role":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_session_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_session_id","role","joined_at"],"type":"object"},"CallRecording":{"description":"CallRecording represents a recording of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the recording.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the recording.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the recording.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the recording.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallRequest":{"properties":{"created_by":{"$ref":"#/components/schemas/UserRequest_1","title":"The user that create this call","x-stream-index":"002"},"created_by_id":{"title":"The id of the user that create this call","type":"string","x-stream-index":"003"},"custom":{"type":"object","x-stream-index":"004"},"members":{"items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"type":"array","x-stream-index":"005"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"006"},"starts_at":{"format":"date-time","type":"string","x-stream-index":"007"},"team":{"type":"string","x-stream-index":"001"}},"type":"object"},"CallResponse":{"description":"Represents a call","properties":{"backstage":{"type":"boolean","x-stream-index":"015"},"blocked_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"017"},"cid":{"description":"The unique identifier for a call (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"004"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserResponse","description":"The user that created the call","title":"Created By","x-stream-index":"007"},"current_session_id":{"type":"string","x-stream-index":"005"},"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"008"},"egress":{"$ref":"#/components/schemas/EgressResponse","x-stream-index":"020"},"ended_at":{"description":"Date/time when the call ended","format":"date-time","title":"Ended At","type":"string","x-stream-index":"013"},"id":{"description":"Call ID","title":"ID","type":"string","x-stream-index":"003"},"ingress":{"$ref":"#/components/schemas/CallIngressResponse","x-stream-index":"018"},"recording":{"type":"boolean","x-stream-index":"011"},"session":{"$ref":"#/components/schemas/CallSessionResponse","x-stream-index":"019"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"016"},"starts_at":{"description":"Date/time when the call will start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"014"},"team":{"type":"string","x-stream-index":"006"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailResponse","x-stream-index":"021"},"transcribing":{"type":"boolean","x-stream-index":"012"},"type":{"description":"The type of call","title":"Type","type":"string","x-stream-index":"002"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"}},"required":["type","id","cid","current_session_id","created_by","custom","created_at","updated_at","recording","transcribing","backstage","settings","blocked_user_ids","ingress","egress"],"title":"Call","type":"object"},"CallSessionResponse":{"properties":{"accepted_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"007"},"ended_at":{"format":"date-time","type":"string","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"live_ended_at":{"format":"date-time","type":"string","x-stream-index":"009"},"live_started_at":{"format":"date-time","type":"string","x-stream-index":"008"},"participants":{"items":{"$ref":"#/components/schemas/CallParticipantResponse"},"type":"array","x-stream-index":"004"},"participants_count_by_role":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"005"},"rejected_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"006"},"started_at":{"format":"date-time","type":"string","x-stream-index":"002"}},"required":["id","participants","participants_count_by_role","rejected_by","accepted_by"],"type":"object"},"CallSettings":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettings","x-stream-index":"006"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"007"},"recording":{"$ref":"#/components/schemas/RecordSettings","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"009"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"004"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"003"}},"type":"object"},"CallSettingsRequest":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettingsRequest","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettingsRequest","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsRequest","x-stream-index":"009"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettingsRequest","x-stream-index":"003"},"recording":{"$ref":"#/components/schemas/RecordSettingsRequest","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettingsRequest","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettingsRequest","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettingsRequest","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettingsRequest","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettingsRequest","x-stream-index":"004"}},"type":"object"},"CallSettingsResponse":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsResponse","x-stream-index":"003"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"004"},"recording":{"$ref":"#/components/schemas/RecordSettingsResponse","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"009"}},"required":["audio","backstage","broadcasting","geofencing","recording","ring","screensharing","transcription","video","thumbnails"],"type":"object"},"CallStateResponseFields":{"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"members":{"description":"List of call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"002"},"membership":{"$ref":"#/components/schemas/MemberResponse","description":"Current user membership object","title":"Membership","x-stream-index":"003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"004"}},"required":["call","members","own_capabilities"],"type":"object"},"CallStatsReportSummaryResponse":{"properties":{"call_cid":{"type":"string","x-stream-index":"001"},"call_session_id":{"type":"string","x-stream-index":"002"},"call_status":{"type":"string","x-stream-index":"004"},"first_stats_time":{"format":"date-time","type":"string","x-stream-index":"003"}},"required":["call_cid","call_session_id","first_stats_time","call_status"],"type":"object"},"CallTimeline":{"properties":{"events":{"items":{"$ref":"#/components/schemas/CallEvent"},"type":"array","x-stream-index":"001"}},"required":["events"],"type":"object"},"CallTranscription":{"description":"CallTranscription represents a transcription of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the transcription.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the transcription.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the transcription.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the transcription.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallType":{"nullable":true,"properties":{"AppPK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"CreatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"005"},"ExternalStorage":{"type":"string","writeOnly":true,"x-stream-index":"009"},"Name":{"type":"string","writeOnly":true,"x-stream-index":"004"},"NotificationSettings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"008"},"PK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"002"},"Settings":{"$ref":"#/components/schemas/CallSettings","x-stream-index":"007"},"UpdatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"006"}},"required":["PK","AppPK","Name","CreatedAt","UpdatedAt","ExternalStorage"],"type":"object"},"CallTypeResponse":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"external_storage":{"type":"string","x-stream-index":"007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at"],"type":"object"},"Channel":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"028"},"auto_translation_language":{"type":"string","x-stream-index":"029"},"cid":{"type":"string","x-stream-index":"003"},"config":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"025"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"026"},"cooldown":{"format":"int32","type":"integer","x-stream-index":"030"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"008"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"disabled":{"type":"boolean","x-stream-index":"017"},"frozen":{"type":"boolean","x-stream-index":"016"},"id":{"type":"string","x-stream-index":"004"},"invites":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"021"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"006"},"member_count":{"format":"int32","type":"integer","x-stream-index":"020"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"019"},"team":{"type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"015"},"type":{"type":"string","x-stream-index":"005"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"}},"required":["cid","id","type","created_at","updated_at","frozen","disabled","Custom","auto_translation_language"],"type":"object"},"ChannelConfig":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.024"},"blocklist":{"type":"string","x-stream-index":"001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.022"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"003"},"connect_events":{"type":"boolean","x-stream-index":"001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.012"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.017"},"message_retention":{"type":"string","x-stream-index":"001.016"},"mutes":{"type":"boolean","x-stream-index":"001.009"},"name":{"type":"string","x-stream-index":"001.001"},"push_notifications":{"type":"boolean","x-stream-index":"001.013"},"quotes":{"type":"boolean","x-stream-index":"001.008"},"reactions":{"type":"boolean","x-stream-index":"001.006"},"read_events":{"type":"boolean","x-stream-index":"001.003"},"reminders":{"type":"boolean","x-stream-index":"001.014"},"replies":{"type":"boolean","x-stream-index":"001.007"},"search":{"type":"boolean","x-stream-index":"001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"002.004"},"uploads":{"type":"boolean","x-stream-index":"001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands"],"type":"object"},"ChannelConfigRequest":{"description":"Channel configuration overrides","properties":{"blocklist":{"type":"string","x-stream-index":"008"},"blocklist_behavior":{"enum":["flag","block"],"type":"string","x-stream-index":"009"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"010","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"max_message_length":{"description":"Overrides max message length","format":"int32","maximum":20000,"title":"Max Message Length","type":"integer","x-stream-index":"007"},"quotes":{"description":"Enables message quotes","title":"Quotes","type":"boolean","x-stream-index":"004"},"reactions":{"description":"Enables or disables reactions","title":"Reactions","type":"boolean","x-stream-index":"002"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"003"},"typing_events":{"description":"Enables or disables typing events","title":"Typing events","type":"boolean","x-stream-index":"001"},"uploads":{"description":"Enables or disables file uploads","title":"Uploads","type":"boolean","x-stream-index":"005"},"url_enrichment":{"description":"Enables or disables URL enrichment","title":"URL Enrichment","type":"boolean","x-stream-index":"006"}},"type":"object"},"ChannelConfigWithInfo":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.002.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.002.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.002.024"},"blocklist":{"type":"string","x-stream-index":"001.002.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.002.022"},"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.001.003"},"custom_events":{"type":"boolean","x-stream-index":"001.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"002","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.002.017"},"message_retention":{"type":"string","x-stream-index":"001.002.016"},"mutes":{"type":"boolean","x-stream-index":"001.002.009"},"name":{"type":"string","x-stream-index":"001.002.001"},"push_notifications":{"type":"boolean","x-stream-index":"001.002.013"},"quotes":{"type":"boolean","x-stream-index":"001.002.008"},"reactions":{"type":"boolean","x-stream-index":"001.002.006"},"read_events":{"type":"boolean","x-stream-index":"001.002.003"},"reminders":{"type":"boolean","x-stream-index":"001.002.014"},"replies":{"type":"boolean","x-stream-index":"001.002.007"},"search":{"type":"boolean","x-stream-index":"001.002.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.001.004"},"uploads":{"type":"boolean","x-stream-index":"001.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.002.011"}},"required":["created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelExportRequest":{"properties":{"cid":{"type":"string","x-stream-index":"003"},"id":{"description":"Channel ID","title":"ID","type":"string","x-stream-index":"002"},"messages_since":{"description":"Date to export messages since","format":"date-time","title":"Messages since","type":"string","x-stream-index":"004"},"messages_until":{"description":"Date to export messages until","format":"date-time","title":"Messages until","type":"string","x-stream-index":"005"},"type":{"description":"Channel type","title":"Type","type":"string","x-stream-index":"001"}},"title":"Channel Export","type":"object"},"ChannelGetOrCreateRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"004"},"hide_for_creator":{"description":"Whether this channel will be hidden for the user who created the channel or not","title":"Hide for creator","type":"boolean","x-stream-index":"008"},"members":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"011"},"messages":{"$ref":"#/components/schemas/MessagePaginationParamsRequest","x-stream-index":"010"},"state":{"description":"Refresh channel state","title":"State","type":"boolean","x-stream-index":"006"},"thread_unread_counts":{"type":"boolean","x-stream-index":"009"},"watchers":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"012"}},"type":"object"},"ChannelMember":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"required":["created_at","updated_at","banned","shadow_banned","channel_role","notifications_muted"],"title":"Channel member","type":"object"},"ChannelMemberRequest":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"title":"Channel member","type":"object"},"ChannelMute":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"007"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"ChannelRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"auto_translation_enabled":{"description":"Enable or disable auto translation","title":"Auto translation","type":"boolean","x-stream-index":"007"},"auto_translation_language":{"description":"Switch auto translation language","title":"Auto translation language","type":"string","x-stream-index":"008"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfigRequest","x-stream-index":"026"},"disabled":{"type":"boolean","x-stream-index":"016"},"frozen":{"description":"Freeze or unfreeze the channel","title":"Frozen","type":"boolean","x-stream-index":"015"},"members":{"items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"type":"array","x-stream-index":"020"},"team":{"description":"Team the channel belongs to (if multi-tenant mode is enabled)","title":"Team","type":"string","x-stream-index":"006"},"truncated_by_id":{"type":"string","x-stream-index":"012"}},"type":"object"},"ChannelResponse":{"description":"Represents channel in chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"029"},"auto_translation_enabled":{"description":"Whether auto translation is enabled or not","title":"Auto translation","type":"boolean","x-stream-index":"021"},"auto_translation_language":{"description":"Language to translate to when auto translation is active","title":"Auto translation language","type":"string","x-stream-index":"022"},"cid":{"description":"Channel CID (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"005"},"config":{"$ref":"#/components/schemas/ChannelConfigWithInfo","description":"Channel configuration","title":"Config","x-stream-index":"017"},"cooldown":{"description":"Cooldown period after sending each message","format":"int32","title":"Cooldown","type":"integer","x-stream-index":"024"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"008"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Creator of the channel","title":"Created by","x-stream-index":"011"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"010"},"disabled":{"type":"boolean","x-stream-index":"013"},"frozen":{"description":"Whether channel is frozen or not","title":"Frozen","type":"boolean","x-stream-index":"012"},"hidden":{"description":"Whether this channel is hidden by current user or not","title":"Hidden","type":"boolean","x-stream-index":"026"},"hide_messages_before":{"description":"Date since when the message history is accessible","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"023"},"id":{"description":"Channel unique ID","title":"ID","type":"string","x-stream-index":"003"},"last_message_at":{"description":"Date of the last message sent","format":"date-time","title":"Last message at","type":"string","x-stream-index":"006"},"member_count":{"description":"Number of members in the channel","format":"int32","title":"Member count","type":"integer","x-stream-index":"015"},"members":{"description":"List of channel members (max 100)","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"014"},"mute_expires_at":{"description":"Date of mute expiration","format":"date-time","title":"Mute expires at","type":"string","x-stream-index":"019"},"muted":{"description":"Whether this channel is muted or not","title":"Muted","type":"boolean","x-stream-index":"018"},"own_capabilities":{"description":"List of channel capabilities of authenticated user","items":{"type":"string"},"title":"Own Capabilities","type":"array","x-stream-index":"025"},"team":{"description":"Team the channel belongs to (multi-tenant only)","title":"Team","type":"string","x-stream-index":"020"},"truncated_at":{"description":"Date of the latest truncation of the channel","format":"date-time","title":"Truncated At","type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"028"},"type":{"description":"Type of the channel","title":"Type","type":"string","x-stream-docs-page-id":"channel_features","x-stream-index":"004"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"009"}},"required":["id","type","cid","frozen","disabled","Custom"],"title":"Channel","type":"object"},"ChannelStateResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"hidden":{"type":"boolean","x-stream-index":"001.010"},"hide_messages_before":{"format":"date-time","type":"string","x-stream-index":"001.011"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"001.007"},"membership":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.008"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.002"},"pending_messages":{"items":{"$ref":"#/components/schemas/PendingMessage"},"type":"array","x-stream-index":"001.012"},"pinned_messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.003"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"001.006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"001.009"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.004"},"watchers":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.005"}},"required":["messages","pinned_messages","members","threads","duration"],"type":"object"},"ChannelStateResponseFields":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"hidden":{"description":"Whether this channel is hidden or not","title":"Hidden","type":"boolean","x-stream-index":"010"},"hide_messages_before":{"description":"Messages before this date are hidden from the user","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"011"},"members":{"description":"List of channel members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"007"},"membership":{"$ref":"#/components/schemas/ChannelMember","description":"Current user membership object","title":"Membership","x-stream-index":"008"},"messages":{"description":"List of channel messages","items":{"$ref":"#/components/schemas/Message"},"title":"Message","type":"array","x-stream-index":"002"},"pending_messages":{"description":"Pending messages that this user has sent","items":{"$ref":"#/components/schemas/PendingMessage"},"title":"Pending messages","type":"array","x-stream-index":"012"},"pinned_messages":{"description":"List of pinned messages in the channel","items":{"$ref":"#/components/schemas/Message"},"title":"Pinned messages","type":"array","x-stream-docs-page-id":"pinned_messages","x-stream-index":"003"},"read":{"description":"List of read states","items":{"$ref":"#/components/schemas/Read"},"title":"Read","type":"array","x-stream-index":"006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"009"},"watcher_count":{"description":"Number of channel watchers","format":"int32","title":"Watcher count","type":"integer","x-stream-index":"004"},"watchers":{"description":"List of user who is watching the channel","items":{"$ref":"#/components/schemas/UserObject"},"title":"Watchers","type":"array","x-stream-index":"005"}},"required":["messages","pinned_messages","members","threads"],"type":"object"},"ChannelTypeConfig":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"003.002.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"003.002.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.002.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"003.002.024"},"blocklist":{"type":"string","x-stream-index":"003.002.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.002.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"003.002.022"},"commands":{"description":"List of commands that channel supports","items":{"$ref":"#/components/schemas/Command"},"title":"Commands","type":"array","x-stream-index":"003.003"},"connect_events":{"type":"boolean","x-stream-index":"003.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.001.003"},"custom_events":{"type":"boolean","x-stream-index":"003.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"mark_messages_pending":{"type":"boolean","x-stream-index":"003.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"003.002.017"},"message_retention":{"type":"string","x-stream-index":"003.002.016"},"mutes":{"type":"boolean","x-stream-index":"003.002.009"},"name":{"type":"string","x-stream-index":"003.002.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"001"},"push_notifications":{"type":"boolean","x-stream-index":"003.002.013"},"quotes":{"type":"boolean","x-stream-index":"003.002.008"},"reactions":{"type":"boolean","x-stream-index":"003.002.006"},"read_events":{"type":"boolean","x-stream-index":"003.002.003"},"reminders":{"type":"boolean","x-stream-index":"003.002.014"},"replies":{"type":"boolean","x-stream-index":"003.002.007"},"search":{"type":"boolean","x-stream-index":"003.002.005"},"typing_events":{"type":"boolean","x-stream-index":"003.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"003.001.004"},"uploads":{"type":"boolean","x-stream-index":"003.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"003.002.011"}},"required":["permissions","grants","created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelsResponse":{"nullable":true,"properties":{"channels":{"description":"List of channels","items":{"$ref":"#/components/schemas/ChannelStateResponseFields"},"title":"Channels","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channels","duration"],"title":"Channels list","type":"object"},"CheckExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"CheckPushRequest":{"nullable":true,"properties":{"apn_template":{"description":"Push message template for APN","title":"APN template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"002"},"firebase_data_template":{"description":"Push message data template for Firebase","title":"Firebase data template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"004"},"firebase_template":{"description":"Push message template for Firebase","title":"Firebase template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"003"},"message_id":{"description":"Message ID to send push notification for","title":"Message ID","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of push provider","title":"Name of push provider","type":"string","x-stream-index":"007"},"push_provider_type":{"description":"Push provider type","enum":["firebase","apn","huawei","xiaomi"],"title":"Type of push provider","type":"string","x-stream-index":"006"},"skip_devices":{"description":"Don't require existing devices to render templates","title":"Skip devices","type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"008.002"},"user_id":{"type":"string","x-stream-index":"008.001"}},"type":"object"},"CheckPushResponse":{"nullable":true,"properties":{"device_errors":{"additionalProperties":{"$ref":"#/components/schemas/DeviceErrorInfo"},"description":"Object with device errors","title":"Device errors","type":"object","x-stream-index":"001","x-stream-map":{"key":"device_id"}},"duration":{"type":"string","x-stream-index":"007.001"},"general_errors":{"description":"List of general errors","items":{"type":"string"},"title":"General errors","type":"array","x-stream-index":"002"},"rendered_apn_template":{"title":"Rendered APN template","type":"string","x-stream-index":"004"},"rendered_firebase_template":{"title":"Rendered Firebase template","type":"string","x-stream-index":"005"},"rendered_message":{"additionalProperties":{"type":"string"},"title":"Rendered message","type":"object","x-stream-index":"006"},"skip_devices":{"description":"Don't require existing devices to render templates","title":"Skip devices","type":"boolean","x-stream-index":"003"}},"required":["duration"],"type":"object"},"CheckSNSRequest":{"nullable":true,"properties":{"sns_key":{"description":"AWS SNS access key","title":"SNS key","type":"string","x-stream-index":"002"},"sns_secret":{"description":"AWS SNS key secret","title":"SNS secret","type":"string","x-stream-index":"003"},"sns_topic_arn":{"description":"AWS SNS topic ARN","title":"SNS Topic ARN","type":"string","x-stream-index":"001"}},"type":"object"},"CheckSNSResponse":{"nullable":true,"properties":{"data":{"description":"Error data","title":"ReadOnlyData","type":"object","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"description":"Error text","title":"Error","type":"string","x-stream-index":"002"},"status":{"description":"Validation result","enum":["ok","error"],"title":"Status","type":"string","x-stream-index":"001"}},"required":["status","duration"],"type":"object"},"CheckSQSRequest":{"nullable":true,"properties":{"sqs_key":{"description":"AWS SQS access key","title":"SQS key","type":"string","x-stream-index":"002"},"sqs_secret":{"description":"AWS SQS key secret","title":"SQS secret","type":"string","x-stream-index":"003"},"sqs_url":{"description":"AWS SQS endpoint URL","title":"SQS URL","type":"string","x-stream-index":"001"}},"type":"object"},"CheckSQSResponse":{"nullable":true,"properties":{"data":{"description":"Error data","title":"ReadOnlyData","type":"object","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"description":"Error text","title":"Error","type":"string","x-stream-index":"002"},"status":{"description":"Validation result","enum":["ok","error"],"title":"Status","type":"string","x-stream-index":"001"}},"required":["status","duration"],"type":"object"},"CollectUserFeedbackRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"009"},"rating":{"format":"int32","maximum":5,"minimum":1,"type":"integer","x-stream-index":"007"},"reason":{"maxLength":1000,"type":"string","x-stream-index":"008"},"sdk":{"maxLength":50,"type":"string","x-stream-index":"005"},"sdk_version":{"maxLength":50,"type":"string","x-stream-index":"006"},"user_session_id":{"maxLength":50,"type":"string","x-stream-index":"004"}},"required":["user_session_id","sdk","sdk_version"],"type":"object"},"CollectUserFeedbackResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Command":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","title":"Arguments","type":"string","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"001"},"description":{"description":"Description, shown in commands auto-completion","title":"Description","type":"string","x-stream-index":"005"},"name":{"description":"Unique command name","title":"Name","type":"string","x-stream-index":"004"},"set":{"description":"Set name used for grouping commands","title":"Set","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"002"}},"required":["name","description","args","set"],"title":"Command","type":"object"},"CommitMessageRequest":{"nullable":true,"type":"object"},"Config":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConfigRequest":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConnectRequest":{"properties":{"device":{"$ref":"#/components/schemas/DeviceFields","x-stream-index":"001.002"},"user_details":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["user_details"],"type":"object"},"Coordinates":{"properties":{"latitude":{"format":"float","type":"number","x-stream-index":"001"},"longitude":{"format":"float","type":"number","x-stream-index":"002"}},"required":["latitude","longitude"],"type":"object"},"CreateBlockListRequest":{"description":"Block list contains restricted words","nullable":true,"properties":{"name":{"description":"Block list name","maxLength":255,"title":"Name","type":"string","x-stream-index":"001"},"type":{"description":"Block list type.","enum":["regex","domain","email","word"],"title":"Type","type":"string","x-stream-index":"003"},"words":{"description":"List of words to block","items":{"type":"string"},"minimum":1,"title":"Words","type":"array","x-stream-index":"002"}},"required":["name","words"],"title":"Block list","type":"object","x-stream-docs-page-id":"block_lists"},"CreateCallTypeRequest":{"nullable":true,"properties":{"external_storage":{"type":"string","x-stream-index":"002.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettingsRequest","x-stream-index":"002.002"},"settings":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"002.003"}},"required":["name"],"type":"object"},"CreateCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"CreateChannelTypeRequest":{"nullable":true,"properties":{"automod":{"description":"Enables automatic message moderation","enum":["disabled","simple","AI"],"title":"Auto moderation","type":"string","x-stream-index":"016"},"automod_behavior":{"description":"Sets behavior of automatic moderation","enum":["flag","block"],"title":"Auto moderation behavior","type":"string","x-stream-index":"017"},"blocklist":{"description":"Name of the blocklist to use","title":"Blocklist","type":"string","x-stream-index":"021"},"blocklist_behavior":{"description":"Sets behavior of blocklist","enum":["flag","block","shadow_block"],"title":"Blocklist behavior","type":"string","x-stream-index":"022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptionsRequest"},"type":"array","x-stream-index":"023"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"018"},"connect_events":{"description":"Connect events support","title":"Connect events","type":"boolean","x-stream-index":"004"},"custom_events":{"description":"Enables custom events","title":"Custom events","type":"boolean","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"020"},"mark_messages_pending":{"description":"Marks messages as pending by default","title":"Mark messages pending","type":"boolean","x-stream-index":"013"},"max_message_length":{"description":"Number of maximum message characters","format":"int32","title":"Maximum message length","type":"integer","x-stream-index":"015"},"mutes":{"description":"Enables mutes","title":"Mutes","type":"boolean","x-stream-index":"008"},"name":{"description":"Channel type name","title":"Name","type":"string","x-stream-index":"001"},"permissions":{"description":"List of permissions for the channel type","items":{"$ref":"#/components/schemas/PolicyRequest_1"},"title":"Permissions","type":"array","x-stream-index":"019"},"push_notifications":{"description":"Enables push notifications","title":"Push notifications","type":"boolean","x-stream-index":"012"},"reactions":{"description":"Enables message reactions","title":"Reactions","type":"boolean","x-stream-index":"005"},"read_events":{"description":"Read events support","title":"Read events","type":"boolean","x-stream-index":"003"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"006"},"search":{"description":"Enables message search","title":"Search","type":"boolean","x-stream-index":"007"},"typing_events":{"description":"Typing events support","title":"Typing events","type":"boolean","x-stream-index":"002"},"uploads":{"description":"Enables file uploads","title":"Uploads","type":"boolean","x-stream-index":"009"},"url_enrichment":{"description":"Enables URL enrichment","title":"URL enrichment","type":"boolean","x-stream-index":"010"}},"required":["name","automod"],"type":"object"},"CreateChannelTypeResponse":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.001.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.001.024"},"blocklist":{"type":"string","x-stream-index":"001.001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.001.022"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.001.012"},"duration":{"type":"string","x-stream-index":"004.001"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"003"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.001.017"},"message_retention":{"type":"string","x-stream-index":"001.001.016"},"mutes":{"type":"boolean","x-stream-index":"001.001.009"},"name":{"type":"string","x-stream-index":"001.001.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"002"},"push_notifications":{"type":"boolean","x-stream-index":"001.001.013"},"quotes":{"type":"boolean","x-stream-index":"001.001.008"},"reactions":{"type":"boolean","x-stream-index":"001.001.006"},"read_events":{"type":"boolean","x-stream-index":"001.001.003"},"reminders":{"type":"boolean","x-stream-index":"001.001.014"},"replies":{"type":"boolean","x-stream-index":"001.001.007"},"search":{"type":"boolean","x-stream-index":"001.001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.002.004"},"uploads":{"type":"boolean","x-stream-index":"001.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands","permissions","grants","duration"],"type":"object"},"CreateCommandRequest":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","maxLength":255,"title":"Arguments","type":"string","x-stream-index":"003"},"description":{"description":"Description, shown in commands auto-completion","maxLength":255,"title":"Description","type":"string","x-stream-index":"002"},"name":{"description":"Unique command name","maxLength":255,"minLength":1,"title":"Name","type":"string","x-stream-index":"001"},"set":{"description":"Set name used for grouping commands","maxLength":255,"title":"Set","type":"string","x-stream-index":"004"}},"required":["name","description"],"title":"Command","type":"object"},"CreateCommandResponse":{"nullable":true,"properties":{"command":{"$ref":"#/components/schemas/Command","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreateExternalStorageRequest":{"nullable":true,"properties":{"aws_s3":{"$ref":"#/components/schemas/S3Request","x-stream-index":"003.004"},"azure_blob":{"$ref":"#/components/schemas/AzureRequest","x-stream-index":"003.006"},"bucket":{"type":"string","x-stream-index":"003.002"},"gcs_credentials":{"type":"string","x-stream-index":"003.005"},"name":{"type":"string","x-stream-index":"001"},"path":{"type":"string","x-stream-index":"003.003"},"storage_type":{"type":"string","x-stream-index":"003.001"}},"required":["name","storage_type","bucket"],"type":"object"},"CreateExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"CreateImportRequest":{"nullable":true,"properties":{"mode":{"enum":["insert","upsert"],"type":"string","x-stream-index":"002"},"path":{"type":"string","x-stream-index":"001"}},"required":["path"],"type":"object"},"CreateImportResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_task":{"$ref":"#/components/schemas/ImportTask","x-stream-index":"001"}},"required":["duration"],"type":"object"},"CreateImportURLRequest":{"nullable":true,"properties":{"filename":{"type":"string","x-stream-index":"001"}},"type":"object"},"CreateImportURLResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"path":{"type":"string","x-stream-index":"001"},"upload_url":{"type":"string","x-stream-index":"002"}},"required":["path","upload_url","duration"],"type":"object"},"CreateRoleRequest":{"nullable":true,"properties":{"name":{"description":"Role name","maxLength":64,"title":"Name","type":"string","x-stream-index":"001"}},"required":["name"],"type":"object"},"CreateRoleResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"role":{"$ref":"#/components/schemas/Role","x-stream-index":"002"}},"required":["duration","role"],"type":"object"},"DataDogInfo":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"required":["api_key","site","enabled"],"type":"object"},"DataDogInfoRequest":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"type":"object"},"DeactivateUserRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who deactivated the user","title":"Created by ID","type":"string","x-stream-index":"003"},"mark_messages_deleted":{"description":"Makes messages appear to be deleted","title":"Mark messages deleted","type":"boolean","x-stream-index":"002"},"user_id":{"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"DeactivateUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["duration"],"type":"object"},"DeactivateUsersRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who deactivated the users","title":"Created by ID","type":"string","x-stream-index":"003"},"mark_messages_deleted":{"description":"Makes messages appear to be deleted","title":"Mark messages deleted","type":"boolean","x-stream-index":"002"},"user_ids":{"description":"User IDs to deactivate","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"DeactivateUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"DeleteChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteChannelsRequest":{"nullable":true,"properties":{"cids":{"description":"All channels that should be deleted","items":{"type":"string"},"maximum":100,"minimum":1,"title":"Channels CID","type":"array","x-stream-index":"001"},"hard_delete":{"description":"Specify if channels and all ressources should be hard deleted","title":"Hard delete","type":"boolean","x-stream-index":"002"}},"type":"object"},"DeleteChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"result":{"additionalProperties":{"$ref":"#/components/schemas/DeleteChannelsResult"},"type":"object","x-stream-index":"001"},"task_id":{"type":"string","x-stream-index":"002"}},"required":["duration"],"type":"object"},"DeleteChannelsResult":{"nullable":true,"properties":{"error":{"type":"string","x-stream-index":"003"},"status":{"type":"string","x-stream-index":"002"}},"required":["status"],"type":"object"},"DeleteCommandResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001"}},"required":["name","duration"],"type":"object"},"DeleteExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteUsersRequest":{"nullable":true,"properties":{"calls":{"enum":["soft","hard"],"type":"string","x-stream-index":"001.002.004"},"conversations":{"description":"Conversation channels delete mode.\nConversation channel is any channel which only has two members one of which is the user being deleted.\n\n* null or empty string - doesn't delete any conversation channels\n* soft - marks all conversation channels as deleted (same effect as Delete Channels with 'hard' option disabled)\n* hard - deletes channel and all its data completely including messages (same effect as Delete Channels with 'hard' option enabled)\n","enum":["soft","hard"],"title":"Delete Conversations","type":"string","x-stream-index":"001.002.003"},"messages":{"description":"Message delete mode.\n\n* null or empty string - doesn't delete user messages\n* soft - marks all user messages as deleted without removing any related message data\n* pruning - marks all user messages as deleted, nullifies message information and removes some message data such as reactions and flags\n* hard - deletes messages completely with all related information\n","enum":["soft","pruning","hard"],"title":"Delete Messages","type":"string","x-stream-index":"001.002.002"},"new_call_owner_id":{"type":"string","x-stream-index":"001.002.006"},"new_channel_owner_id":{"type":"string","x-stream-index":"001.002.005"},"user":{"description":"User delete mode.\n\n* soft - marks user as deleted and retains all user data\n* pruning - marks user as deleted and nullifies user information\n* hard - deletes user completely. Requires 'hard' option for messages and conversations as well\n","enum":["soft","pruning","hard"],"title":"Delete User","type":"string","x-stream-index":"001.002.001"},"user_ids":{"description":"IDs of users to delete","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001.001"}},"required":["user_ids"],"type":"object"},"DeleteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"Device":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"disabled":{"description":"Whether device is disabled or not","title":"Disabled","type":"boolean","x-stream-index":"005"},"disabled_reason":{"description":"Reason explaining why device had been disabled","title":"Reason","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"003"},"push_provider":{"type":"string","x-stream-index":"001"},"push_provider_name":{"type":"string","x-stream-index":"002"},"voip":{"description":"When true the token is for Apple VoIP push notifications","title":"Voip","type":"boolean","x-stream-index":"007"}},"required":["push_provider","id","created_at"],"title":"Device","type":"object"},"DeviceErrorInfo":{"properties":{"error_message":{"type":"string","x-stream-index":"003"},"provider":{"type":"string","x-stream-index":"001"},"provider_name":{"type":"string","x-stream-index":"002"}},"required":["provider","provider_name","error_message"],"type":"object"},"DeviceFields":{"properties":{"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"003"},"voip":{"type":"boolean","x-stream-index":"005"}},"required":["push_provider","id"],"type":"object"},"EdgeResponse":{"properties":{"continent_code":{"type":"string","x-stream-index":"007.003"},"country_iso_code":{"type":"string","x-stream-index":"007.002"},"green":{"format":"int32","type":"integer","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"latency_test_url":{"type":"string","x-stream-index":"002"},"latitude":{"format":"float","type":"number","x-stream-index":"006.001"},"longitude":{"format":"float","type":"number","x-stream-index":"006.002"},"red":{"format":"int32","type":"integer","x-stream-index":"005"},"subdivision_iso_code":{"type":"string","x-stream-index":"007.001"},"yellow":{"format":"int32","type":"integer","x-stream-index":"004"}},"required":["id","latency_test_url","green","yellow","red","latitude","longitude","subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"EgressHLSResponse":{"properties":{"playlist_url":{"type":"string","x-stream-index":"001"}},"required":["playlist_url"],"type":"object"},"EgressRTMPResponse":{"properties":{"name":{"type":"string","x-stream-index":"001"},"stream_key":{"type":"string","x-stream-index":"003"},"url":{"type":"string","x-stream-index":"002"}},"required":["name","url","stream_key"],"type":"object"},"EgressResponse":{"properties":{"broadcasting":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/EgressHLSResponse","x-stream-index":"002"},"rtmps":{"items":{"$ref":"#/components/schemas/EgressRTMPResponse"},"type":"array","x-stream-index":"003"}},"required":["broadcasting","rtmps"],"type":"object"},"EndCallRequest":{"nullable":true,"type":"object"},"EndCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ErrorResult":{"properties":{"stacktrace":{"type":"string","x-stream-index":"003"},"type":{"type":"string","x-stream-index":"001"},"version":{"type":"string","x-stream-index":"004"}},"required":["type","description"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventNotificationSettingsRequest":{"properties":{"apns":{"$ref":"#/components/schemas/APNSRequest","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"EventRequest":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["type"],"type":"object"},"EventResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/WSEvent","x-stream-index":"001"}},"required":["event","duration"],"type":"object"},"ExportChannelsRequest":{"nullable":true,"properties":{"channels":{"description":"Export options for channels","items":{"$ref":"#/components/schemas/ChannelExportRequest"},"maximum":25,"minimum":1,"title":"Channels","type":"array","x-stream-index":"002.001"},"clear_deleted_message_text":{"description":"Set if deleted message text should be cleared","title":"Clear deleted message text","type":"boolean","x-stream-index":"002.002"},"export_users":{"type":"boolean","x-stream-index":"002.004"},"include_truncated_messages":{"description":"Set if you want to include truncated messages","title":"Include truncated messages","type":"boolean","x-stream-index":"002.003"},"version":{"type":"string","x-stream-index":"001"}},"type":"object"},"ExportChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"ExportChannelsResult":{"properties":{"path":{"description":"S3 path of result","title":"PathPrefix","type":"string","x-stream-index":"002"},"s3_bucket_name":{"description":"S3 bucket name result","title":"S3 bucket name","type":"string","x-stream-index":"003"},"url":{"description":"URL of result","title":"URL","type":"string","x-stream-index":"001"}},"required":["url"],"type":"object"},"ExportUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["duration"],"type":"object"},"ExportUsersRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":25,"minimum":1,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"ExportUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"ExternalStorageResponse":{"properties":{"bucket":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"path":{"type":"string","x-stream-index":"004"},"type":{"type":"string","x-stream-index":"002"}},"required":["name","type","bucket","path"],"type":"object"},"Field":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"required":["title","value","short"],"type":"object"},"FieldRequest":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"type":"object"},"FileDeleteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"FileUploadConfig":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"required":["allowed_file_extensions","blocked_file_extensions","allowed_mime_types","blocked_mime_types","size_limit"],"type":"object"},"FileUploadConfigRequest":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"type":"object"},"FileUploadRequest":{"nullable":true,"properties":{"file":{"description":"file field","title":"File","type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","description":"user for the request **server side only**","title":"User","x-stream-index":"003"}},"type":"object"},"FileUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"003"}},"required":["duration"],"type":"object"},"FirebaseConfigFields":{"properties":{"apn_template":{"type":"string","x-stream-index":"004"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"003"},"enabled":{"type":"boolean","x-stream-index":"001"},"notification_template":{"type":"string","x-stream-index":"002"},"server_key":{"type":"string","x-stream-index":"005"}},"required":["enabled","notification_template","data_template","apn_template"],"type":"object"},"FirebaseConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"001"},"apn_template":{"type":"string","x-stream-index":"005"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"004"},"notification_template":{"type":"string","x-stream-index":"003"},"server_key":{"type":"string","x-stream-index":"002"}},"type":"object"},"Flag":{"description":"Contains information about flagged user or message","properties":{"approved_at":{"description":"Date of the approval","format":"date-time","title":"Approved at","type":"string","x-stream-index":"015"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"created_by_automod":{"type":"boolean","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"022"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"021"},"reason":{"type":"string","x-stream-index":"020"},"rejected_at":{"description":"Date of the rejection","format":"date-time","title":"Rejected at","type":"string","x-stream-index":"016"},"reviewed_at":{"description":"Date of the review","format":"date-time","title":"Reviewed at","type":"string","x-stream-index":"013"},"target_message":{"$ref":"#/components/schemas/Message","x-stream-index":"008"},"target_message_id":{"description":"ID of flagged message","title":"Target Message ID","type":"string","x-stream-index":"007"},"target_user":{"$ref":"#/components/schemas/UserObject","description":"Flagged user","title":"User","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","description":"User who flagged a message or a user","title":"User","x-stream-index":"006"}},"required":["created_by_automod","created_at","updated_at"],"title":"Flag","type":"object"},"FlagDetails":{"properties":{"Extra":{"type":"object","writeOnly":true,"x-stream-index":"002"},"automod":{"$ref":"#/components/schemas/AutomodDetails","x-stream-index":"001"},"original_text":{"type":"string","x-stream-index":"003"}},"required":["Extra","original_text"],"type":"object"},"FlagFeedback":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"labels":{"items":{"$ref":"#/components/schemas/Label"},"type":"array","x-stream-index":"006"},"message_id":{"type":"string","x-stream-index":"004"}},"required":["message_id","created_at","labels"],"type":"object"},"FlagMessageDetails":{"properties":{"pin_changed":{"type":"boolean","x-stream-index":"002"},"should_enrich":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"004"},"updated_by_id":{"type":"string","x-stream-index":"001"}},"type":"object"},"FlagRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"004"},"reason":{"maxLength":255,"type":"string","x-stream-index":"003"},"target_message_id":{"description":"ID of the message when reporting a message","title":"Target Message ID","type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"}},"type":"object"},"FlagResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flag":{"$ref":"#/components/schemas/Flag","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GeofenceResponse":{"nullable":true,"properties":{"country_codes":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"}},"required":["name"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GeofenceSettingsRequest":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"type":"object"},"GetApplicationResponse":{"nullable":true,"properties":{"app":{"$ref":"#/components/schemas/App","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["app","duration"],"type":"object"},"GetBlockListResponse":{"nullable":true,"properties":{"blocklist":{"$ref":"#/components/schemas/BlockList","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"GetCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"type":"object"},"GetCallStatsResponse":{"nullable":true,"properties":{"average_jitter":{"format":"float","type":"number","x-stream-index":"005"},"average_latency":{"format":"float","type":"number","x-stream-index":"004"},"call_duration_seconds":{"format":"int64","type":"integer","x-stream-index":"002"},"call_timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"012"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"max_participants":{"format":"int32","type":"integer","x-stream-index":"006"},"participant_report":{"additionalProperties":{"$ref":"#/components/schemas/UserStats"},"type":"object","x-stream-index":"013"},"publishing_participants":{"format":"int32","type":"integer","x-stream-index":"007"},"quality_score":{"format":"int32","type":"integer","x-stream-index":"003"},"sfu_count":{"format":"int32","type":"integer","x-stream-index":"008"},"sfus":{"items":{"$ref":"#/components/schemas/SFULocationResponse"},"type":"array","x-stream-index":"011"},"total_freezes_duration":{"format":"float","type":"number","x-stream-index":"010"},"total_quality_limitation_duration":{"format":"float","type":"number","x-stream-index":"009"}},"required":["duration","call_duration_seconds","quality_score","average_latency","average_jitter","max_participants","publishing_participants","sfu_count","total_quality_limitation_duration","total_freezes_duration","sfus","participant_report"],"type":"object"},"GetCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"GetCommandResponse":{"nullable":true,"properties":{"args":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.001"},"description":{"type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001.004"},"set":{"type":"string","x-stream-index":"001.007"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.002"}},"required":["name","description","args","set","duration"],"type":"object"},"GetCustomPermissionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"permission":{"$ref":"#/components/schemas/Permission","x-stream-index":"001"}},"required":["permission","duration"],"type":"object"},"GetEdgesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"edges":{"items":{"$ref":"#/components/schemas/EdgeResponse"},"type":"array","x-stream-index":"001"}},"required":["edges","duration"],"type":"object"},"GetExportChannelsStatusResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"001.007.001"},"error":{"$ref":"#/components/schemas/ErrorResult","description":"Contains task error in case of failure","title":"Error","x-stream-index":"003"},"result":{"$ref":"#/components/schemas/ExportChannelsResult","description":"Contains task result in case of success","title":"Result","x-stream-index":"002"},"status":{"type":"string","x-stream-index":"001.002"},"task_id":{"type":"string","x-stream-index":"001.001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.004"}},"required":["task_id","status","created_at","updated_at","duration"],"type":"object"},"GetImportResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_task":{"$ref":"#/components/schemas/ImportTask","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GetManyMessagesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetOGResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.018"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"001.015"},"asset_url":{"description":"URL of detected video or audio","title":"Image URL","type":"string","x-stream-index":"001.017"},"author_icon":{"type":"string","x-stream-index":"001.007"},"author_link":{"description":"og:site","title":"Author Link","type":"string","x-stream-index":"001.006"},"author_name":{"description":"og:site_name","title":"Author Name","type":"string","x-stream-index":"001.005"},"color":{"type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"002.001"},"fallback":{"type":"string","x-stream-index":"001.002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"001.016"},"footer":{"type":"string","x-stream-index":"001.013"},"footer_icon":{"type":"string","x-stream-index":"001.014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"001.019"},"image_url":{"description":"URL of detected image","title":"Image URL","type":"string","x-stream-index":"001.011"},"og_scrape_url":{"description":"extracted url from the text","title":"OG Scrape URL","type":"string","x-stream-index":"001.020"},"original_height":{"format":"int32","type":"integer","x-stream-index":"001.022"},"original_width":{"format":"int32","type":"integer","x-stream-index":"001.021"},"pretext":{"type":"string","x-stream-index":"001.004"},"text":{"description":"og:description","title":"Text","type":"string","x-stream-index":"001.010"},"thumb_url":{"description":"URL of detected thumb image","title":"Image URL","type":"string","x-stream-index":"001.012"},"title":{"description":"og:title","title":"Title","type":"string","x-stream-index":"001.008"},"title_link":{"description":"og:url","title":"Title Link","type":"string","x-stream-index":"001.009"},"type":{"description":"Attachment type, could be empty, image, audio or video","title":"Type","type":"string","x-stream-index":"001.001"}},"required":["Custom","duration"],"title":"Get OG Attachment","type":"object","x-stream-docs-page-id":"og"},"GetOrCreateCallRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/CallRequest","title":"ReadOnlyData","x-stream-index":"003"},"members_limit":{"format":"int32","maximum":100,"type":"integer","x-stream-index":"006"},"notify":{"description":"if provided it sends a notification event to the members for this call","title":"Notify","type":"boolean","x-stream-index":"005"},"ring":{"description":"if provided it sends a ring event to the members for this call","title":"Ring","type":"boolean","x-stream-index":"004"}},"type":"object"},"GetOrCreateCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"type":"boolean","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","created","duration"],"type":"object"},"GetRateLimitsResponse":{"nullable":true,"properties":{"android":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the Android platform","title":"Android","type":"object","x-stream-index":"002","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"duration":{"type":"string","x-stream-index":"005.001"},"ios":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the iOS platform","title":"iOS","type":"object","x-stream-index":"003","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"server_side":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the server-side platform","title":"Server-side","type":"object","x-stream-index":"001","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"web":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the web platform","title":"Web","type":"object","x-stream-index":"004","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}}},"required":["duration"],"title":"Get Rate Limits Response","type":"object","x-stream-docs-page-id":"rate_limits"},"GetReactionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"reactions":{"description":"List of reactions","items":{"$ref":"#/components/schemas/Reaction"},"title":"Reactions","type":"array","x-stream-index":"001"}},"required":["reactions","duration"],"type":"object"},"GetRepliesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetTaskResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"$ref":"#/components/schemas/ErrorResult","description":"Error produced by task","title":"Error","x-stream-index":"003"},"result":{"description":"Result produced by task after completion","title":"Result","type":"object","x-stream-index":"002"},"status":{"description":"Current status of task","title":"Status","type":"string","x-stream-index":"001.002"},"task_id":{"description":"ID of task","title":"Task ID","type":"string","x-stream-index":"001.001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.004"}},"required":["task_id","status","created_at","updated_at","duration"],"title":"Get Task Response","type":"object","x-stream-docs-page-id":"tasks"},"GetThreadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadStateResponse","description":"Enriched thread state","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"GoLiveRequest":{"nullable":true,"properties":{"recording_storage_name":{"type":"string","x-stream-index":"005"},"start_hls":{"type":"boolean","x-stream-index":"003"},"start_recording":{"type":"boolean","x-stream-index":"004"},"start_transcription":{"type":"boolean","x-stream-index":"007"},"transcription_storage_name":{"type":"string","x-stream-index":"006"}},"type":"object"},"GoLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"GuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"GuestResponse":{"nullable":true,"properties":{"access_token":{"description":"Authentication token to use for guest user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","description":"Created user object","title":"User","x-stream-index":"001"}},"required":["access_token","duration"],"type":"object"},"HLSSettings":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks"],"type":"object"},"HLSSettingsRequest":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettingsRequest","title":"LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"maximum":3,"minimum":1,"type":"array","x-stream-index":"003"}},"type":"object"},"HLSSettingsResponse":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","title":"Layout","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks","layout"],"type":"object"},"HideChannelRequest":{"nullable":true,"properties":{"clear_history":{"description":"Whether to clear message history of the channel or not","title":"Clear history","type":"boolean","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"type":"object"},"HideChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"HuaweiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"id":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"HuaweiConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"secret":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageData":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"required":["url","width","height","size","frames"],"type":"object"},"ImageDataRequest":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageSize":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"required":["crop","resize","height","width"],"title":"Image size configuration","type":"object"},"ImageSizeRequest":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"title":"Image size configuration","type":"object"},"ImageUploadRequest":{"nullable":true,"properties":{"file":{"type":"string","x-stream-index":"001.002"},"upload_sizes":{"description":"field with JSON-encoded array of image size configurations","items":{"$ref":"#/components/schemas/ImageSizeRequest"},"title":"Upload sizes","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","x-stream-index":"001.003"}},"type":"object"},"ImageUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"001.002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"001.003"},"upload_sizes":{"items":{"$ref":"#/components/schemas/ImageSize"},"type":"array","x-stream-index":"002"}},"required":["duration"],"type":"object"},"Images":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageData","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageData","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageData","x-stream-index":"001"}},"required":["original","fixed_height","fixed_height_still","fixed_height_downsampled","fixed_width","fixed_width_still","fixed_width_downsampled"],"type":"object"},"ImagesRequest":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"001"}},"type":"object"},"ImportTask":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"history":{"items":{"$ref":"#/components/schemas/ImportTaskHistory"},"type":"array","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"003"},"mode":{"type":"string","x-stream-index":"006"},"path":{"type":"string","x-stream-index":"005"},"size":{"format":"int64","type":"integer","x-stream-index":"007"},"state":{"type":"string","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["id","path","mode","state","history","created_at","updated_at"],"type":"object"},"ImportTaskHistory":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"next_state":{"type":"string","x-stream-index":"006"},"prev_state":{"type":"string","x-stream-index":"005"}},"required":["prev_state","next_state","created_at"],"type":"object"},"Label":{"properties":{"harm_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"phrase_list_ids":{"items":{"format":"int32","type":"integer"},"type":"array","x-stream-index":"002"}},"required":["name"],"type":"object"},"LabelThresholds":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LabelThresholdsRequest":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"LayoutSettingsRequest":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name"],"type":"object"},"LimitInfo":{"properties":{"limit":{"description":"The maximum number of calls allowed for the time window","format":"int32","title":"Limit","type":"integer","x-stream-index":"001"},"remaining":{"description":"The number of remaining calls in the current window","format":"int64","title":"Remaining","type":"integer","x-stream-index":"002"},"reset":{"description":"The Unix timestamp of the next window","format":"int64","title":"Reset","type":"integer","x-stream-index":"003"}},"required":["limit","remaining","reset"],"title":"Rate Limit info","type":"object","x-stream-docs-page-id":"rate_limits"},"ListBlockListResponse":{"nullable":true,"properties":{"blocklists":{"items":{"$ref":"#/components/schemas/BlockList"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["blocklists","duration"],"type":"object"},"ListCallTypeResponse":{"nullable":true,"properties":{"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallTypeResponse"},"type":"object","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["call_types","duration"],"type":"object"},"ListChannelTypesResponse":{"nullable":true,"properties":{"channel_types":{"additionalProperties":{"$ref":"#/components/schemas/ChannelTypeConfig"},"description":"Object with all channel types","title":"Channel types","type":"object","x-stream-index":"001","x-stream-map":{"key":"channel_type","title":"Channel type","description":"Channel type config object"}},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channel_types","duration"],"type":"object"},"ListCommandsResponse":{"nullable":true,"properties":{"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["commands","duration"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"external_storages":{"additionalProperties":{"$ref":"#/components/schemas/ExternalStorageResponse"},"type":"object","x-stream-index":"002"}},"required":["duration","external_storages"],"type":"object"},"ListImportsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_tasks":{"items":{"$ref":"#/components/schemas/ImportTask"},"type":"array","x-stream-index":"001"}},"required":["import_tasks","duration"],"type":"object"},"ListPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"permissions":{"items":{"$ref":"#/components/schemas/Permission"},"type":"array","x-stream-index":"001"}},"required":["permissions","duration"],"type":"object"},"ListPushProvidersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"push_providers":{"items":{"$ref":"#/components/schemas/PushProviderResponse"},"type":"array","x-stream-index":"001"}},"required":["push_providers","duration"],"type":"object"},"ListRecordingsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"recordings":{"items":{"$ref":"#/components/schemas/CallRecording"},"type":"array","x-stream-index":"002"}},"required":["duration","recordings"],"type":"object"},"ListRolesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"roles":{"items":{"$ref":"#/components/schemas/Role"},"type":"array","x-stream-index":"001"}},"required":["roles","duration"],"type":"object"},"ListTranscriptionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"transcriptions":{"items":{"$ref":"#/components/schemas/CallTranscription"},"type":"array","x-stream-index":"002"}},"required":["duration","transcriptions"],"type":"object"},"Location":{"properties":{"continent_code":{"type":"string","x-stream-index":"003"},"country_iso_code":{"type":"string","x-stream-index":"002"},"subdivision_iso_code":{"type":"string","x-stream-index":"001"}},"required":["subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"MarkChannelsReadRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"MarkReadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message that is considered last read by client","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Optional Thread ID to specifically mark a given thread as read","title":"Thread ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"type":"object"},"MarkReadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/MessageReadEvent","description":"Mark read event","title":"Event","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MarkUnreadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message from where the channel is marked unread","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Mark a thread unread, specify both the thread and message id","title":"Thread ID","type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["message_id","thread_id"],"type":"object"},"MemberRequest":{"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"role":{"title":"Role","type":"string","x-stream-index":"002"},"user_id":{"minLength":1,"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"MemberResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"005"},"custom":{"description":"Custom member response data","title":"Custom","type":"object","x-stream-index":"004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"007"},"role":{"title":"Role","type":"string","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_id","custom","created_at","updated_at"],"type":"object"},"MembersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"members":{"description":"List of found members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"001"}},"required":["members","duration"],"type":"object"},"Message":{"description":"Represents any chat message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"031"},"attachments":{"description":"Array of message attachments","items":{"$ref":"#/components/schemas/Attachment"},"title":"Message attachments","type":"array","x-stream-docs-page-id":"message_format#attachment-format","x-stream-index":"011"},"before_message_send_failed":{"description":"Whether `before_message_send webhook` failed or not. Field is only accessible in push webhook","title":"Before Message Send Failed","type":"boolean","x-stream-docs-page-id":"before_message_send_webhook","x-stream-index":"043"},"cid":{"description":"Channel unique identifier in \u003ctype\u003e:\u003cid\u003e format","title":"Channel CID","type":"string","x-stream-index":"026"},"command":{"description":"Contains provided slash command","title":"Command","type":"string","x-stream-docs-page-id":"custom_commands_webhook","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"028"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"021"},"html":{"description":"Contains HTML markup of the message. Can only be set when using server-side API","title":"HTML content","type":"string","x-stream-index":"007"},"i18n":{"additionalProperties":{"type":"string"},"description":"Object with translations. Key `language` contains the original language key. Other keys contain translations","title":"Internationalization info","type":"object","x-stream-docs-page-id":"translation","x-stream-index":"041"},"id":{"description":"Message ID is unique string identifier of the message","title":"ID","type":"string","x-stream-index":"002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Contains image moderation information","title":"Image moderation labels","type":"object","x-stream-index":"037"},"latest_reactions":{"description":"List of 10 latest reactions to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Latest reactions","type":"array","x-stream-index":"012"},"mentioned_users":{"description":"List of mentioned users","items":{"$ref":"#/components/schemas/UserObject"},"title":"Mentioned Users","type":"array","x-stream-index":"040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"049"},"mml":{"description":"Should be empty if `text` is provided. Can only be set when using server-side API","title":"Messaging Markup Language","type":"string","x-stream-docs-page-id":"mml_overview","x-stream-index":"005"},"own_reactions":{"description":"List of 10 latest reactions of authenticated user to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Own reactions","type":"array","x-stream-index":"013"},"parent_id":{"description":"ID of parent message (thread)","title":"Parent message ID","type":"string","x-stream-docs-page-id":"threads","x-stream-index":"017"},"pin_expires":{"description":"Date when pinned message expires","format":"date-time","title":"Pin expiration date","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"048"},"pinned":{"description":"Whether message is pinned or not","title":"Pinned","type":"boolean","x-stream-docs-page-id":"pinned_messages","x-stream-index":"044"},"pinned_at":{"description":"Date when message got pinned","format":"date-time","title":"Pinned at","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","description":"Contains user who pinned the message","title":"Pinned by","x-stream-docs-page-id":"pinned_messages","x-stream-index":"047"},"quoted_message":{"$ref":"#/components/schemas/Message","description":"Contains quoted message","title":"Quoted message","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"023"},"quoted_message_id":{"title":"ID of quoted message","type":"string","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing number of reactions of each type. Key: reaction type (string), value: number of reactions (int)","title":"Reaction counts","type":"object","x-stream-index":"014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing scores of reactions of each type. Key: reaction type (string), value: total score of reactions (int)","title":"Reaction scores","type":"object","x-stream-index":"015"},"reply_count":{"description":"Number of replies to this message","format":"int32","title":"Reply count","type":"integer","x-stream-index":"020"},"shadowed":{"description":"Whether the message was shadowed or not","title":"Shadowed","type":"boolean","x-stream-docs-page-id":"moderation#shadow-ban","x-stream-index":"033"},"show_in_channel":{"description":"Whether thread reply should be shown in the channel as well","title":"Show in channel","type":"boolean","x-stream-docs-page-id":"threads","x-stream-index":"019"},"silent":{"description":"Whether message is silent or not","title":"Silent","type":"boolean","x-stream-index":"042"},"text":{"description":"Text of the message. Should be empty if `mml` is provided","title":"Text","type":"string","x-stream-index":"004"},"thread_participants":{"description":"List of users who participate in thread","items":{"$ref":"#/components/schemas/UserObject"},"title":"Thread participants","type":"array","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"025"},"type":{"description":"Contains type of the message","enum":["regular","ephemeral","error","reply","system","deleted"],"title":"Message Type","type":"string","x-stream-docs-page-id":"message_format#message-types","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"029"},"user":{"$ref":"#/components/schemas/UserObject","description":"Sender of the message. Required when using server-side API","title":"User object","x-stream-index":"010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned"],"title":"Message","type":"object","x-stream-docs-page-id":"send_message"},"MessageActionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"form_data":{"additionalProperties":{"type":"string"},"description":"ReadOnlyData to execute command with","title":"Form data","type":"object","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["form_data"],"type":"object"},"MessageChangeSet":{"properties":{"attachments":{"type":"boolean","x-stream-index":"005"},"custom":{"type":"boolean","x-stream-index":"001"},"html":{"type":"boolean","x-stream-index":"004"},"mentioned_user_ids":{"type":"boolean","x-stream-index":"006"},"mml":{"type":"boolean","x-stream-index":"003"},"pin":{"type":"boolean","x-stream-index":"009"},"quoted_message_id":{"type":"boolean","x-stream-index":"007"},"silent":{"type":"boolean","x-stream-index":"008"},"text":{"type":"boolean","x-stream-index":"002"}},"required":["custom","text","mml","html","attachments","mentioned_user_ids","quoted_message_id","silent","pin"],"type":"object"},"MessageFlag":{"nullable":true,"properties":{"approved_at":{"format":"date-time","type":"string","x-stream-index":"013"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by_automod":{"type":"boolean","x-stream-index":"001"},"custom":{"type":"object","x-stream-index":"008"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"006"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"005"},"moderation_feedback":{"$ref":"#/components/schemas/FlagFeedback","x-stream-index":"003"},"moderation_result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"002"},"reason":{"type":"string","x-stream-index":"007"},"rejected_at":{"format":"date-time","type":"string","x-stream-index":"014"},"reviewed_at":{"format":"date-time","type":"string","x-stream-index":"011"},"reviewed_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004"}},"required":["created_by_automod","created_at","updated_at"],"type":"object"},"MessageModerationResult":{"properties":{"action":{"type":"string","x-stream-index":"004"},"ai_moderation_response":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"009"},"blocked_word":{"type":"string","x-stream-index":"006"},"blocklist_name":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"012"},"message_id":{"type":"string","x-stream-index":"003"},"moderated_by":{"type":"string","x-stream-index":"005"},"moderation_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"013"},"user_bad_karma":{"type":"boolean","x-stream-index":"011"},"user_karma":{"format":"float","type":"number","x-stream-index":"010"}},"required":["message_id","action","user_karma","user_bad_karma","created_at","updated_at"],"type":"object"},"MessagePaginationParamsRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"008"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"007"},"created_at_around":{"format":"date-time","type":"string","x-stream-index":"012"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"010"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"009"},"id_around":{"type":"string","x-stream-index":"011"},"id_gt":{"type":"string","x-stream-index":"004"},"id_gte":{"type":"string","x-stream-index":"003"},"id_lt":{"type":"string","x-stream-index":"006"},"id_lte":{"type":"string","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"MessageReadEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"last_read_message_id":{"type":"string","x-stream-index":"006"},"team":{"type":"string","x-stream-index":"004.001"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"MessageReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageRequest":{"properties":{"attachments":{"items":{"$ref":"#/components/schemas/AttachmentRequest"},"maximum":30,"type":"array","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"007"},"html":{"type":"string","x-stream-index":"010"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"mentioned_users":{"items":{"type":"string"},"maximum":25,"type":"array","x-stream-index":"008"},"mml":{"type":"string","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"005"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"015"},"pinned":{"type":"boolean","x-stream-index":"013"},"pinned_at":{"format":"date-time","nullable":true,"type":"string","x-stream-index":"014"},"quoted_message_id":{"type":"string","x-stream-index":"009"},"show_in_channel":{"type":"boolean","x-stream-index":"006"},"silent":{"type":"boolean","x-stream-index":"012"},"text":{"type":"string","x-stream-index":"002"},"type":{"enum":["''regular","system"],"type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"020.002"},"user_id":{"type":"string","x-stream-index":"020.001"}},"required":["attachments"],"type":"object"},"MessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MessageUpdate":{"properties":{"change_set":{"$ref":"#/components/schemas/MessageChangeSet","x-stream-index":"002"},"old_text":{"type":"string","x-stream-index":"001"}},"type":"object"},"MessageWithPendingMetadataResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"description":"Metadata attached to a message while it is pending","title":"Pending message metadata","type":"object","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ModerationResponse":{"properties":{"action":{"type":"string","x-stream-index":"004"},"explicit":{"format":"float","type":"number","x-stream-index":"002"},"spam":{"format":"float","type":"number","x-stream-index":"003"},"toxic":{"format":"float","type":"number","x-stream-index":"001"}},"required":["toxic","explicit","spam","action","automod_response"],"type":"object"},"MuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["channel_cids"],"type":"object"},"MuteChannelResponse":{"nullable":true,"properties":{"channel_mute":{"$ref":"#/components/schemas/ChannelMute","description":"Object with channel mute (if one channel was muted)","title":"Channel mute","x-stream-index":"001"},"channel_mutes":{"description":"Object with mutes (if multiple channels were muted)","items":{"$ref":"#/components/schemas/ChannelMute"},"title":"Channel mutes","type":"array","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"004.001"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["target_ids"],"type":"object"},"MuteUserResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"mute":{"$ref":"#/components/schemas/UserMute","description":"Object with user mute (if one user was muted)","title":"Mute","x-stream-index":"001"},"mutes":{"description":"Object with mutes (if multiple users were muted)","items":{"$ref":"#/components/schemas/UserMute"},"title":"Mutes","type":"array","x-stream-index":"002"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUsersRequest":{"nullable":true,"properties":{"audio":{"title":"Audio","type":"boolean","x-stream-index":"005"},"mute_all_users":{"type":"boolean","x-stream-index":"003"},"screenshare":{"title":"Screenshare","type":"boolean","x-stream-index":"007"},"screenshare_audio":{"title":"ScreenshareAudio","type":"boolean","x-stream-index":"008"},"user_ids":{"items":{"type":"string"},"title":"UserIDs","type":"array","x-stream-index":"004"},"video":{"title":"Video","type":"boolean","x-stream-index":"006"}},"type":"object"},"MuteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"NotificationSettingsRequest":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"003"}},"type":"object"},"NullBoolRequest":{"properties":{"HasValue":{"type":"boolean","writeOnly":true,"x-stream-index":"002"},"Value":{"type":"boolean","writeOnly":true,"x-stream-index":"001"}},"type":"object"},"NullTimeRequest":{"properties":{"HasValue":{"type":"boolean","writeOnly":true,"x-stream-index":"002"},"Value":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"001"}},"type":"object"},"OnlyUserIDRequest":{"properties":{"id":{"type":"string","x-stream-index":"001"}},"required":["id"],"type":"object"},"OwnCapability":{"description":"All possibility of string to use","enum":["block-users","create-call","create-reaction","end-call","join-backstage","join-call","join-ended-call","mute-users","pin-for-everyone","read-call","remove-call-member","screenshare","send-audio","send-video","start-broadcast-call","start-record-call","start-transcription-call","stop-broadcast-call","stop-record-call","stop-transcription-call","update-call","update-call-member","update-call-permissions","update-call-settings"],"title":"OwnCapability","type":"string"},"OwnUser":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"banned":{"type":"boolean","x-stream-index":"014"},"channel_mutes":{"items":{"$ref":"#/components/schemas/ChannelMute"},"type":"array","x-stream-index":"026"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"deactivated_at":{"format":"date-time","type":"string","x-stream-index":"012"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"type":"array","x-stream-index":"024"},"id":{"type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"type":"string","x-stream-index":"031"},"last_active":{"format":"date-time","type":"string","x-stream-index":"010"},"latest_hidden_channels":{"items":{"type":"string"},"type":"array","x-stream-index":"033"},"mutes":{"items":{"$ref":"#/components/schemas/UserMute"},"type":"array","x-stream-index":"025"},"online":{"type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"role":{"type":"string","x-stream-index":"004"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"032"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"028"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"029"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"027"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"030"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","created_at","updated_at","banned","online","devices","mutes","channel_mutes","unread_count","total_unread_count","unread_channels","unread_threads","language"],"type":"object"},"PaginationParamsRequest":{"properties":{"id_gt":{"format":"int32","type":"integer","x-stream-index":"004"},"id_gte":{"format":"int32","type":"integer","x-stream-index":"003"},"id_lt":{"format":"int32","type":"integer","x-stream-index":"006"},"id_lte":{"format":"int32","type":"integer","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"PendingMessage":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/Channel","x-stream-index":"007"},"message":{"$ref":"#/components/schemas/Message","description":"The message","title":"Message","x-stream-index":"009"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional data attached to the pending message. This data is discarded once the pending message is committed.","title":"Metadata","type":"object","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"type":"object"},"Permission":{"properties":{"action":{"description":"Action name this permission is for (e.g. SendMessage)","title":"Action","type":"string","x-stream-index":"004"},"condition":{"description":"MongoDB style condition which decides whether or not the permission is granted","title":"Condition","type":"object","x-stream-index":"007"},"custom":{"description":"Whether this is a custom permission or built-in","title":"Custom","type":"boolean","x-stream-index":"009"},"description":{"description":"Description of the permission","title":"Description","type":"string","x-stream-index":"003"},"id":{"description":"Unique permission ID","title":"ID","type":"string","x-stream-index":"001"},"level":{"description":"Level at which permission could be applied (app or channel)","enum":["app","channel"],"title":"Level","type":"string","x-stream-index":"010"},"name":{"description":"Name of the permission","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether this permission applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"same_team":{"description":"Whether this permission applies to teammates (multi-tenancy mode only)","title":"Same team","type":"boolean","x-stream-index":"006"},"tags":{"description":"List of tags of the permission","items":{"type":"string"},"title":"Tags","type":"array","x-stream-index":"011"}},"required":["id","name","description","action","owner","same_team","custom","level","tags"],"type":"object"},"PinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"PinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Policy":{"properties":{"action":{"type":"integer","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"name":{"type":"string","x-stream-index":"004"},"owner":{"type":"boolean","x-stream-index":"008"},"priority":{"format":"int32","type":"integer","x-stream-index":"009"},"resources":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"}},"required":["name","resources","roles","action","owner","priority","created_at","updated_at"],"type":"object"},"PolicyRequest":{"properties":{"action":{"enum":["Deny","Allow"],"title":"Action","type":"string","x-stream-index":"001"},"name":{"description":"User-friendly policy name","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether policy applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"priority":{"description":"Policy priority","format":"int32","maximum":999,"minimum":1,"title":"Priority","type":"integer","x-stream-index":"006"},"resources":{"description":"List of resources to apply policy to","items":{"type":"string"},"minimum":1,"title":"Resources","type":"array","x-stream-index":"003"},"roles":{"description":"List of roles to apply policy to","items":{"type":"string"},"title":"Roles","type":"array","x-stream-index":"004"}},"required":["action","name","resources","roles","owner","priority"],"type":"object"},"PolicyRequest_1":{"properties":{"action":{"enum":["Deny","Allow"],"title":"Action","type":"string","x-stream-index":"001"},"name":{"description":"User-friendly policy name","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether policy applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"priority":{"description":"Policy priority","format":"int32","maximum":999,"minimum":1,"title":"Priority","type":"integer","x-stream-index":"006"},"resources":{"description":"List of resources to apply policy to","items":{"type":"string"},"minimum":1,"title":"Resources","type":"array","x-stream-index":"003"},"roles":{"description":"List of roles to apply policy to","items":{"type":"string"},"title":"Roles","type":"array","x-stream-index":"004"}},"required":["name","priority"],"type":"object"},"PushConfigRequest":{"properties":{"offline_only":{"type":"boolean","x-stream-index":"002"},"version":{"enum":["v1","v2"],"type":"string","x-stream-index":"001"}},"type":"object"},"PushNotificationFields":{"properties":{"apn":{"$ref":"#/components/schemas/APNConfigFields","x-stream-index":"002"},"firebase":{"$ref":"#/components/schemas/FirebaseConfigFields","x-stream-index":"003"},"huawei":{"$ref":"#/components/schemas/HuaweiConfigFields","x-stream-index":"004"},"offline_only":{"type":"boolean","x-stream-index":"001.002"},"providers":{"items":{"$ref":"#/components/schemas/PushProvider"},"type":"array","x-stream-index":"006"},"version":{"type":"string","x-stream-index":"001.001"},"xiaomi":{"$ref":"#/components/schemas/XiaomiConfigFields","x-stream-index":"005"}},"required":["version","offline_only","apn","firebase","huawei","xiaomi"],"type":"object"},"PushNotificationSettings":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushNotificationSettingsRequest":{"properties":{"disabled":{"$ref":"#/components/schemas/NullBoolRequest","x-stream-index":"001"},"disabled_until":{"$ref":"#/components/schemas/NullTimeRequest","x-stream-index":"002"}},"type":"object"},"PushProvider":{"nullable":true,"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name","type","created_at","updated_at"],"type":"object"},"PushProviderRequest":{"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name"],"type":"object"},"PushProviderResponse":{"properties":{"apn_auth_key":{"type":"string","x-stream-index":"008"},"apn_auth_type":{"type":"string","x-stream-index":"013"},"apn_development":{"type":"boolean","x-stream-index":"014"},"apn_host":{"type":"string","x-stream-index":"015"},"apn_key_id":{"type":"string","x-stream-index":"009"},"apn_p12_cert":{"type":"string","x-stream-index":"010"},"apn_sandbox_certificate":{"type":"boolean","x-stream-index":"016"},"apn_supports_remote_notifications":{"type":"boolean","x-stream-index":"018"},"apn_supports_voip_notifications":{"type":"boolean","x-stream-index":"017"},"apn_team_id":{"type":"string","x-stream-index":"011"},"apn_topic":{"type":"string","x-stream-index":"012"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"006"},"disabled_reason":{"type":"string","x-stream-index":"007"},"firebase_apn_template":{"type":"string","x-stream-index":"023"},"firebase_credentials":{"type":"string","x-stream-index":"020"},"firebase_data_template":{"type":"string","x-stream-index":"021"},"firebase_host":{"type":"string","x-stream-index":"024"},"firebase_notification_template":{"type":"string","x-stream-index":"022"},"firebase_server_key":{"type":"string","x-stream-index":"019"},"huawei_app_id":{"type":"string","x-stream-index":"025"},"huawei_app_secret":{"type":"string","x-stream-index":"026"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"005"},"xiaomi_app_secret":{"type":"string","x-stream-index":"028"},"xiaomi_package_name":{"type":"string","x-stream-index":"027"}},"required":["name","type","created_at","updated_at"],"type":"object"},"QueryBannedUsersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"003.006"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.005"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"003.008"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.007"},"exclude_expired_bans":{"type":"boolean","x-stream-index":"006"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"type":"integer","x-stream-index":"004"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"005"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"required":["filter_conditions"],"type":"object"},"QueryBannedUsersResponse":{"nullable":true,"properties":{"bans":{"items":{"$ref":"#/components/schemas/BanResponse"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["bans","duration"],"type":"object"},"QueryCallStatsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"002"}},"type":"object"},"QueryCallStatsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"next":{"type":"string","x-stream-index":"003.001"},"prev":{"type":"string","x-stream-index":"003.002"},"reports":{"items":{"$ref":"#/components/schemas/CallStatsReportSummaryResponse"},"type":"array","x-stream-index":"001"}},"required":["reports","duration"],"type":"object"},"QueryCallsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"006.001"},"next":{"type":"string","x-stream-index":"006.002"},"prev":{"type":"string","x-stream-index":"006.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"004"},"watch":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryCallsResponse":{"nullable":true,"properties":{"calls":{"items":{"$ref":"#/components/schemas/CallStateResponseFields"},"title":"Calls","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["calls","duration"],"type":"object"},"QueryChannelsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"description":"Number of channels to limit","format":"int32","title":"Limit","type":"integer","x-stream-index":"008"},"member_limit":{"description":"Number of members to limit","format":"int32","maximum":100,"minimum":0,"title":"Member limit","type":"integer","x-stream-index":"007"},"message_limit":{"description":"Number of messages to limit","format":"int32","minimum":0,"title":"Message limit","type":"integer","x-stream-index":"006"},"offset":{"description":"Channel pagination offset","format":"int32","title":"Offset","type":"integer","x-stream-index":"009"},"presence":{"title":"Presence","type":"boolean","x-stream-index":"005"},"sort":{"description":"List of sort parameters","items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"state":{"description":"Whether to update channel state or not","title":"State","type":"boolean","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"010.002"},"user_id":{"type":"string","x-stream-index":"010.001"},"watch":{"description":"Whether to start watching found channels or not","title":"Watch","type":"boolean","x-stream-index":"003"}},"title":"Query Channels Request","type":"object","x-stream-docs-page-id":"query_channels"},"QueryMembersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"006.010"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.009"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"006.012"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.011"},"filter_conditions":{"description":"Filter to apply to members","title":"Filter conditions","type":"object","x-stream-index":"004"},"id":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","x-stream-index":"002"},"limit":{"description":"Number of records to return","format":"int32","maximum":300,"minimum":0,"title":"Limit","type":"integer","x-stream-index":"006.003"},"members":{"description":"List of members to search in distinct channels","items":{"$ref":"#/components/schemas/ChannelMember"},"maximum":100,"title":"Members","type":"array","x-stream-index":"003"},"offset":{"description":"Number of records to offset","format":"int32","maximum":10000,"title":"Offset","type":"integer","x-stream-index":"006.004"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"title":"Sort","type":"array","x-stream-index":"005"},"type":{"description":"Channel type to interact with","maxLength":64,"title":"Channel type","type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"},"user_id_gt":{"type":"string","x-stream-index":"006.006"},"user_id_gte":{"type":"string","x-stream-index":"006.005"},"user_id_lt":{"type":"string","x-stream-index":"006.008"},"user_id_lte":{"type":"string","x-stream-index":"006.007"}},"required":["type","filter_conditions"],"type":"object"},"QueryMembersRequest_1":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"002"},"id":{"maxLength":64,"type":"string","x-stream-index":"001.002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":1,"type":"array","x-stream-index":"003"},"type":{"maxLength":64,"type":"string","x-stream-index":"001.001"}},"required":["type","id"],"type":"object"},"QueryMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["members","duration"],"type":"object"},"QueryMessageFlagsRequest":{"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"minimum":0,"type":"integer","x-stream-index":"003.003"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"003.004"},"show_deleted_messages":{"type":"boolean","x-stream-index":"002"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"type":"array","x-stream-index":"003.005"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"type":"object"},"QueryMessageFlagsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flags":{"items":{"$ref":"#/components/schemas/MessageFlag"},"type":"array","x-stream-index":"001"}},"required":["flags","duration"],"type":"object"},"QueryThreadsRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"participant_limit":{"description":"Limit the number of participants returned per each thread","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","x-stream-index":"004"},"prev":{"type":"string","x-stream-index":"005.003"},"reply_limit":{"description":"Limit the number of replies returned per each thread","format":"int32","maximum":10,"minimum":0,"title":"Reply limit","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"type":"object"},"QueryThreadsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"threads":{"description":"List of enriched thread states","items":{"$ref":"#/components/schemas/ThreadStateResponse"},"title":"Threads","type":"array","x-stream-index":"001"}},"required":["threads","duration"],"type":"object"},"QueryUsersRequest":{"properties":{"filter_conditions":{"description":"User filters","title":"Filter conditions","type":"object","x-stream-docs-page-id":"query_users","x-stream-index":"001"},"id_gt":{"type":"string","x-stream-index":"005.006"},"id_gte":{"type":"string","x-stream-index":"005.005"},"id_lt":{"type":"string","x-stream-index":"005.008"},"id_lte":{"type":"string","x-stream-index":"005.007"},"include_deactivated_users":{"type":"boolean","x-stream-index":"004"},"limit":{"format":"int32","maximum":100,"minimum":0,"type":"integer","x-stream-index":"005.003"},"offset":{"format":"int32","maximum":1000,"type":"integer","x-stream-index":"005.004"},"presence":{"description":"Request user presence status","title":"Presence","type":"boolean","x-stream-index":"003"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"006.002"},"user_id":{"type":"string","x-stream-index":"006.001"}},"required":["filter_conditions"],"type":"object"},"RTMPIngress":{"description":"RTMP input settings","properties":{"address":{"type":"string","x-stream-index":"001"}},"required":["address"],"title":"RTMP Ingress","type":"object"},"Reaction":{"description":"Represents user reaction to a message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"008"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["message_id","type","score","created_at","updated_at","Custom"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionRemovalResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionRequest":{"description":"Represents user reaction to a message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["type"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactivateUserRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who's reactivating the user","title":"Created by ID","type":"string","x-stream-index":"004"},"name":{"description":"Set this field to put new name for the user","title":"Name","type":"string","x-stream-index":"003"},"restore_messages":{"description":"Restore previously deleted messages","title":"Restore messages","type":"boolean","x-stream-index":"002"},"user_id":{"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"ReactivateUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ReactivateUsersRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who's reactivating the users","title":"Created by ID","type":"string","x-stream-index":"003"},"restore_messages":{"description":"Restore previously deleted messages","title":"Restore messages","type":"boolean","x-stream-index":"002"},"user_ids":{"description":"User IDs to reactivate","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"ReactivateUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.002.001"},"task_id":{"type":"string","x-stream-index":"001.001"}},"required":["task_id","duration"],"type":"object"},"Read":{"nullable":true,"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"004"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["last_read","unread_messages"],"type":"object"},"RecordSettings":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality"],"type":"object"},"RecordSettingsRequest":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettingsRequest","title":"LayoutSettings","x-stream-index":"004"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"002"},"quality":{"enum":["360p","480p","720p","1080p","1440p"],"type":"string","x-stream-index":"003"}},"required":["mode"],"type":"object"},"RecordSettingsResponse":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","title":"Layout","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality","layout"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RestoreUsersRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":100,"minimum":1,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"RingSettingsRequest":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"001"}},"type":"object"},"Role":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"custom":{"description":"Whether this is a custom role or built-in","title":"Custom","type":"boolean","x-stream-index":"002"},"name":{"description":"Unique role name","title":"Name","type":"string","x-stream-index":"001"},"scopes":{"description":"List of scopes where this role is currently present. `.app` means that role is present in app-level grants","items":{"type":"string"},"title":"Scopes","type":"array","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"}},"required":["name","custom","scopes","created_at","updated_at"],"type":"object"},"S3Request":{"properties":{"s3_api_key":{"type":"string","x-stream-index":"002"},"s3_region":{"type":"string","x-stream-index":"001"},"s3_secret":{"type":"string","x-stream-index":"003"}},"required":["s3_region"],"type":"object"},"SFULocationResponse":{"properties":{"coordinates":{"$ref":"#/components/schemas/Coordinates","x-stream-index":"004"},"datacenter":{"type":"string","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001"},"location":{"$ref":"#/components/schemas/Location","x-stream-index":"003"}},"required":["id","datacenter","location","coordinates"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"ScreensharingSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"SearchRequest":{"properties":{"filter_conditions":{"description":"Channel filter conditions","maximum":100,"minimum":1,"title":"Channel filter","type":"object","x-stream-docs-page-id":"query_channels","x-stream-index":"002"},"limit":{"description":"Number of messages to return","format":"int32","title":"Limit","type":"integer","x-stream-index":"004"},"message_filter_conditions":{"description":"Message filter conditions","title":"Message filter","type":"object","x-stream-index":"003"},"next":{"description":"Pagination parameter. Cannot be used with non-zero offset.","title":"Next","type":"string","x-stream-index":"007"},"offset":{"description":"Pagination offset. Cannot be used with sort or next.","format":"int32","title":"Offset","type":"integer","x-stream-index":"005"},"query":{"description":"Search phrase","title":"Query","type":"string","x-stream-index":"001"},"sort":{"description":"Sort parameters. Cannot be used with non-zero offset","items":{"$ref":"#/components/schemas/SortParam"},"title":"Sort","type":"array","x-stream-index":"006"}},"required":["filter_conditions"],"type":"object"},"SearchResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"next":{"description":"Value to pass to the next search query in order to paginate","title":"Next","type":"string","x-stream-index":"003"},"previous":{"description":"Value that points to the previous page. Pass as the next value in a search query to paginate backwards","title":"Previous","type":"string","x-stream-index":"004"},"results":{"description":"Search results","items":{"$ref":"#/components/schemas/SearchResult"},"title":"Results","type":"array","x-stream-index":"001"},"results_warning":{"$ref":"#/components/schemas/SearchWarning","description":"Warning about the search results","title":"Results Warning","x-stream-index":"002"}},"required":["results","duration"],"type":"object"},"SearchResult":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/SearchResultMessage","description":"Found message","title":"Message","x-stream-index":"001"}},"type":"object"},"SearchResultMessage":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.031"},"attachments":{"items":{"$ref":"#/components/schemas/Attachment"},"type":"array","x-stream-index":"001.011"},"before_message_send_failed":{"type":"boolean","x-stream-index":"001.043"},"channel":{"$ref":"#/components/schemas/ChannelResponse","description":"Channel object","title":"Channel","x-stream-index":"002"},"cid":{"type":"string","x-stream-index":"001.026"},"command":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.028"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"001.021"},"html":{"type":"string","x-stream-index":"001.007"},"i18n":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"001.041"},"id":{"type":"string","x-stream-index":"001.002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.037"},"latest_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.012"},"mentioned_users":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"001.049"},"mml":{"type":"string","x-stream-index":"001.005"},"own_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.013"},"parent_id":{"type":"string","x-stream-index":"001.017"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"001.048"},"pinned":{"type":"boolean","x-stream-index":"001.044"},"pinned_at":{"format":"date-time","type":"string","x-stream-index":"001.045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.047"},"quoted_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.023"},"quoted_message_id":{"type":"string","x-stream-index":"001.022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.015"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.020"},"shadowed":{"type":"boolean","x-stream-index":"001.033"},"show_in_channel":{"type":"boolean","x-stream-index":"001.019"},"silent":{"type":"boolean","x-stream-index":"001.042"},"text":{"type":"string","x-stream-index":"001.004"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.025"},"type":{"type":"string","x-stream-index":"001.008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.029"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned"],"type":"object"},"SearchWarning":{"properties":{"channel_search_cids":{"description":"Channel CIDs for the searched channels","items":{"type":"string"},"title":"Channel Search CIDs","type":"array","x-stream-index":"004"},"channel_search_count":{"description":"Number of channels searched","format":"int32","title":"Channel Search Count","type":"integer","x-stream-index":"003"},"warning_code":{"description":"Code corresponding to the warning","format":"int32","title":"Warning Code","type":"integer","x-stream-index":"002"},"warning_description":{"description":"Description of the warning","title":"Warning Description","type":"string","x-stream-index":"001"}},"required":["warning_description","warning_code"],"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/EventRequest","x-stream-index":"001"}},"required":["event"],"type":"object"},"SendEventResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SendMessageRequest":{"nullable":true,"properties":{"force_moderation":{"type":"boolean","x-stream-index":"007"},"keep_channel_hidden":{"type":"boolean","x-stream-index":"008"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"pending":{"type":"boolean","x-stream-index":"006"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"005"},"skip_enrich_url":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"SendMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"enforce_unique":{"description":"Whether to replace all existing user reactions","title":"Enforce unique","type":"boolean","x-stream-index":"003"},"reaction":{"$ref":"#/components/schemas/ReactionRequest","x-stream-index":"002"},"skip_push":{"description":"Skips any mobile push notifications","title":"Skip push","type":"boolean","x-stream-index":"004"}},"required":["reaction"],"type":"object"},"SendUserCustomEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/UserCustomEventRequest","x-stream-index":"002"}},"required":["event"],"type":"object"},"ShowChannelRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"ShowChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParam":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StartHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StartHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"playlist_url":{"type":"string","x-stream-index":"002"}},"required":["duration","playlist_url"],"type":"object"},"StartRecordingRequest":{"nullable":true,"properties":{"recording_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartRecordingResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StartTranscriptionRequest":{"nullable":true,"properties":{"transcription_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartTranscriptionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Stats":{"properties":{"average_seconds":{"format":"float","type":"number","x-stream-index":"001"},"max_seconds":{"format":"float","type":"number","x-stream-index":"002"}},"required":["average_seconds","max_seconds"],"type":"object"},"StopHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StopHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopLiveRequest":{"nullable":true,"type":"object"},"StopLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"StopRecordingRequest":{"nullable":true,"type":"object"},"StopRecordingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopTranscriptionRequest":{"nullable":true,"type":"object"},"StopTranscriptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"TargetResolutionRequest":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"type":"object"},"Thread":{"description":"Represents a conversation thread linked to a specific message in a channel.","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"012"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"010"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom"],"title":"Thread","type":"object"},"ThreadParticipant":{"description":"Represents a user that is participating in a thread.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"app_pk":{"format":"int32","readOnly":true,"type":"integer","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"007"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"009"},"left_thread_at":{"description":"Left Thread At is the time when the user left the thread","format":"date-time","title":"Left Thread At","type":"string","x-stream-index":"008"},"thread_id":{"description":"Thead ID is unique string identifier of the thread","title":"ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserObject","description":"User is the user object","title":"User","x-stream-index":"006"},"user_id":{"description":"User ID is unique string identifier of the user","title":"User ID","type":"string","x-stream-index":"005"}},"required":["app_pk","channel_cid","created_at","last_read_at","Custom"],"title":"ThreadParticipant","type":"object"},"ThreadResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"created_by_user_id":{"type":"string","x-stream-index":"005"},"custom":{"type":"object","x-stream-index":"015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"010"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"004"},"parent_message_id":{"type":"string","x-stream-index":"003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"008"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"009"},"title":{"type":"string","x-stream-index":"014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom"],"type":"object"},"ThreadState":{"description":"Represents a conversation thread linked to a specific message in a channel.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"001.004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"001.003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"001.013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"001.008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"001.015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"001.012"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"001.006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"001.005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"001.010"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"001.009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"001.016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"001.014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom","latest_replies"],"title":"Thread","type":"object"},"ThreadStateResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.002"},"channel_cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.006"},"created_by_user_id":{"type":"string","x-stream-index":"001.005"},"custom":{"type":"object","x-stream-index":"001.015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"001.010"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.004"},"parent_message_id":{"type":"string","x-stream-index":"001.003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"001.008"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.009"},"title":{"type":"string","x-stream-index":"001.014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom","latest_replies"],"type":"object"},"Thresholds":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThresholdsRequest":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThumbnailResponse":{"properties":{"image_url":{"type":"string","x-stream-index":"001"}},"required":["image_url"],"type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"ThumbnailsSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranscriptionSettingsRequest":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"TranslateMessageRequest":{"nullable":true,"properties":{"language":{"description":"Language to translate message to","enum":["af","sq","am","ar","az","bn","bs","bg","zh","zh-TW","hr","cs","da","fa-AF","nl","en","et","fi","fr","fr-CA","ka","de","el","ha","he","hi","hu","id","it","ja","ko","lv","ms","no","fa","ps","pl","pt","ro","ru","sr","sk","sl","so","es","es-MX","sw","sv","tl","ta","th","tr","uk","ur","vi"],"title":"Language","type":"string","x-stream-index":"002"}},"required":["language"],"type":"object"},"TruncateChannelRequest":{"nullable":true,"properties":{"hard_delete":{"description":"Permanently delete channel data (messages, reactions, etc.)","title":"Hard delete","type":"boolean","x-stream-index":"002"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"004"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"005"},"truncated_at":{"description":"Truncate channel data up to `truncated_at`. The system message (if provided) creation time is always greater than `truncated_at`","format":"date-time","title":"Truncated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"type":"object"},"TruncateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"003"}},"required":["duration"],"type":"object"},"UnblockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to unblock","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"UnblockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnmuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"001.002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"001.003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"required":["channel_cids"],"type":"object"},"UnmuteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["duration"],"type":"object"},"UnmuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"001.002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"001.003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"required":["target_ids"],"type":"object"},"UnpinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"UnpinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnreadCountsBatchRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":100,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"UnreadCountsBatchResponse":{"nullable":true,"properties":{"counts_by_user":{"additionalProperties":{"$ref":"#/components/schemas/UnreadCountsResponse"},"type":"object","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["counts_by_user","duration"],"type":"object"},"UnreadCountsChannel":{"properties":{"channel_id":{"type":"string","x-stream-index":"001"},"last_read":{"format":"date-time","type":"string","x-stream-index":"003"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["channel_id","unread_count","last_read"],"type":"object"},"UnreadCountsChannelType":{"properties":{"channel_count":{"format":"int32","type":"integer","x-stream-index":"002"},"channel_type":{"type":"string","x-stream-index":"001"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"003"}},"required":["channel_type","channel_count","unread_count"],"type":"object"},"UnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"003"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads"],"type":"object"},"UnreadCountsThread":{"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"003"},"parent_message_id":{"type":"string","x-stream-index":"004"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["unread_count","last_read","last_read_message_id","parent_message_id"],"type":"object"},"UpdateAppRequest":{"nullable":true,"properties":{"agora_options":{"$ref":"#/components/schemas/ConfigRequest","x-stream-index":"001.038"},"apn_config":{"$ref":"#/components/schemas/APNConfigRequest","x-stream-index":"001.003"},"async_moderation_config":{"$ref":"#/components/schemas/AsyncModerationConfigurationRequest","x-stream-index":"001.040"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.017"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.016"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.018"},"cdn_expiration_seconds":{"format":"int32","maximum":1209600,"minimum":14400,"type":"integer","x-stream-index":"001.036"},"channel_hide_members_only":{"type":"boolean","x-stream-index":"001.031"},"custom_action_handler_url":{"type":"string","x-stream-index":"001.019"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfoRequest","x-stream-index":"001.041"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.001"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.002"},"enforce_unique_usernames":{"enum":["no","app","team"],"type":"string","x-stream-index":"001.020"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfigRequest","x-stream-index":"001.028"},"firebase_config":{"$ref":"#/components/schemas/FirebaseConfigRequest","x-stream-index":"001.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/ConfigRequest","x-stream-index":"001.039"},"huawei_config":{"$ref":"#/components/schemas/HuaweiConfigRequest","x-stream-index":"001.005"},"image_moderation_block_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.014"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.012"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfigRequest","x-stream-index":"001.027"},"migrate_permissions_to_v2":{"type":"boolean","x-stream-index":"001.033"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.011"},"permission_version":{"enum":["v1","v2"],"type":"string","x-stream-index":"001.009"},"push_config":{"$ref":"#/components/schemas/PushConfigRequest","x-stream-index":"001.007"},"reminders_interval":{"format":"int32","maximum":86400,"minimum":60,"type":"integer","x-stream-index":"001.034"},"reminders_max_members":{"format":"int32","minimum":2,"type":"integer","x-stream-index":"001.035"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.029"},"sns_key":{"type":"string","x-stream-index":"001.025"},"sns_secret":{"type":"string","x-stream-index":"001.026"},"sns_topic_arn":{"type":"string","x-stream-index":"001.024"},"sqs_key":{"type":"string","x-stream-index":"001.022"},"sqs_secret":{"type":"string","x-stream-index":"001.023"},"sqs_url":{"type":"string","x-stream-index":"001.021"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.010"},"video_provider":{"enum":["agora","hms"],"type":"string","x-stream-index":"001.037"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.030"},"webhook_url":{"type":"string","x-stream-index":"001.008"},"xiaomi_config":{"$ref":"#/components/schemas/XiaomiConfigRequest","x-stream-index":"001.006"}},"type":"object"},"UpdateBlockListRequest":{"nullable":true,"properties":{"Name":{"type":"string","writeOnly":true,"x-stream-index":"001"},"words":{"description":"List of words to block","items":{"type":"string"},"minimum":1,"title":"Words","type":"array","x-stream-index":"002"}},"title":"Update block list","type":"object","x-stream-docs-page-id":"update_block_list"},"UpdateCallMembersRequest":{"nullable":true,"properties":{"remove_members":{"description":"List of userID to remove","items":{"type":"string"},"maximum":100,"title":"Remove Members","type":"array","x-stream-index":"003"},"update_members":{"description":"List of members to update or insert","items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"title":"Update Members","type":"array","x-stream-index":"004"}},"type":"object"},"UpdateCallMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"002"}},"required":["duration","members"],"type":"object"},"UpdateCallRequest":{"nullable":true,"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","description":"the settings to change for this call","title":"Settings Override","x-stream-index":"004"},"starts_at":{"description":"the time the call is scheduled to start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"005"}},"type":"object"},"UpdateCallResponse":{"description":"Represents a call","nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"title":"Call","type":"object"},"UpdateCallTypeRequest":{"nullable":true,"properties":{"external_storage":{"type":"string","x-stream-index":"002.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettingsRequest","x-stream-index":"002.002"},"settings":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"002.003"}},"type":"object"},"UpdateCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"UpdateChannelPartialRequest":{"nullable":true,"properties":{"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["set","unset"],"type":"object"},"UpdateChannelPartialResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelRequest":{"nullable":true,"properties":{"accept_invite":{"description":"Set to `true` to accept the invite","title":"Accept invite","type":"boolean","x-stream-index":"008"},"add_members":{"description":"List of user IDs to add to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Add members","type":"array","x-stream-index":"001"},"add_moderators":{"description":"List of user IDs to make channel moderators","items":{"type":"string"},"maximum":100,"title":"Add moderators","type":"array","x-stream-index":"003"},"assign_roles":{"description":"List of channel member role assignments. If any specified user is not part of the channel, the request will fail","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Assign roles","type":"array","x-stream-index":"006"},"cooldown":{"description":"Sets cool down period for the channel in seconds","format":"int32","maximum":120,"minimum":0,"title":"Cool down","type":"integer","x-stream-index":"007"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"013.001"},"demote_moderators":{"description":"List of user IDs to take away moderators status from","items":{"type":"string"},"maximum":100,"title":"Demote moderators","type":"array","x-stream-index":"004"},"hide_history":{"description":"Set to `true` to hide channel's history when adding new members","title":"Hide history","type":"boolean","x-stream-index":"012"},"invites":{"description":"List of user IDs to invite to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Invites","type":"array","x-stream-index":"005"},"message":{"$ref":"#/components/schemas/MessageRequest","description":"Message to send to the chat when channel is successfully updated","title":"Message","x-stream-index":"010"},"reject_invite":{"description":"Set to `true` to reject the invite","title":"Reject invite","type":"boolean","x-stream-index":"009"},"remove_members":{"description":"List of user IDs to remove from the channel","items":{"type":"string"},"maximum":100,"title":"Remove members","type":"array","x-stream-index":"002"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"014.002"},"user_id":{"type":"string","x-stream-index":"014.001"}},"required":["remove_members","add_moderators","demote_moderators"],"title":"Channel update request","type":"object","x-stream-docs-page-id":"channel_update"},"UpdateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"003"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelTypeRequest":{"nullable":true,"properties":{"NameFromPath":{"type":"string","writeOnly":true,"x-stream-index":"001"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"007.001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"007.001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"007.001.019"},"automod_thresholds":{"$ref":"#/components/schemas/ThresholdsRequest","x-stream-index":"007.001.024"},"blocklist":{"type":"string","x-stream-index":"007.001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"007.001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptionsRequest"},"type":"array","x-stream-index":"007.001.022"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"007.003"},"connect_events":{"type":"boolean","x-stream-index":"007.001.004"},"custom_events":{"type":"boolean","x-stream-index":"007.001.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"004"},"mark_messages_pending":{"type":"boolean","x-stream-index":"007.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"007.001.017"},"message_retention":{"type":"string","x-stream-index":"007.001.016"},"mutes":{"type":"boolean","x-stream-index":"007.001.009"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest_1"},"type":"array","x-stream-index":"003"},"push_notifications":{"type":"boolean","x-stream-index":"007.001.013"},"quotes":{"type":"boolean","x-stream-index":"007.001.008"},"reactions":{"type":"boolean","x-stream-index":"007.001.006"},"read_events":{"type":"boolean","x-stream-index":"007.001.003"},"reminders":{"type":"boolean","x-stream-index":"007.001.014"},"replies":{"type":"boolean","x-stream-index":"007.001.007"},"search":{"type":"boolean","x-stream-index":"007.001.005"},"typing_events":{"type":"boolean","x-stream-index":"007.001.002"},"uploads":{"type":"boolean","x-stream-index":"007.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"007.001.011"}},"required":["automod"],"type":"object"},"UpdateChannelTypeResponse":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"003.001.023"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"003.001.018"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.001.019"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"003.001.024"},"blocklist":{"type":"string","x-stream-index":"003.001.020"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.001.021"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"003.001.022"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"003.003"},"connect_events":{"type":"boolean","x-stream-index":"003.001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002.003"},"custom_events":{"type":"boolean","x-stream-index":"003.001.012"},"duration":{"type":"string","x-stream-index":"004.001"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"mark_messages_pending":{"type":"boolean","x-stream-index":"003.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"003.001.017"},"message_retention":{"type":"string","x-stream-index":"003.001.016"},"mutes":{"type":"boolean","x-stream-index":"003.001.009"},"name":{"type":"string","x-stream-index":"003.001.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"001"},"push_notifications":{"type":"boolean","x-stream-index":"003.001.013"},"quotes":{"type":"boolean","x-stream-index":"003.001.008"},"reactions":{"type":"boolean","x-stream-index":"003.001.006"},"read_events":{"type":"boolean","x-stream-index":"003.001.003"},"reminders":{"type":"boolean","x-stream-index":"003.001.014"},"replies":{"type":"boolean","x-stream-index":"003.001.007"},"search":{"type":"boolean","x-stream-index":"003.001.005"},"typing_events":{"type":"boolean","x-stream-index":"003.001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"003.002.004"},"uploads":{"type":"boolean","x-stream-index":"003.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"003.001.011"}},"required":["permissions","grants","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands","duration"],"type":"object"},"UpdateCommandRequest":{"description":"Represents custom chat command","nullable":true,"properties":{"Name":{"type":"string","writeOnly":true,"x-stream-index":"001"},"args":{"description":"Arguments help text, shown in commands auto-completion","maxLength":255,"title":"Arguments","type":"string","x-stream-index":"003"},"description":{"description":"Description, shown in commands auto-completion","maxLength":255,"title":"Description","type":"string","x-stream-index":"002"},"set":{"description":"Set name used for grouping commands","maxLength":255,"title":"Set","type":"string","x-stream-index":"004"}},"required":["description"],"title":"Command","type":"object"},"UpdateCommandResponse":{"nullable":true,"properties":{"command":{"$ref":"#/components/schemas/Command","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"UpdateExternalStorageRequest":{"nullable":true,"properties":{"aws_s3":{"$ref":"#/components/schemas/S3Request","x-stream-index":"003.004"},"azure_blob":{"$ref":"#/components/schemas/AzureRequest","x-stream-index":"003.006"},"bucket":{"type":"string","x-stream-index":"003.002"},"gcs_credentials":{"type":"string","x-stream-index":"003.005"},"path":{"type":"string","x-stream-index":"003.003"},"storage_type":{"type":"string","x-stream-index":"003.001"}},"required":["storage_type","bucket"],"type":"object"},"UpdateExternalStorageResponse":{"nullable":true,"properties":{"bucket":{"type":"string","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001.001"},"path":{"type":"string","x-stream-index":"001.004"},"type":{"type":"string","x-stream-index":"001.002"}},"required":["name","type","bucket","path","duration"],"type":"object"},"UpdateMessagePartialRequest":{"nullable":true,"properties":{"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"skip_enrich_url":{"type":"boolean","x-stream-index":"001"},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["set","unset"],"type":"object"},"UpdateMessagePartialResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"UpdateMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateThreadPartialRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"set":{"type":"object","x-stream-index":"004.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"004.002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["set","unset"],"type":"object"},"UpdateThreadPartialResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadResponse","description":"Updated thread (not enriched)","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"UpdateUserPartialRequest":{"nullable":true,"properties":{"id":{"description":"User ID to update","title":"ID","type":"string","x-stream-index":"001"},"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["id","set","unset"],"type":"object"},"UpdateUserPermissionsRequest":{"nullable":true,"properties":{"grant_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"revoke_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"UpdateUserPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdateUsersRequest":{"nullable":true,"properties":{"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObjectRequest"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users"],"type":"object"},"UpdateUsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"membership_deletion_task_id":{"type":"string","x-stream-index":"002"},"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObject"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users","membership_deletion_task_id","duration"],"type":"object"},"UpsertPushProviderRequest":{"nullable":true,"properties":{"push_provider":{"$ref":"#/components/schemas/PushProviderRequest","x-stream-index":"001"}},"type":"object"},"UpsertPushProviderResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"push_provider":{"$ref":"#/components/schemas/PushProviderResponse","x-stream-index":"001"}},"required":["push_provider","duration"],"type":"object"},"UserCustomEventRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"type":{"type":"string","x-stream-index":"001"}},"required":["type"],"type":"object"},"UserInfoResponse":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"image":{"type":"string","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"004"}},"required":["name","image","custom","roles"],"type":"object"},"UserMute":{"nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"target":{"$ref":"#/components/schemas/UserObject","description":"User who's muted","title":"Target","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"UserObject":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"007"},"deactivated_at":{"description":"Date of deactivation","format":"date-time","readOnly":true,"title":"Deactivated at","type":"string","x-stream-index":"012"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","readOnly":true,"title":"Deleted at","type":"string","x-stream-index":"011"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"last_active":{"description":"Date of last activity","format":"date-time","readOnly":true,"title":"Last active","type":"string","x-stream-index":"010"},"online":{"description":"Whether a user online or not","readOnly":true,"title":"Online","type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"008"}},"required":["id"],"title":"User object","type":"object"},"UserObjectRequest":{"description":"Represents chat user","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"016"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"021"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettingsRequest","x-stream-index":"022"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"019"}},"required":["id"],"title":"User object","type":"object"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserRequest_1":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.005"},"ban_expires":{"format":"date-time","type":"string","x-stream-index":"001.015"},"banned":{"type":"boolean","x-stream-index":"001.014"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.007"},"deactivated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.012"},"deleted_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.011"},"id":{"type":"string","x-stream-index":"001.003"},"invisible":{"type":"boolean","x-stream-index":"001.021"},"language":{"type":"string","x-stream-index":"001.031"},"last_active":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.010"},"online":{"readOnly":true,"type":"boolean","x-stream-index":"001.020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"001.023"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.038"},"role":{"type":"string","x-stream-index":"001.004"},"shadow_banned":{"description":"Whether user is shadow banned or not","title":"Shadow banned","type":"boolean","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.032"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.008"}},"required":["id","role","Custom","banned","online","shadow_banned"],"type":"object"},"UserSessionStats":{"properties":{"freeze_duration_seconds":{"format":"float","type":"number","x-stream-index":"009"},"jitter":{"$ref":"#/components/schemas/Stats","x-stream-index":"006"},"latency":{"$ref":"#/components/schemas/Stats","x-stream-index":"007"},"os":{"type":"string","x-stream-index":"002"},"packet_loss_fraction":{"format":"float","type":"number","x-stream-index":"010"},"quality_score":{"format":"float","type":"number","x-stream-index":"008"},"sdk":{"type":"string","x-stream-index":"004"},"sdk_version":{"type":"string","x-stream-index":"005"},"timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"001"},"webrtc_version":{"type":"string","x-stream-index":"003"}},"required":["os","webrtc_version","sdk","sdk_version","quality_score","freeze_duration_seconds","packet_loss_fraction"],"type":"object"},"UserStats":{"properties":{"info":{"$ref":"#/components/schemas/UserInfoResponse","x-stream-index":"001"},"session_stats":{"additionalProperties":{"$ref":"#/components/schemas/UserSessionStats"},"type":"object","x-stream-index":"002"}},"required":["info","session_stats"],"type":"object"},"UsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"users":{"description":"List of found users","items":{"$ref":"#/components/schemas/UserResponse"},"title":"Users","type":"array","x-stream-index":"001"}},"required":["users","duration"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VideoSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolutionRequest","x-stream-index":"003"}},"type":"object"},"WSEvent":{"description":"Represents an BaseEvent that happened in Stream Chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"022"},"automoderation":{"type":"boolean","x-stream-index":"018"},"automoderation_scores":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"019"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"009"},"channel_id":{"type":"string","x-stream-index":"004"},"channel_type":{"type":"string","x-stream-index":"005"},"cid":{"type":"string","x-stream-index":"003"},"connection_id":{"type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"023"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"017"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"014"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"011"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"006"},"message_update":{"$ref":"#/components/schemas/MessageUpdate","x-stream-index":"007"},"parent_id":{"type":"string","x-stream-index":"020"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"008"},"reason":{"type":"string","x-stream-index":"016"},"team":{"type":"string","x-stream-index":"021"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"010"},"type":{"type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"user_id":{"type":"string","x-stream-index":"013"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"015"}},"required":["type","Custom","created_at"],"title":"Event","type":"object","x-stream-docs-page-id":"event_object"},"WrappedUnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"001.004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"001.005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001.001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"001.002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads","duration"],"type":"object"},"XiaomiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"package_name":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"XiaomiConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"003"},"package_name":{"type":"string","x-stream-index":"001"},"secret":{"type":"string","x-stream-index":"002"}},"type":"object"},"connectRequestQueryRequest":{"nullable":true,"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v104.0.1"},"openapi":"3.0.3","paths":{"/api/v2/app":{"get":{"description":"This Method returns the application settings\n","operationId":"GetApp","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetApplicationResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get App Settings","tags":["Settings"]},"patch":{"description":"This Method updates one or more application settings\n","operationId":"UpdateApp","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAppRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update App Settings","tags":["Settings"]}},"/api/v2/chat/blocklists":{"get":{"description":"Returns all available block lists\n","operationId":"ListBlockLists","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListBlockListResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List block lists","tags":["Settings","Moderation"]},"post":{"description":"Creates a new application blocklist, once created the blocklist can be used by any channel type\n","operationId":"CreateBlockList","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBlockListRequest"}}},"description":"Block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create block list","tags":["Settings","Moderation"]}},"/api/v2/chat/blocklists/{name}":{"delete":{"description":"Deletes previously created application blocklist\n","operationId":"DeleteBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete block list","tags":["Settings","Moderation"]},"get":{"description":"Returns block list by given name\n","operationId":"GetBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBlockListResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get block list","tags":["Settings","Moderation"]},"put":{"description":"Updates contents of the block list\n","operationId":"UpdateBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateBlockListRequest"}}},"description":"Update block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update block list","tags":["Settings","Moderation"]}},"/api/v2/chat/blocklists/{type}/validate":{"post":{"description":"Runs specific blocklist validation, returns an appropriate error if the blocklist is invalid\n","operationId":"ValidateBlockList","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBlockListRequest"}}},"description":"Block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Validate Blocklist","tags":["Moderation"]}},"/api/v2/chat/channels":{"post":{"description":"Query channels with filter query\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryChannelsRequest"}}},"description":"Query Channels Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelsResponse"}}},"description":"Channels list"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query channels","tags":["Channels"]}},"/api/v2/chat/channels/delete":{"post":{"description":"Allows to delete several channels at once asynchronously\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deletes channels asynchronously","tags":["Channels","GDPR"]}},"/api/v2/chat/channels/read":{"post":{"description":"Marks channels as read up to the specific message. If no channels is given, mark all channel as read\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkChannelsRead","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChannelsReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark channels as read","tags":["Channels","Messages"]}},"/api/v2/chat/channels/{type}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}":{"delete":{"description":"Deletes channel\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"hard_delete","schema":{"type":"boolean","x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel","tags":["Channels"]},"patch":{"description":"Updates certain fields of the channel\n\nSends events:\n- channel.updated\n\nRequired permissions:\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n","operationId":"UpdateChannelPartial","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update channel","tags":["Channels"]},"post":{"description":"Change channel data\n\nSends events:\n- channel.updated\n- member.added\n- member.removed\n- member.updated\n- message.new\n\nRequired permissions:\n- AddOwnChannelMembership\n- RemoveOwnChannelMembership\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n- UpdateChannelMembers\n","operationId":"UpdateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelRequest"}}},"description":"Channel update request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/event":{"post":{"description":"Sends event to the channel\n\nRequired permissions:\n- SendCustomEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send event","tags":["Events"]}},"/api/v2/chat/channels/{type}/{id}/file":{"delete":{"description":"Deletes previously uploaded file\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete file","tags":["Messages","Files"]},"post":{"description":"Uploads file\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload file","tags":["Messages","Files"]}},"/api/v2/chat/channels/{type}/{id}/hide":{"post":{"description":"Marks channel as hidden for current user\n\nSends events:\n- channel.hidden\n\nRequired permissions:\n- ReadChannel\n","operationId":"HideChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Hide channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/image":{"delete":{"description":"Deletes previously uploaded image\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete image","tags":["Messages","Files"]},"post":{"description":"Uploads image\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ImageUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload image","tags":["Messages","Files"]}},"/api/v2/chat/channels/{type}/{id}/message":{"post":{"description":"Sends new message to the specified channel\n\nSends events:\n- message.new\n- message.updated\n\nRequired permissions:\n- AddLinks\n- CreateMessage\n- PinMessage\n- SkipChannelCooldown\n- SkipMessageModeration\n- UseFrozenChannel\n","operationId":"SendMessage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"009.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"009.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send new message","tags":["Messages"]}},"/api/v2/chat/channels/{type}/{id}/messages":{"get":{"description":"Returns list messages found by IDs\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetManyMessages","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"ids","schema":{"description":"List of comma-separated IDs","items":{"type":"string"},"maximum":50,"minimum":1,"title":"IDs","type":"array","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetManyMessagesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get many messages","tags":["Messages"]}},"/api/v2/chat/channels/{type}/{id}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID (maximum length of 64 characters)","title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/read":{"post":{"description":"Marks channel as read up to the specific message\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkRead","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark read","tags":["Channels","Messages"]}},"/api/v2/chat/channels/{type}/{id}/show":{"post":{"description":"Shows previously hidden channel\n\nSends events:\n- channel.visible\n","operationId":"ShowChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Show channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/truncate":{"post":{"description":"Truncates channel\n\nSends events:\n- channel.truncated\n\nRequired permissions:\n- DeleteChannel\n- TruncateChannel\n","operationId":"TruncateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Truncate channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/unread":{"post":{"description":"Marks channel as unread from a specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkUnread","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkUnreadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark unread","tags":["Channels","Messages"]}},"/api/v2/chat/channeltypes":{"get":{"description":"Lists all available channel types\n","operationId":"ListChannelTypes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListChannelTypesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List channel types","tags":["Settings","Channel types"]},"post":{"description":"Creates new channel type\n","operationId":"CreateChannelType","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateChannelTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateChannelTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create channel type","tags":["Settings","Channel types"]}},"/api/v2/chat/channeltypes/{name}":{"delete":{"description":"Deletes channel type\n","operationId":"DeleteChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Channel type name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel type","tags":["Settings","Channel types"]},"get":{"description":"Gets channel type\n","operationId":"GetChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Channel type name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get channel type","tags":["Settings","Channel types"]},"put":{"description":"Updates channel type\n","operationId":"UpdateChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel type","tags":["Settings","Channel types"]}},"/api/v2/chat/commands":{"get":{"description":"Returns all custom commands\n","operationId":"ListCommands","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListCommandsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List commands","tags":["Custom commands"]},"post":{"description":"Creates custom chat command\n","operationId":"CreateCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommandRequest"}}},"description":"Command","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create command","tags":["Custom commands"]}},"/api/v2/chat/commands/{name}":{"delete":{"description":"Deletes custom chat command\n","operationId":"DeleteCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete command","tags":["Custom commands"]},"get":{"description":"Returns custom command by its name\n","operationId":"GetCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get command","tags":["Custom commands"]},"put":{"description":"Updates custom chat command\n","operationId":"UpdateCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Unique command name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCommandRequest"}}},"description":"Command","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update command","tags":["Custom commands"]}},"/api/v2/chat/export_channels":{"post":{"description":"Exports channel data to JSON file\n","operationId":"ExportChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export channels","tags":["Channels"]}},"/api/v2/chat/export_channels/{id}":{"get":{"description":"\n","operationId":"GetExportChannelsStatus","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Task ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetExportChannelsStatusResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export channels status","tags":["Channels"]}},"/api/v2/chat/members":{"get":{"description":"Find and filter channel members\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryMembers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query members","tags":["Channels"]}},"/api/v2/chat/messages/{id}":{"delete":{"description":"Deletes message\n\nSends events:\n- message.deleted\n\nRequired permissions:\n- DeleteMessage\n","operationId":"DeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"hard","schema":{"description":"Delete all message reactions and replies as well","title":"Hard","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"deleted_by","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete message","tags":["Messages"]},"get":{"description":"Returns message by ID\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"show_deleted_message","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageWithPendingMetadataResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get message","tags":["Messages"]},"post":{"description":"Updates message with new data\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update message","tags":["Messages"]},"put":{"description":"Updates certain fields of the message\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessagePartial","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially message update","tags":["Messages"]}},"/api/v2/chat/messages/{id}/action":{"post":{"description":"Executes message command action with given parameters\n\nSends events:\n- message.new\n\nRequired permissions:\n- RunMessageAction\n","operationId":"RunMessageAction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageActionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Run message command action","tags":["Messages"]}},"/api/v2/chat/messages/{id}/commit":{"post":{"description":"Commits a pending message, which will make it visible in the channel\n\nSends events:\n- message.new\n- message.updated\n","operationId":"CommitMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Commit message"}},"/api/v2/chat/messages/{id}/reaction":{"post":{"description":"Sends reaction to specified message\n\nSends events:\n- reaction.new\n- reaction.updated\n\nRequired permissions:\n- CreateReaction\n- UseFrozenChannel\n","operationId":"SendReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to send reaction for","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/reaction/{type}":{"delete":{"description":"Removes user reaction from the message\n\nSends events:\n- reaction.deleted\n\nRequired permissions:\n- DeleteReaction\n","operationId":"DeleteReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to remove reaction from","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"type","required":true,"schema":{"description":"Reaction type to remove","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionRemovalResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete reaction","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/reactions":{"get":{"description":"Returns list of reactions of specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReactions","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"limit","schema":{"description":"Number of records to return","format":"int32","title":"Limit","type":"integer","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"offset","schema":{"description":"Number of records to offset","format":"int32","title":"Offset","type":"integer","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetReactionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get reactions","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/translate":{"post":{"description":"Translates message to a given language using automated translation software\n\nSends events:\n- message.updated\n\nRequired permissions:\n- ReadChannel\n","operationId":"TranslateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Translate message","tags":["Messages"]}},"/api/v2/chat/messages/{id}/undelete":{"post":{"description":"Undelete a message that was previously soft-deleted\n\nSends events:\n- message.undeleted\n","operationId":"UndeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Undelete message","tags":["Messages"]}},"/api/v2/chat/messages/{parent_id}/replies":{"get":{"description":"Returns replies (thread) of the message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReplies","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"description":"ID of a message which replies to return","title":"Parent ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"id_gte","schema":{"type":"string","x-stream-index":"002.001.003"}},{"in":"query","name":"id_gt","schema":{"type":"string","x-stream-index":"002.001.004"}},{"in":"query","name":"id_lte","schema":{"type":"string","x-stream-index":"002.001.005"}},{"in":"query","name":"id_lt","schema":{"type":"string","x-stream-index":"002.001.006"}},{"in":"query","name":"created_at_after_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.007"}},{"in":"query","name":"created_at_after","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.008"}},{"in":"query","name":"created_at_before_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.009"}},{"in":"query","name":"created_at_before","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.010"}},{"in":"query","name":"id_around","schema":{"type":"string","x-stream-index":"002.001.011"}},{"in":"query","name":"created_at_around","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.012"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get replies","tags":["Messages"]}},"/api/v2/chat/moderation/ban":{"delete":{"description":"Removes previously applied ban\n\nSends events:\n- user.unbanned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Unban","parameters":[{"in":"query","name":"target_user_id","schema":{"type":"string","x-stream-index":"001"}},{"in":"query","name":"type","schema":{"type":"string","x-stream-index":"002"}},{"in":"query","name":"id","schema":{"type":"string","x-stream-index":"003"}},{"in":"query","name":"created_by","schema":{"type":"string","x-stream-index":"004"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unban user","tags":["Users","Moderation"]},"post":{"description":"Restricts user activity either in specific channel or globally\n\nSends events:\n- user.banned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Ban","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BanRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Ban user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/flag":{"post":{"description":"Reports message or user for review by moderators\n\nSends events:\n- message.flagged\n- user.flagged\n\nRequired permissions:\n- FlagMessage\n- FlagUser\n","operationId":"Flag","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Flag","tags":["Moderation","Messages","Users"]}},"/api/v2/chat/moderation/flags/message":{"get":{"description":"Find and filter message flags\n\nRequired permissions:\n- ReadMessageFlags\n","operationId":"QueryMessageFlags","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Message Flags","tags":["Messages","Moderation"]}},"/api/v2/chat/moderation/mute":{"post":{"description":"Mutes one or several users\n\nSends events:\n- user.muted\n\nRequired permissions:\n- MuteUser\n","operationId":"MuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/mute/channel":{"post":{"description":"Mutes channel for user\n\nSends events:\n- channel.muted\n\nRequired permissions:\n- MuteChannel\n","operationId":"MuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute channel","tags":["Channels"]}},"/api/v2/chat/moderation/unmute":{"post":{"description":"Unmutes previously muted user\n\nSends events:\n- user.unmuted\n\nRequired permissions:\n- MuteUser\n","operationId":"UnmuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/unmute/channel":{"post":{"description":"Unmutes channel for user\n\nSends events:\n- channel.unmuted\n\nRequired permissions:\n- MuteChannel\n","operationId":"UnmuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute channel","tags":["Channels"]}},"/api/v2/chat/query_banned_users":{"get":{"description":"Find and filter channel scoped or global user bans\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryBannedUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Banned Users","tags":["Users","Moderation"]}},"/api/v2/chat/search":{"get":{"description":"Search messages across channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Search","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest","description":"JSON object with search payload","title":"Payload","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Search messages","tags":["Channels","Messages"]}},"/api/v2/chat/threads":{"post":{"description":"Returns the list of threads for specific user\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryThreads","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Threads","tags":["Threads"]}},"/api/v2/chat/threads/{message_id}":{"get":{"description":"Return a specific thread\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetThread","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"watch","schema":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"reply_limit","schema":{"description":"Limit the number of replies returned","format":"int32","minimum":0,"title":"Reply limit","type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"participant_limit","schema":{"description":"Limit the number of participants returned","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetThreadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Thread","tags":["Threads"]},"patch":{"description":"Updates certain fields of the thread\n\nSends events:\n- thread.updated\n\nRequired permissions:\n- ReadChannel\n- UpdateThread\n","operationId":"UpdateThreadPartial","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update thread","tags":["Threads","Channels"]}},"/api/v2/chat/unread":{"get":{"description":"Fetch unread counts for a single user\n","operationId":"UnreadCounts","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WrappedUnreadCountsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unread counts","tags":["Channels"]}},"/api/v2/chat/unread_batch":{"post":{"description":"Fetch unread counts in batch for multiple users in one call\n","operationId":"UnreadCountsBatch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnreadCountsBatchRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnreadCountsBatchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Batch unread counts","tags":["Channels"]}},"/api/v2/chat/users/{user_id}/event":{"post":{"description":"Sends a custom event to a user\n\nSends events:\n- custom\n","operationId":"SendUserCustomEvent","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendUserCustomEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send user event","tags":["Events"]}},"/api/v2/check_push":{"post":{"description":"Sends a test message via push, this is a test endpoint to verify your push settings\n","operationId":"CheckPush","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckPushRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckPushResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check push","tags":["Settings","Testing"]}},"/api/v2/check_sns":{"post":{"description":"Validates Amazon SNS configuration\n","operationId":"CheckSNS","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSNSRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSNSResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check SNS","tags":["Settings","Testing"]}},"/api/v2/check_sqs":{"post":{"description":"Validates Amazon SQS credentials\n","operationId":"CheckSQS","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSQSRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSQSResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check SQS","tags":["Settings","Testing"]}},"/api/v2/connect":{"get":{"description":"Establishes WebSocket connection for user\n\nSends events:\n- user.updated\n","operationId":"Connect","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Connect (WebSocket)","tags":["Users"]}},"/api/v2/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device","tags":["Devices"]},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices","tags":["Devices"]},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device","tags":["Devices","Push"]}},"/api/v2/export/users":{"post":{"description":"Exports user profile, reactions and messages for list of given users\n","operationId":"ExportUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export users","tags":["Users"]}},"/api/v2/guest":{"post":{"description":"Creates guest user\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create guest","tags":["Users"]}},"/api/v2/import_urls":{"post":{"description":"Creates a new import URL\n","operationId":"CreateImportURL","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportURLRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportURLResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create import URL","tags":["Imports"]}},"/api/v2/imports":{"get":{"description":"Gets an import\n","operationId":"ListImports","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListImportsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get import","tags":["Imports"]},"post":{"description":"Creates a new import\n","operationId":"CreateImport","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create import","tags":["Imports"]}},"/api/v2/imports/{id}":{"get":{"description":"Gets an import\n","operationId":"GetImport","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetImportResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get import","tags":["Imports"]}},"/api/v2/longpoll":{"get":{"description":"WebSocket fallback transport endpoint\n\nSends events:\n- user.updated\n","operationId":"LongPoll","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"},{"in":"query","name":"connection_id","schema":{"maxLength":36,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Long Poll (Transport)","tags":["Users"]}},"/api/v2/og":{"get":{"description":"Get an OpenGraph attachment for a link\n","operationId":"GetOG","parameters":[{"in":"query","name":"url","schema":{"description":"URL to be scraped","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOGResponse"}}},"description":"Get OG Attachment"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get OG","tags":["Messages"]}},"/api/v2/permissions":{"get":{"description":"Lists all available permissions\n","operationId":"ListPermissions","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List permissions","tags":["Permissions V2"]}},"/api/v2/permissions/{id}":{"get":{"description":"Gets custom permission\n","operationId":"GetPermission","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Permission ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCustomPermissionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get permission","tags":["Permissions V2"]}},"/api/v2/push_providers":{"get":{"description":"List details of all push providers.\n","operationId":"ListPushProviders","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPushProvidersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List push providers","tags":["Push","Settings"]},"post":{"description":"Upsert a push provider for v2 with multi bundle/package support\n","operationId":"UpsertPushProvider","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertPushProviderRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertPushProviderResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert a push provider","tags":["Server-side"]}},"/api/v2/push_providers/{type}/{name}":{"delete":{"description":"Delete a push provider from v2 with multi bundle/package support. v1 isn't supported in this endpoint\n","operationId":"DeletePushProvider","parameters":[{"in":"path","name":"type","required":true,"schema":{"enum":["apn","firebase","huawei","xiaomi"],"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"name","required":true,"schema":{"maxLength":36,"minLength":1,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete a push provider","tags":["Push","Settings"]}},"/api/v2/rate_limits":{"get":{"description":"Get rate limits usage and quotas\n","operationId":"GetRateLimits","parameters":[{"in":"query","name":"server_side","schema":{"description":"Whether to include server-side platform limits or not","title":"Server-side","type":"boolean","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"android","schema":{"description":"Whether to include Android platform limits or not","title":"Android","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"ios","schema":{"description":"Whether to include iOS platform limits or not","title":"iOS","type":"boolean","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"web","schema":{"description":"Whether to include web platform limits or not","title":"Web","type":"boolean","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"endpoints","schema":{"description":"Specific endpoints to show limits for, as a comma-separated list of values","title":"Endpoints","type":"string","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRateLimitsResponse"}}},"description":"Get Rate Limits Response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get rate limits","tags":["Settings"]}},"/api/v2/roles":{"get":{"description":"Lists all available roles\n","operationId":"ListRoles","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRolesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List roles","tags":["Permissions V2"]},"post":{"description":"Creates custom role\n","operationId":"CreateRole","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create role","tags":["Permissions V2"]}},"/api/v2/roles/{name}":{"delete":{"description":"Deletes custom role\n","operationId":"DeleteRole","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Role name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete role","tags":["Permissions V2"]}},"/api/v2/tasks/{id}":{"get":{"description":"Gets status of a task\n","operationId":"GetTask","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Task ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTaskResponse"}}},"description":"Get Task Response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get status of a task","tags":["Tasks"]}},"/api/v2/users":{"get":{"description":"Find and filter users\n\nRequired permissions:\n- SearchUser\n","operationId":"QueryUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query users","tags":["Users"]},"patch":{"description":"Updates certain fields of the user\n\nSends events:\n- user.presence.changed\n- user.updated\n","operationId":"UpdateUsersPartial","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update user","tags":["Users"]},"post":{"description":"Update or create users in bulk\n\nSends events:\n- user.updated\n","operationId":"UpdateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert users","tags":["Users"]}},"/api/v2/users/deactivate":{"post":{"description":"Deactivate users in batches\n\nSends events:\n- user.deactivated\n","operationId":"DeactivateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deactivate users","tags":["Users","GDPR","Moderation"]}},"/api/v2/users/delete":{"post":{"description":"Deletes users and optionally all their belongings asynchronously.\n\nSends events:\n- channel.deleted\n- user.deleted\n","operationId":"DeleteUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete Users","tags":["Users","GDPR","Moderation"]}},"/api/v2/users/reactivate":{"post":{"description":"Reactivate users in batches\n\nSends events:\n- user.reactivated\n","operationId":"ReactivateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reactivate users","tags":["Users","GDPR","Moderation"]}},"/api/v2/users/restore":{"post":{"description":"Restore soft deleted users\n","operationId":"RestoreUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestoreUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Restore users","tags":["Users"]}},"/api/v2/users/{user_id}/deactivate":{"post":{"description":"Deactivates user with possibility to activate it back\n\nSends events:\n- user.deactivated\n","operationId":"DeactivateUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User ID","type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deactivate user","tags":["Users","GDPR","Moderation"]}},"/api/v2/users/{user_id}/export":{"get":{"description":"Exports the user's profile, reactions and messages. Raises an error if a user has more than 10k messages or reactions\n","operationId":"ExportUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export user","tags":["Users"]}},"/api/v2/users/{user_id}/reactivate":{"post":{"description":"Activates user who's been deactivated previously\n\nSends events:\n- user.reactivated\n","operationId":"ReactivateUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User ID","type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reactivate user","tags":["Users","GDPR","Moderation"]}},"/api/v2/video/call/members":{"post":{"description":"Query call members with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryMembers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest_1"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call members"}},"/api/v2/video/call/stats":{"post":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"QueryCallStats","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Call Stats"}},"/api/v2/video/call/{type}/{id}":{"get":{"description":"\n\nRequired permissions:\n- ReadCall\n","operationId":"GetCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"members_limit","schema":{"format":"int32","maximum":100,"minimum":0,"type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"ring","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"005"}},{"in":"query","name":"notify","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"006"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call"},"patch":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"UpdateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallResponse"}}},"description":"Call"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call"},"post":{"description":"Gets or creates a new call\n\nSends events:\n- call.created\n- call.notification\n- call.ring\n\nRequired permissions:\n- CreateCall\n- ReadCall\n- UpdateCallSettings\n","operationId":"GetOrCreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create a call"}},"/api/v2/video/call/{type}/{id}/block":{"post":{"description":"Block a user, preventing them from joining the call until they are unblocked.\n\nSends events:\n- call.blocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"BlockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Block user on a call"}},"/api/v2/video/call/{type}/{id}/event":{"post":{"description":"Sends custom event to the call\n\nSends events:\n- custom\n\nRequired permissions:\n- SendEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send custom event"}},"/api/v2/video/call/{type}/{id}/feedback/{session}":{"post":{"description":"\n\nRequired permissions:\n- JoinCall\n","operationId":"CollectUserFeedback","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Collect user feedback"}},"/api/v2/video/call/{type}/{id}/go_live":{"post":{"description":"\n\nSends events:\n- call.live_started\n\nRequired permissions:\n- UpdateCall\n","operationId":"GoLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as live"}},"/api/v2/video/call/{type}/{id}/mark_ended":{"post":{"description":"\n\nSends events:\n- call.ended\n\nRequired permissions:\n- EndCall\n","operationId":"EndCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"End call"}},"/api/v2/video/call/{type}/{id}/members":{"post":{"description":"\n\nSends events:\n- call.member_added\n- call.member_removed\n- call.member_updated\n\nRequired permissions:\n- RemoveCallMember\n- UpdateCallMember\n- UpdateCallMemberRole\n","operationId":"UpdateCallMembers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Member"}},"/api/v2/video/call/{type}/{id}/mute_users":{"post":{"description":"Mutes users in a call\n\nRequired permissions:\n- MuteUsers\n","operationId":"MuteUsers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute users"}},"/api/v2/video/call/{type}/{id}/pin":{"post":{"description":"Pins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoPin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Pin"}},"/api/v2/video/call/{type}/{id}/recordings":{"get":{"description":"Lists recordings\n\nRequired permissions:\n- ListRecordings\n","operationId":"ListRecordings","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRecordingsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List recordings"}},"/api/v2/video/call/{type}/{id}/start_broadcasting":{"post":{"description":"Starts HLS broadcasting\n\nRequired permissions:\n- StartBroadcasting\n","operationId":"StartHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start HLS broadcasting"}},"/api/v2/video/call/{type}/{id}/start_recording":{"post":{"description":"Starts recording\n\nSends events:\n- call.recording_started\n\nRequired permissions:\n- StartRecording\n","operationId":"StartRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start recording"}},"/api/v2/video/call/{type}/{id}/start_transcription":{"post":{"description":"Starts transcription\n\nRequired permissions:\n- StartTranscription\n","operationId":"StartTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start transcription"}},"/api/v2/video/call/{type}/{id}/stats/{session}":{"get":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"GetCallStats","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Stats"}},"/api/v2/video/call/{type}/{id}/stop_broadcasting":{"post":{"description":"Stops HLS broadcasting\n\nRequired permissions:\n- StopBroadcasting\n","operationId":"StopHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop HLS broadcasting"}},"/api/v2/video/call/{type}/{id}/stop_live":{"post":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"StopLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as not live"}},"/api/v2/video/call/{type}/{id}/stop_recording":{"post":{"description":"Stops recording\n\nSends events:\n- call.recording_stopped\n\nRequired permissions:\n- StopRecording\n","operationId":"StopRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop recording"}},"/api/v2/video/call/{type}/{id}/stop_transcription":{"post":{"description":"Stops transcription\n\nSends events:\n- call.transcription_stopped\n\nRequired permissions:\n- StopTranscription\n","operationId":"StopTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop transcription"}},"/api/v2/video/call/{type}/{id}/transcriptions":{"get":{"description":"Lists transcriptions\n\nRequired permissions:\n- ListTranscriptions\n","operationId":"ListTranscriptions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTranscriptionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List transcriptions"}},"/api/v2/video/call/{type}/{id}/unblock":{"post":{"description":"Removes the block for a user on a call. The user will be able to join the call again.\n\nSends events:\n- call.unblocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"UnblockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unblocks user on a call"}},"/api/v2/video/call/{type}/{id}/unpin":{"post":{"description":"Unpins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoUnpin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unpin"}},"/api/v2/video/call/{type}/{id}/user_permissions":{"post":{"description":"Updates user permissions\n\nSends events:\n- call.permissions_updated\n\nRequired permissions:\n- UpdateCallPermissions\n","operationId":"UpdateUserPermissions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update user permissions"}},"/api/v2/video/calls":{"post":{"description":"Query calls with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryCalls","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call"}},"/api/v2/video/calltypes":{"get":{"description":"\n","operationId":"ListCallTypes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List Call Type","tags":["Server-side"]},"post":{"description":"\n","operationId":"CreateCallType","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create Call Type","tags":["Server-side"]}},"/api/v2/video/calltypes/{name}":{"delete":{"description":"\n","operationId":"DeleteCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete Call Type","tags":["Server-side"]},"get":{"description":"\n","operationId":"GetCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Type","tags":["Server-side"]},"put":{"description":"\n","operationId":"UpdateCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Type","tags":["Server-side"]}},"/api/v2/video/edges":{"get":{"description":"Returns the list of all edges available for video calls.\n","operationId":"GetEdges","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEdgesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Edges"}},"/api/v2/video/external_storage":{"get":{"description":"Lists external storage\n","operationId":"ListExternalStorage","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List external storage","tags":["Settings"]},"post":{"description":"Creates new external storage\n","operationId":"CreateExternalStorage","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalStorageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create external storage","tags":["Settings"]}},"/api/v2/video/external_storage/{name}":{"delete":{"description":"Deletes external storage\n","operationId":"DeleteExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete external storage","tags":["Settings"]},"put":{"description":"\n","operationId":"UpdateExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalStorageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update External Storage","tags":["Server-side"]}},"/api/v2/video/external_storage/{name}/check":{"get":{"description":"\n","operationId":"CheckExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check External Storage","tags":["Server-side"]}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file +{"components":{"schemas":{"APIError":{"nullable":true,"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNConfigFields":{"properties":{"auth_key":{"type":"string","x-stream-index":"009"},"auth_type":{"type":"string","x-stream-index":"003"},"bundle_id":{"type":"string","x-stream-index":"006"},"development":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"},"host":{"type":"string","x-stream-index":"005"},"key_id":{"type":"string","x-stream-index":"008"},"notification_template":{"type":"string","x-stream-index":"004"},"p12_cert":{"type":"string","x-stream-index":"010"},"team_id":{"type":"string","x-stream-index":"007"}},"required":["enabled","development","notification_template"],"type":"object"},"APNConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"005"},"auth_key":{"type":"string","x-stream-index":"006.001"},"auth_type":{"enum":["certificate","token"],"type":"string","x-stream-index":"001"},"bundle_id":{"type":"string","x-stream-index":"004"},"development":{"type":"boolean","x-stream-index":"002"},"host":{"type":"string","x-stream-index":"003"},"key_id":{"type":"string","x-stream-index":"006.002"},"notification_template":{"type":"string","x-stream-index":"008"},"p12_cert":{"type":"string","x-stream-index":"007.001"},"team_id":{"type":"string","x-stream-index":"006.003"}},"type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"APNSRequest":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"type":"object"},"Action":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"required":["name","text","type"],"type":"object"},"ActionRequest":{"nullable":true,"properties":{"name":{"type":"string","x-stream-index":"001"},"style":{"type":"string","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"004"},"value":{"type":"string","x-stream-index":"005"}},"type":"object"},"App":{"properties":{"agora_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.039"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.018"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.016"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.019"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.020"},"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallType"},"type":"object","x-stream-index":"001.006"},"campaign_enabled":{"type":"boolean","x-stream-index":"001.033"},"cdn_expiration_seconds":{"format":"int32","type":"integer","x-stream-index":"001.037"},"channel_configs":{"additionalProperties":{"$ref":"#/components/schemas/ChannelConfig"},"description":"Object with channel configs","title":"Channel configs","type":"object","x-stream-index":"001.005","x-stream-map":{"key":"channel_type"}},"custom_action_handler_url":{"type":"string","x-stream-index":"001.021"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfo","x-stream-index":"001.042"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.010"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.011"},"enforce_unique_usernames":{"type":"string","x-stream-index":"001.022"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.029"},"geofences":{"items":{"$ref":"#/components/schemas/GeofenceResponse"},"type":"array","x-stream-index":"001.041"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/Config","x-stream-index":"001.040"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.015"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.017"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfig","x-stream-index":"001.030"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.014"},"name":{"type":"string","x-stream-index":"001.001"},"organization":{"type":"string","x-stream-index":"001.002"},"permission_version":{"type":"string","x-stream-index":"001.012"},"policies":{"additionalProperties":{"items":{"$ref":"#/components/schemas/Policy"},"type":"array"},"type":"object","x-stream-index":"001.007"},"polls_enabled":{"type":"boolean","x-stream-index":"001.034"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationFields","x-stream-index":"001.003"},"reminders_interval":{"format":"int32","type":"integer","x-stream-index":"001.036"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.031"},"sns_key":{"type":"string","x-stream-index":"001.027"},"sns_secret":{"type":"string","x-stream-index":"001.028"},"sns_topic_arn":{"type":"string","x-stream-index":"001.026"},"sqs_key":{"type":"string","x-stream-index":"001.024"},"sqs_secret":{"type":"string","x-stream-index":"001.025"},"sqs_url":{"type":"string","x-stream-index":"001.023"},"suspended":{"type":"boolean","x-stream-index":"001.008"},"suspended_explanation":{"type":"string","x-stream-index":"001.009"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"video_provider":{"type":"string","x-stream-index":"001.038"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.035"},"webhook_url":{"type":"string","x-stream-index":"001.004"}},"required":["name","organization","push_notifications","webhook_url","channel_configs","call_types","policies","suspended","suspended_explanation","disable_auth_checks","disable_permissions_checks","permission_version","user_search_disallowed_roles","multi_tenant_enabled","image_moderation_enabled","async_url_enrich_enabled","custom_action_handler_url","enforce_unique_usernames","sqs_url","sqs_key","sqs_secret","sns_topic_arn","sns_key","sns_secret","file_upload_config","image_upload_config","grants","campaign_enabled","polls_enabled","webhook_events","reminders_interval","cdn_expiration_seconds","video_provider"],"type":"object"},"AsyncModerationCallbackConfigRequest":{"properties":{"mode":{"enum":["CALLBACK_MODE_NONE","CALLBACK_MODE_REST","CALLBACK_MODE_TWIRP"],"type":"string","x-stream-index":"002"},"server_url":{"type":"string","x-stream-index":"001"}},"type":"object"},"AsyncModerationConfigurationRequest":{"properties":{"callback":{"$ref":"#/components/schemas/AsyncModerationCallbackConfigRequest","x-stream-index":"002"},"timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"type":"object"},"Attachment":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"021"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"023"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"019"},"poll_id":{"type":"string","x-stream-index":"018"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url, poll)","title":"Type","type":"string","x-stream-index":"001"}},"required":["Custom"],"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AttachmentRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"actions":{"items":{"$ref":"#/components/schemas/ActionRequest"},"type":"array","x-stream-index":"015"},"asset_url":{"type":"string","x-stream-index":"017"},"author_icon":{"type":"string","x-stream-index":"007"},"author_link":{"type":"string","x-stream-index":"006"},"author_name":{"type":"string","x-stream-index":"005"},"color":{"type":"string","x-stream-index":"003"},"fallback":{"type":"string","x-stream-index":"002"},"fields":{"items":{"$ref":"#/components/schemas/FieldRequest"},"type":"array","x-stream-index":"016"},"footer":{"type":"string","x-stream-index":"013"},"footer_icon":{"type":"string","x-stream-index":"014"},"giphy":{"$ref":"#/components/schemas/ImagesRequest","x-stream-index":"021"},"image_url":{"type":"string","x-stream-index":"011"},"og_scrape_url":{"type":"string","x-stream-index":"022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"023"},"poll":{"$ref":"#/components/schemas/PollRequest","x-stream-index":"019"},"poll_id":{"type":"string","x-stream-index":"018"},"pretext":{"type":"string","x-stream-index":"004"},"text":{"type":"string","x-stream-index":"010"},"thumb_url":{"type":"string","x-stream-index":"012"},"title":{"type":"string","x-stream-index":"008"},"title_link":{"type":"string","x-stream-index":"009"},"type":{"description":"Attachment type (e.g. image, video, url, poll)","title":"Type","type":"string","x-stream-index":"001"}},"title":"Attachment","type":"object","x-stream-docs-page-id":"file_uploads"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettings","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AudioSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettingsRequest","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["default_device"],"type":"object"},"AutomodDetails":{"properties":{"action":{"type":"string","x-stream-index":"001"},"image_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"message_details":{"$ref":"#/components/schemas/FlagMessageDetails","x-stream-index":"004"},"original_message_type":{"type":"string","x-stream-index":"002"},"result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"003"}},"type":"object"},"AzureRequest":{"properties":{"abs_account_name":{"type":"string","x-stream-index":"001"},"abs_client_id":{"type":"string","x-stream-index":"003"},"abs_client_secret":{"type":"string","x-stream-index":"004"},"abs_tenant_id":{"type":"string","x-stream-index":"002"}},"required":["abs_account_name","abs_tenant_id","abs_client_id","abs_client_secret"],"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BackstageSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"BanRequest":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserRequest_1","description":"User who issued a ban","title":"Banned by","x-stream-index":"009"},"banned_by_id":{"description":"User ID who issued a ban","title":"Banned by ID","type":"string","x-stream-index":"008"},"id":{"description":"Channel ID to ban user in","title":"ID","type":"string","x-stream-index":"005"},"ip_ban":{"description":"Whether to perform IP ban or not","title":"IP ban","type":"boolean","x-stream-index":"007"},"reason":{"description":"Ban reason","title":"Reason","type":"string","x-stream-index":"003"},"shadow":{"description":"Whether to perform shadow ban or not","title":"Shadow","type":"boolean","x-stream-index":"006"},"target_user_id":{"description":"ID of user to ban","title":"Target user ID","type":"string","x-stream-index":"001"},"timeout":{"description":"Timeout of ban in minutes. User will be unbanned after this period of time","title":"Timeout","type":"integer","x-stream-index":"002"},"type":{"description":"Channel type to ban user in","title":"Type","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"010.002"},"user_id":{"type":"string","x-stream-index":"010.001"}},"required":["target_user_id"],"type":"object"},"BanResponse":{"nullable":true,"properties":{"banned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"expires":{"format":"date-time","type":"string","x-stream-index":"003"},"reason":{"type":"string","x-stream-index":"004"},"shadow":{"type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"required":["created_at"],"type":"object"},"BlockList":{"description":"Block list contains restricted words","nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"name":{"description":"Block list name","title":"Name","type":"string","x-stream-index":"006"},"type":{"description":"Block list type.","title":"Type","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"},"words":{"description":"List of words to block","items":{"type":"string"},"title":"Words","type":"array","x-stream-index":"008"}},"required":["name","type","words"],"title":"Block list","type":"object","x-stream-docs-page-id":"block_lists"},"BlockListOptions":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"required":["blocklist","behavior"],"type":"object"},"BlockListOptionsRequest":{"properties":{"behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"002"},"blocklist":{"type":"string","x-stream-index":"001"}},"type":"object"},"BlockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to block","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"BlockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"BroadcastSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettings","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"BroadcastSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsRequest","x-stream-index":"002"}},"type":"object"},"BroadcastSettingsResponse":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsResponse","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"CallEvent":{"nullable":true,"properties":{"description":{"type":"string","x-stream-index":"004"},"end_timestamp":{"format":"int64","type":"integer","x-stream-index":"002"},"severity":{"format":"int32","type":"integer","x-stream-index":"003"},"timestamp":{"format":"int32","type":"integer","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"005"}},"required":["timestamp","end_timestamp","severity","description","type"],"type":"object"},"CallIngressResponse":{"properties":{"rtmp":{"$ref":"#/components/schemas/RTMPIngress","x-stream-index":"001"}},"required":["rtmp"],"title":"Call inputs","type":"object"},"CallParticipantResponse":{"properties":{"joined_at":{"format":"date-time","type":"string","x-stream-index":"004"},"role":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_session_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_session_id","role","joined_at"],"type":"object"},"CallRecording":{"description":"CallRecording represents a recording of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the recording.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the recording.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the recording.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the recording.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallRequest":{"properties":{"created_by":{"$ref":"#/components/schemas/UserRequest_1","title":"The user that create this call","x-stream-index":"002"},"created_by_id":{"title":"The id of the user that create this call","type":"string","x-stream-index":"003"},"custom":{"type":"object","x-stream-index":"004"},"members":{"items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"type":"array","x-stream-index":"005"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"006"},"starts_at":{"format":"date-time","type":"string","x-stream-index":"007"},"team":{"type":"string","x-stream-index":"001"}},"type":"object"},"CallResponse":{"description":"Represents a call","properties":{"backstage":{"type":"boolean","x-stream-index":"015"},"blocked_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"017"},"cid":{"description":"The unique identifier for a call (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"004"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserResponse","description":"The user that created the call","title":"Created By","x-stream-index":"007"},"current_session_id":{"type":"string","x-stream-index":"005"},"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"008"},"egress":{"$ref":"#/components/schemas/EgressResponse","x-stream-index":"020"},"ended_at":{"description":"Date/time when the call ended","format":"date-time","title":"Ended At","type":"string","x-stream-index":"013"},"id":{"description":"Call ID","title":"ID","type":"string","x-stream-index":"003"},"ingress":{"$ref":"#/components/schemas/CallIngressResponse","x-stream-index":"018"},"recording":{"type":"boolean","x-stream-index":"011"},"session":{"$ref":"#/components/schemas/CallSessionResponse","x-stream-index":"019"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"016"},"starts_at":{"description":"Date/time when the call will start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"014"},"team":{"type":"string","x-stream-index":"006"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailResponse","x-stream-index":"021"},"transcribing":{"type":"boolean","x-stream-index":"012"},"type":{"description":"The type of call","title":"Type","type":"string","x-stream-index":"002"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"}},"required":["type","id","cid","current_session_id","created_by","custom","created_at","updated_at","recording","transcribing","backstage","settings","blocked_user_ids","ingress","egress"],"title":"Call","type":"object"},"CallSessionResponse":{"properties":{"accepted_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"007"},"ended_at":{"format":"date-time","type":"string","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"live_ended_at":{"format":"date-time","type":"string","x-stream-index":"009"},"live_started_at":{"format":"date-time","type":"string","x-stream-index":"008"},"participants":{"items":{"$ref":"#/components/schemas/CallParticipantResponse"},"type":"array","x-stream-index":"004"},"participants_count_by_role":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"005"},"rejected_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"006"},"started_at":{"format":"date-time","type":"string","x-stream-index":"002"}},"required":["id","participants","participants_count_by_role","rejected_by","accepted_by"],"type":"object"},"CallSettings":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettings","x-stream-index":"006"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"007"},"recording":{"$ref":"#/components/schemas/RecordSettings","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"009"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"004"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"003"}},"type":"object"},"CallSettingsRequest":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettingsRequest","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettingsRequest","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsRequest","x-stream-index":"009"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettingsRequest","x-stream-index":"003"},"recording":{"$ref":"#/components/schemas/RecordSettingsRequest","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettingsRequest","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettingsRequest","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettingsRequest","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettingsRequest","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettingsRequest","x-stream-index":"004"}},"type":"object"},"CallSettingsResponse":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsResponse","x-stream-index":"003"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"004"},"recording":{"$ref":"#/components/schemas/RecordSettingsResponse","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"009"}},"required":["audio","backstage","broadcasting","geofencing","recording","ring","screensharing","transcription","video","thumbnails"],"type":"object"},"CallStateResponseFields":{"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"members":{"description":"List of call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"002"},"membership":{"$ref":"#/components/schemas/MemberResponse","description":"Current user membership object","title":"Membership","x-stream-index":"003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"004"}},"required":["call","members","own_capabilities"],"type":"object"},"CallStatsReportSummaryResponse":{"properties":{"call_cid":{"type":"string","x-stream-index":"001"},"call_session_id":{"type":"string","x-stream-index":"002"},"call_status":{"type":"string","x-stream-index":"004"},"first_stats_time":{"format":"date-time","type":"string","x-stream-index":"003"}},"required":["call_cid","call_session_id","first_stats_time","call_status"],"type":"object"},"CallTimeline":{"properties":{"events":{"items":{"$ref":"#/components/schemas/CallEvent"},"type":"array","x-stream-index":"001"}},"required":["events"],"type":"object"},"CallTranscription":{"description":"CallTranscription represents a transcription of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the transcription.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the transcription.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the transcription.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the transcription.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallType":{"nullable":true,"properties":{"AppPK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"CreatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"005"},"ExternalStorage":{"type":"string","writeOnly":true,"x-stream-index":"009"},"Name":{"type":"string","writeOnly":true,"x-stream-index":"004"},"NotificationSettings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"008"},"PK":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"002"},"Settings":{"$ref":"#/components/schemas/CallSettings","x-stream-index":"007"},"UpdatedAt":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"006"}},"required":["PK","AppPK","Name","CreatedAt","UpdatedAt","ExternalStorage"],"type":"object"},"CallTypeResponse":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"external_storage":{"type":"string","x-stream-index":"007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at"],"type":"object"},"CastPollVoteRequest":{"nullable":true,"properties":{"poll_id":{"maxLength":255,"type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"},"vote":{"$ref":"#/components/schemas/VoteDataRequest","x-stream-index":"003"}},"required":["poll_id"],"type":"object"},"Channel":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"018"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"028"},"auto_translation_language":{"type":"string","x-stream-index":"029"},"cid":{"type":"string","x-stream-index":"003"},"config":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"025"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfig","x-stream-index":"026"},"cooldown":{"format":"int32","type":"integer","x-stream-index":"030"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"008"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"disabled":{"type":"boolean","x-stream-index":"017"},"frozen":{"type":"boolean","x-stream-index":"016"},"id":{"type":"string","x-stream-index":"004"},"invites":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"021"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"006"},"member_count":{"format":"int32","type":"integer","x-stream-index":"020"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"019"},"team":{"type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"015"},"type":{"type":"string","x-stream-index":"005"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"}},"required":["cid","id","type","created_at","updated_at","frozen","disabled","Custom","auto_translation_language"],"type":"object"},"ChannelConfig":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.025"},"blocklist":{"type":"string","x-stream-index":"001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.023"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"003"},"connect_events":{"type":"boolean","x-stream-index":"001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.012"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.018"},"message_retention":{"type":"string","x-stream-index":"001.017"},"mutes":{"type":"boolean","x-stream-index":"001.009"},"name":{"type":"string","x-stream-index":"001.001"},"polls":{"type":"boolean","x-stream-index":"001.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.013"},"quotes":{"type":"boolean","x-stream-index":"001.008"},"reactions":{"type":"boolean","x-stream-index":"001.006"},"read_events":{"type":"boolean","x-stream-index":"001.003"},"reminders":{"type":"boolean","x-stream-index":"001.014"},"replies":{"type":"boolean","x-stream-index":"001.007"},"search":{"type":"boolean","x-stream-index":"001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"002.004"},"uploads":{"type":"boolean","x-stream-index":"001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands"],"type":"object"},"ChannelConfigRequest":{"description":"Channel configuration overrides","properties":{"blocklist":{"type":"string","x-stream-index":"008"},"blocklist_behavior":{"enum":["flag","block"],"type":"string","x-stream-index":"009"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"010","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"max_message_length":{"description":"Overrides max message length","format":"int32","maximum":20000,"title":"Max Message Length","type":"integer","x-stream-index":"007"},"quotes":{"description":"Enables message quotes","title":"Quotes","type":"boolean","x-stream-index":"004"},"reactions":{"description":"Enables or disables reactions","title":"Reactions","type":"boolean","x-stream-index":"002"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"003"},"typing_events":{"description":"Enables or disables typing events","title":"Typing events","type":"boolean","x-stream-index":"001"},"uploads":{"description":"Enables or disables file uploads","title":"Uploads","type":"boolean","x-stream-index":"005"},"url_enrichment":{"description":"Enables or disables URL enrichment","title":"URL Enrichment","type":"boolean","x-stream-index":"006"}},"type":"object"},"ChannelConfigWithInfo":{"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.002.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.002.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.002.025"},"blocklist":{"type":"string","x-stream-index":"001.002.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.002.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.002.023"},"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.001.003"},"custom_events":{"type":"boolean","x-stream-index":"001.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"title":"Grants","type":"object","x-stream-index":"002","x-stream-map":{"key":"role","title":"Grants","description":"List of grants modifiers that apply to a role"}},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.002.018"},"message_retention":{"type":"string","x-stream-index":"001.002.017"},"mutes":{"type":"boolean","x-stream-index":"001.002.009"},"name":{"type":"string","x-stream-index":"001.002.001"},"polls":{"type":"boolean","x-stream-index":"001.002.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.002.013"},"quotes":{"type":"boolean","x-stream-index":"001.002.008"},"reactions":{"type":"boolean","x-stream-index":"001.002.006"},"read_events":{"type":"boolean","x-stream-index":"001.002.003"},"reminders":{"type":"boolean","x-stream-index":"001.002.014"},"replies":{"type":"boolean","x-stream-index":"001.002.007"},"search":{"type":"boolean","x-stream-index":"001.002.005"},"typing_events":{"type":"boolean","x-stream-index":"001.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.001.004"},"uploads":{"type":"boolean","x-stream-index":"001.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.002.011"}},"required":["created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelExportRequest":{"properties":{"cid":{"type":"string","x-stream-index":"003"},"id":{"description":"Channel ID","title":"ID","type":"string","x-stream-index":"002"},"messages_since":{"description":"Date to export messages since","format":"date-time","title":"Messages since","type":"string","x-stream-index":"004"},"messages_until":{"description":"Date to export messages until","format":"date-time","title":"Messages until","type":"string","x-stream-index":"005"},"type":{"description":"Channel type","title":"Type","type":"string","x-stream-index":"001"}},"title":"Channel Export","type":"object"},"ChannelGetOrCreateRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"004"},"hide_for_creator":{"description":"Whether this channel will be hidden for the user who created the channel or not","title":"Hide for creator","type":"boolean","x-stream-index":"008"},"members":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"011"},"messages":{"$ref":"#/components/schemas/MessagePaginationParamsRequest","x-stream-index":"010"},"state":{"description":"Refresh channel state","title":"State","type":"boolean","x-stream-index":"006"},"thread_unread_counts":{"type":"boolean","x-stream-index":"009"},"watchers":{"$ref":"#/components/schemas/PaginationParamsRequest","x-stream-index":"012"}},"type":"object"},"ChannelMember":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"required":["created_at","updated_at","banned","shadow_banned","channel_role","notifications_muted"],"title":"Channel member","type":"object"},"ChannelMemberRequest":{"nullable":true,"properties":{"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"016"},"banned":{"description":"Whether member is banned this channel or not","title":"Banned","type":"boolean","x-stream-index":"015"},"channel_role":{"description":"Role of the member in the channel","title":"Channel Role","type":"string","x-stream-index":"020"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"invite_accepted_at":{"description":"Date when invite was accepted","format":"date-time","title":"Invited accepted at","type":"string","x-stream-index":"008"},"invite_rejected_at":{"description":"Date when invite was rejected","format":"date-time","title":"Invited rejected at","type":"string","x-stream-index":"009"},"invited":{"description":"Whether member was invited or not","title":"Invited","type":"boolean","x-stream-index":"007"},"is_moderator":{"description":"Whether member is channel moderator or not","title":"Is moderator","type":"boolean","x-stream-index":"006"},"notifications_muted":{"type":"boolean","x-stream-index":"021"},"role":{"description":"Permission level of the member in the channel (DEPRECATED: use channel_role instead)","enum":["member","moderator","admin","owner"],"title":"Role","type":"string","x-stream-index":"019"},"shadow_banned":{"description":"Whether member is shadow banned in this channel or not","title":"Shadow banned","type":"boolean","x-stream-index":"018"},"status":{"type":"string","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"title":"User ID","type":"string","x-stream-index":"004"}},"title":"Channel member","type":"object"},"ChannelMute":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"007"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"ChannelRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"auto_translation_enabled":{"description":"Enable or disable auto translation","title":"Auto translation","type":"boolean","x-stream-index":"007"},"auto_translation_language":{"description":"Switch auto translation language","title":"Auto translation language","type":"string","x-stream-index":"008"},"config_overrides":{"$ref":"#/components/schemas/ChannelConfigRequest","x-stream-index":"026"},"disabled":{"type":"boolean","x-stream-index":"016"},"frozen":{"description":"Freeze or unfreeze the channel","title":"Frozen","type":"boolean","x-stream-index":"015"},"members":{"items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"type":"array","x-stream-index":"020"},"team":{"description":"Team the channel belongs to (if multi-tenant mode is enabled)","title":"Team","type":"string","x-stream-index":"006"},"truncated_by_id":{"type":"string","x-stream-index":"012"}},"type":"object"},"ChannelResponse":{"description":"Represents channel in chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"029"},"auto_translation_enabled":{"description":"Whether auto translation is enabled or not","title":"Auto translation","type":"boolean","x-stream-index":"021"},"auto_translation_language":{"description":"Language to translate to when auto translation is active","title":"Auto translation language","type":"string","x-stream-index":"022"},"cid":{"description":"Channel CID (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"005"},"config":{"$ref":"#/components/schemas/ChannelConfigWithInfo","description":"Channel configuration","title":"Config","x-stream-index":"017"},"cooldown":{"description":"Cooldown period after sending each message","format":"int32","title":"Cooldown","type":"integer","x-stream-index":"024"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"008"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Creator of the channel","title":"Created by","x-stream-index":"011"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"010"},"disabled":{"type":"boolean","x-stream-index":"013"},"frozen":{"description":"Whether channel is frozen or not","title":"Frozen","type":"boolean","x-stream-index":"012"},"hidden":{"description":"Whether this channel is hidden by current user or not","title":"Hidden","type":"boolean","x-stream-index":"026"},"hide_messages_before":{"description":"Date since when the message history is accessible","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"023"},"id":{"description":"Channel unique ID","title":"ID","type":"string","x-stream-index":"003"},"last_message_at":{"description":"Date of the last message sent","format":"date-time","title":"Last message at","type":"string","x-stream-index":"006"},"member_count":{"description":"Number of members in the channel","format":"int32","title":"Member count","type":"integer","x-stream-index":"015"},"members":{"description":"List of channel members (max 100)","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"014"},"mute_expires_at":{"description":"Date of mute expiration","format":"date-time","title":"Mute expires at","type":"string","x-stream-index":"019"},"muted":{"description":"Whether this channel is muted or not","title":"Muted","type":"boolean","x-stream-index":"018"},"own_capabilities":{"description":"List of channel capabilities of authenticated user","items":{"type":"string"},"title":"Own Capabilities","type":"array","x-stream-index":"025"},"team":{"description":"Team the channel belongs to (multi-tenant only)","title":"Team","type":"string","x-stream-index":"020"},"truncated_at":{"description":"Date of the latest truncation of the channel","format":"date-time","title":"Truncated At","type":"string","x-stream-index":"027"},"truncated_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"028"},"type":{"description":"Type of the channel","title":"Type","type":"string","x-stream-docs-page-id":"channel_features","x-stream-index":"004"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"009"}},"required":["id","type","cid","frozen","disabled","Custom"],"title":"Channel","type":"object"},"ChannelStateResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"hidden":{"type":"boolean","x-stream-index":"001.010"},"hide_messages_before":{"format":"date-time","type":"string","x-stream-index":"001.011"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"001.007"},"membership":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"001.008"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.002"},"pending_messages":{"items":{"$ref":"#/components/schemas/PendingMessage"},"type":"array","x-stream-index":"001.012"},"pinned_messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"001.003"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"001.006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"001.009"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"001.004"},"watchers":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.005"}},"required":["messages","pinned_messages","members","threads","duration"],"type":"object"},"ChannelStateResponseFields":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"hidden":{"description":"Whether this channel is hidden or not","title":"Hidden","type":"boolean","x-stream-index":"010"},"hide_messages_before":{"description":"Messages before this date are hidden from the user","format":"date-time","title":"Hide messages before","type":"string","x-stream-index":"011"},"members":{"description":"List of channel members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"007"},"membership":{"$ref":"#/components/schemas/ChannelMember","description":"Current user membership object","title":"Membership","x-stream-index":"008"},"messages":{"description":"List of channel messages","items":{"$ref":"#/components/schemas/Message"},"title":"Message","type":"array","x-stream-index":"002"},"pending_messages":{"description":"Pending messages that this user has sent","items":{"$ref":"#/components/schemas/PendingMessage"},"title":"Pending messages","type":"array","x-stream-index":"012"},"pinned_messages":{"description":"List of pinned messages in the channel","items":{"$ref":"#/components/schemas/Message"},"title":"Pinned messages","type":"array","x-stream-docs-page-id":"pinned_messages","x-stream-index":"003"},"read":{"description":"List of read states","items":{"$ref":"#/components/schemas/Read"},"title":"Read","type":"array","x-stream-index":"006"},"threads":{"items":{"$ref":"#/components/schemas/ThreadState"},"type":"array","x-stream-index":"009"},"watcher_count":{"description":"Number of channel watchers","format":"int32","title":"Watcher count","type":"integer","x-stream-index":"004"},"watchers":{"description":"List of user who is watching the channel","items":{"$ref":"#/components/schemas/UserObject"},"title":"Watchers","type":"array","x-stream-index":"005"}},"required":["messages","pinned_messages","members","threads"],"type":"object"},"ChannelTypeConfig":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"003.002.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"003.002.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.002.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"003.002.025"},"blocklist":{"type":"string","x-stream-index":"003.002.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.002.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"003.002.023"},"commands":{"description":"List of commands that channel supports","items":{"$ref":"#/components/schemas/Command"},"title":"Commands","type":"array","x-stream-index":"003.003"},"connect_events":{"type":"boolean","x-stream-index":"003.002.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.001.003"},"custom_events":{"type":"boolean","x-stream-index":"003.002.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"mark_messages_pending":{"type":"boolean","x-stream-index":"003.002.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"003.002.018"},"message_retention":{"type":"string","x-stream-index":"003.002.017"},"mutes":{"type":"boolean","x-stream-index":"003.002.009"},"name":{"type":"string","x-stream-index":"003.002.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"001"},"polls":{"type":"boolean","x-stream-index":"003.002.016"},"push_notifications":{"type":"boolean","x-stream-index":"003.002.013"},"quotes":{"type":"boolean","x-stream-index":"003.002.008"},"reactions":{"type":"boolean","x-stream-index":"003.002.006"},"read_events":{"type":"boolean","x-stream-index":"003.002.003"},"reminders":{"type":"boolean","x-stream-index":"003.002.014"},"replies":{"type":"boolean","x-stream-index":"003.002.007"},"search":{"type":"boolean","x-stream-index":"003.002.005"},"typing_events":{"type":"boolean","x-stream-index":"003.002.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"003.001.004"},"uploads":{"type":"boolean","x-stream-index":"003.002.010"},"url_enrichment":{"type":"boolean","x-stream-index":"003.002.011"}},"required":["permissions","grants","created_at","updated_at","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","commands"],"type":"object"},"ChannelsResponse":{"nullable":true,"properties":{"channels":{"description":"List of channels","items":{"$ref":"#/components/schemas/ChannelStateResponseFields"},"title":"Channels","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channels","duration"],"title":"Channels list","type":"object"},"CheckExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"CheckPushRequest":{"nullable":true,"properties":{"apn_template":{"description":"Push message template for APN","title":"APN template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"002"},"firebase_data_template":{"description":"Push message data template for Firebase","title":"Firebase data template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"004"},"firebase_template":{"description":"Push message template for Firebase","title":"Firebase template","type":"string","x-stream-docs-page-id":"push_template","x-stream-index":"003"},"message_id":{"description":"Message ID to send push notification for","title":"Message ID","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of push provider","title":"Name of push provider","type":"string","x-stream-index":"007"},"push_provider_type":{"description":"Push provider type","enum":["firebase","apn","huawei","xiaomi"],"title":"Type of push provider","type":"string","x-stream-index":"006"},"skip_devices":{"description":"Don't require existing devices to render templates","title":"Skip devices","type":"boolean","x-stream-index":"005"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"008.002"},"user_id":{"type":"string","x-stream-index":"008.001"}},"type":"object"},"CheckPushResponse":{"nullable":true,"properties":{"device_errors":{"additionalProperties":{"$ref":"#/components/schemas/DeviceErrorInfo"},"description":"Object with device errors","title":"Device errors","type":"object","x-stream-index":"001","x-stream-map":{"key":"device_id"}},"duration":{"type":"string","x-stream-index":"007.001"},"general_errors":{"description":"List of general errors","items":{"type":"string"},"title":"General errors","type":"array","x-stream-index":"002"},"rendered_apn_template":{"title":"Rendered APN template","type":"string","x-stream-index":"004"},"rendered_firebase_template":{"title":"Rendered Firebase template","type":"string","x-stream-index":"005"},"rendered_message":{"additionalProperties":{"type":"string"},"title":"Rendered message","type":"object","x-stream-index":"006"},"skip_devices":{"description":"Don't require existing devices to render templates","title":"Skip devices","type":"boolean","x-stream-index":"003"}},"required":["duration"],"type":"object"},"CheckSNSRequest":{"nullable":true,"properties":{"sns_key":{"description":"AWS SNS access key","title":"SNS key","type":"string","x-stream-index":"002"},"sns_secret":{"description":"AWS SNS key secret","title":"SNS secret","type":"string","x-stream-index":"003"},"sns_topic_arn":{"description":"AWS SNS topic ARN","title":"SNS Topic ARN","type":"string","x-stream-index":"001"}},"type":"object"},"CheckSNSResponse":{"nullable":true,"properties":{"data":{"description":"Error data","title":"ReadOnlyData","type":"object","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"description":"Error text","title":"Error","type":"string","x-stream-index":"002"},"status":{"description":"Validation result","enum":["ok","error"],"title":"Status","type":"string","x-stream-index":"001"}},"required":["status","duration"],"type":"object"},"CheckSQSRequest":{"nullable":true,"properties":{"sqs_key":{"description":"AWS SQS access key","title":"SQS key","type":"string","x-stream-index":"002"},"sqs_secret":{"description":"AWS SQS key secret","title":"SQS secret","type":"string","x-stream-index":"003"},"sqs_url":{"description":"AWS SQS endpoint URL","title":"SQS URL","type":"string","x-stream-index":"001"}},"type":"object"},"CheckSQSResponse":{"nullable":true,"properties":{"data":{"description":"Error data","title":"ReadOnlyData","type":"object","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"description":"Error text","title":"Error","type":"string","x-stream-index":"002"},"status":{"description":"Validation result","enum":["ok","error"],"title":"Status","type":"string","x-stream-index":"001"}},"required":["status","duration"],"type":"object"},"CollectUserFeedbackRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"009"},"rating":{"format":"int32","maximum":5,"minimum":1,"type":"integer","x-stream-index":"007"},"reason":{"maxLength":1000,"type":"string","x-stream-index":"008"},"sdk":{"maxLength":50,"type":"string","x-stream-index":"005"},"sdk_version":{"maxLength":50,"type":"string","x-stream-index":"006"},"user_session_id":{"maxLength":50,"type":"string","x-stream-index":"004"}},"required":["user_session_id","sdk","sdk_version"],"type":"object"},"CollectUserFeedbackResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Command":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","title":"Arguments","type":"string","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"001"},"description":{"description":"Description, shown in commands auto-completion","title":"Description","type":"string","x-stream-index":"005"},"name":{"description":"Unique command name","title":"Name","type":"string","x-stream-index":"004"},"set":{"description":"Set name used for grouping commands","title":"Set","type":"string","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"002"}},"required":["name","description","args","set"],"title":"Command","type":"object"},"CommitMessageRequest":{"nullable":true,"type":"object"},"Config":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConfigRequest":{"properties":{"app_certificate":{"type":"string","x-stream-index":"002"},"app_id":{"type":"string","x-stream-index":"001"},"default_role":{"enum":["attendee","publisher","subscriber","admin"],"type":"string","x-stream-index":"003"},"role_map":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"004"}},"required":["app_id","app_certificate"],"type":"object"},"ConnectRequest":{"properties":{"device":{"$ref":"#/components/schemas/DeviceFields","x-stream-index":"001.002"},"user_details":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["user_details"],"type":"object"},"Coordinates":{"properties":{"latitude":{"format":"float","type":"number","x-stream-index":"001"},"longitude":{"format":"float","type":"number","x-stream-index":"002"}},"required":["latitude","longitude"],"type":"object"},"CreateBlockListRequest":{"description":"Block list contains restricted words","nullable":true,"properties":{"name":{"description":"Block list name","maxLength":255,"title":"Name","type":"string","x-stream-index":"001"},"type":{"description":"Block list type.","enum":["regex","domain","email","word"],"title":"Type","type":"string","x-stream-index":"003"},"words":{"description":"List of words to block","items":{"type":"string"},"minimum":1,"title":"Words","type":"array","x-stream-index":"002"}},"required":["name","words"],"title":"Block list","type":"object","x-stream-docs-page-id":"block_lists"},"CreateCallTypeRequest":{"nullable":true,"properties":{"external_storage":{"type":"string","x-stream-index":"002.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettingsRequest","x-stream-index":"002.002"},"settings":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"002.003"}},"required":["name"],"type":"object"},"CreateCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"CreateChannelTypeRequest":{"nullable":true,"properties":{"automod":{"description":"Enables automatic message moderation","enum":["disabled","simple","AI"],"title":"Auto moderation","type":"string","x-stream-index":"017"},"automod_behavior":{"description":"Sets behavior of automatic moderation","enum":["flag","block"],"title":"Auto moderation behavior","type":"string","x-stream-index":"018"},"blocklist":{"description":"Name of the blocklist to use","title":"Blocklist","type":"string","x-stream-index":"022"},"blocklist_behavior":{"description":"Sets behavior of blocklist","enum":["flag","block","shadow_block"],"title":"Blocklist behavior","type":"string","x-stream-index":"023"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptionsRequest"},"type":"array","x-stream-index":"024"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"019"},"connect_events":{"description":"Connect events support","title":"Connect events","type":"boolean","x-stream-index":"004"},"custom_events":{"description":"Enables custom events","title":"Custom events","type":"boolean","x-stream-index":"011"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"021"},"mark_messages_pending":{"description":"Marks messages as pending by default","title":"Mark messages pending","type":"boolean","x-stream-index":"013"},"max_message_length":{"description":"Number of maximum message characters","format":"int32","title":"Maximum message length","type":"integer","x-stream-index":"016"},"mutes":{"description":"Enables mutes","title":"Mutes","type":"boolean","x-stream-index":"008"},"name":{"description":"Channel type name","title":"Name","type":"string","x-stream-index":"001"},"permissions":{"description":"List of permissions for the channel type","items":{"$ref":"#/components/schemas/PolicyRequest_1"},"title":"Permissions","type":"array","x-stream-index":"020"},"polls":{"description":"Enables polls","title":"Polls","type":"boolean","x-stream-index":"014"},"push_notifications":{"description":"Enables push notifications","title":"Push notifications","type":"boolean","x-stream-index":"012"},"reactions":{"description":"Enables message reactions","title":"Reactions","type":"boolean","x-stream-index":"005"},"read_events":{"description":"Read events support","title":"Read events","type":"boolean","x-stream-index":"003"},"replies":{"description":"Enables message replies (threads)","title":"Replies","type":"boolean","x-stream-index":"006"},"search":{"description":"Enables message search","title":"Search","type":"boolean","x-stream-index":"007"},"typing_events":{"description":"Typing events support","title":"Typing events","type":"boolean","x-stream-index":"002"},"uploads":{"description":"Enables file uploads","title":"Uploads","type":"boolean","x-stream-index":"009"},"url_enrichment":{"description":"Enables URL enrichment","title":"URL enrichment","type":"boolean","x-stream-index":"010"}},"required":["name","automod"],"type":"object"},"CreateChannelTypeResponse":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"001.001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"001.001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.001.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"001.001.025"},"blocklist":{"type":"string","x-stream-index":"001.001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"001.001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"001.001.023"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"001.003"},"connect_events":{"type":"boolean","x-stream-index":"001.001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002.003"},"custom_events":{"type":"boolean","x-stream-index":"001.001.012"},"duration":{"type":"string","x-stream-index":"004.001"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"003"},"mark_messages_pending":{"type":"boolean","x-stream-index":"001.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"001.001.018"},"message_retention":{"type":"string","x-stream-index":"001.001.017"},"mutes":{"type":"boolean","x-stream-index":"001.001.009"},"name":{"type":"string","x-stream-index":"001.001.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"002"},"polls":{"type":"boolean","x-stream-index":"001.001.016"},"push_notifications":{"type":"boolean","x-stream-index":"001.001.013"},"quotes":{"type":"boolean","x-stream-index":"001.001.008"},"reactions":{"type":"boolean","x-stream-index":"001.001.006"},"read_events":{"type":"boolean","x-stream-index":"001.001.003"},"reminders":{"type":"boolean","x-stream-index":"001.001.014"},"replies":{"type":"boolean","x-stream-index":"001.001.007"},"search":{"type":"boolean","x-stream-index":"001.001.005"},"typing_events":{"type":"boolean","x-stream-index":"001.001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.002.004"},"uploads":{"type":"boolean","x-stream-index":"001.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"001.001.011"}},"required":["name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands","permissions","grants","duration"],"type":"object"},"CreateCommandRequest":{"description":"Represents custom chat command","nullable":true,"properties":{"args":{"description":"Arguments help text, shown in commands auto-completion","maxLength":255,"title":"Arguments","type":"string","x-stream-index":"003"},"description":{"description":"Description, shown in commands auto-completion","maxLength":255,"title":"Description","type":"string","x-stream-index":"002"},"name":{"description":"Unique command name","maxLength":255,"minLength":1,"title":"Name","type":"string","x-stream-index":"001"},"set":{"description":"Set name used for grouping commands","maxLength":255,"title":"Set","type":"string","x-stream-index":"004"}},"required":["name","description"],"title":"Command","type":"object"},"CreateCommandResponse":{"nullable":true,"properties":{"command":{"$ref":"#/components/schemas/Command","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreateExternalStorageRequest":{"nullable":true,"properties":{"aws_s3":{"$ref":"#/components/schemas/S3Request","x-stream-index":"003.004"},"azure_blob":{"$ref":"#/components/schemas/AzureRequest","x-stream-index":"003.006"},"bucket":{"type":"string","x-stream-index":"003.002"},"gcs_credentials":{"type":"string","x-stream-index":"003.005"},"name":{"type":"string","x-stream-index":"001"},"path":{"type":"string","x-stream-index":"003.003"},"storage_type":{"type":"string","x-stream-index":"003.001"}},"required":["name","storage_type","bucket"],"type":"object"},"CreateExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"CreateImportRequest":{"nullable":true,"properties":{"mode":{"enum":["insert","upsert"],"type":"string","x-stream-index":"002"},"path":{"type":"string","x-stream-index":"001"}},"required":["path"],"type":"object"},"CreateImportResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_task":{"$ref":"#/components/schemas/ImportTask","x-stream-index":"001"}},"required":["duration"],"type":"object"},"CreateImportURLRequest":{"nullable":true,"properties":{"filename":{"type":"string","x-stream-index":"001"}},"type":"object"},"CreateImportURLResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"path":{"type":"string","x-stream-index":"001"},"upload_url":{"type":"string","x-stream-index":"002"}},"required":["path","upload_url","duration"],"type":"object"},"CreatePollOptionRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"position":{"format":"int32","type":"integer","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"}},"required":["poll_id","text"],"type":"object"},"CreatePollRequest":{"description":"Contains all information needed to create a new poll","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"011"},"allow_answers":{"description":"Indicates whether users can suggest user defined answers","title":"Allow answers","type":"boolean","x-stream-index":"009"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"008"},"description":{"description":"A description of the poll","title":"Description","type":"string","x-stream-index":"003"},"enforce_unique_vote":{"description":"Indicates whether users can cast multiple votes","title":"Multiple choice","type":"boolean","x-stream-index":"006"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"is_closed":{"description":"Indicates whether the poll is open for voting","title":"Is closed","type":"boolean","x-stream-index":"010"},"max_votes_allowed":{"description":"Indicates the maximum amount of votes a user can cast","format":"int32","maximum":10,"title":"Maximum votes allowed","type":"integer","x-stream-index":"007"},"name":{"description":"The name of the poll","title":"Name","type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest_1"},"maximum":100,"type":"array","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"012.002"},"user_id":{"type":"string","x-stream-index":"012.001"},"voting_visibility":{"enum":["anonymous","public"],"type":"string","x-stream-index":"005"}},"required":["name"],"title":"Create Poll Request","type":"object"},"CreateRoleRequest":{"nullable":true,"properties":{"name":{"description":"Role name","maxLength":64,"title":"Name","type":"string","x-stream-index":"001"}},"required":["name"],"type":"object"},"CreateRoleResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"role":{"$ref":"#/components/schemas/Role","x-stream-index":"002"}},"required":["duration","role"],"type":"object"},"DataDogInfo":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"required":["api_key","site","enabled"],"type":"object"},"DataDogInfoRequest":{"properties":{"api_key":{"type":"string","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"003"},"site":{"type":"string","x-stream-index":"002"}},"type":"object"},"DeactivateUserRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who deactivated the user","title":"Created by ID","type":"string","x-stream-index":"003"},"mark_messages_deleted":{"description":"Makes messages appear to be deleted","title":"Mark messages deleted","type":"boolean","x-stream-index":"002"},"user_id":{"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"DeactivateUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["duration"],"type":"object"},"DeactivateUsersRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who deactivated the users","title":"Created by ID","type":"string","x-stream-index":"003"},"mark_messages_deleted":{"description":"Makes messages appear to be deleted","title":"Mark messages deleted","type":"boolean","x-stream-index":"002"},"user_ids":{"description":"User IDs to deactivate","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"DeactivateUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"DeleteChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteChannelsRequest":{"nullable":true,"properties":{"cids":{"description":"All channels that should be deleted","items":{"type":"string"},"maximum":100,"minimum":1,"title":"Channels CID","type":"array","x-stream-index":"001"},"hard_delete":{"description":"Specify if channels and all ressources should be hard deleted","title":"Hard delete","type":"boolean","x-stream-index":"002"}},"type":"object"},"DeleteChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"result":{"additionalProperties":{"$ref":"#/components/schemas/DeleteChannelsResult"},"type":"object","x-stream-index":"001"},"task_id":{"type":"string","x-stream-index":"002"}},"required":["duration"],"type":"object"},"DeleteChannelsResult":{"nullable":true,"properties":{"error":{"type":"string","x-stream-index":"003"},"status":{"type":"string","x-stream-index":"002"}},"required":["status"],"type":"object"},"DeleteCommandResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001"}},"required":["name","duration"],"type":"object"},"DeleteExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"DeleteUsersRequest":{"nullable":true,"properties":{"calls":{"enum":["soft","hard"],"type":"string","x-stream-index":"001.002.004"},"conversations":{"description":"Conversation channels delete mode.\nConversation channel is any channel which only has two members one of which is the user being deleted.\n\n* null or empty string - doesn't delete any conversation channels\n* soft - marks all conversation channels as deleted (same effect as Delete Channels with 'hard' option disabled)\n* hard - deletes channel and all its data completely including messages (same effect as Delete Channels with 'hard' option enabled)\n","enum":["soft","hard"],"title":"Delete Conversations","type":"string","x-stream-index":"001.002.003"},"messages":{"description":"Message delete mode.\n\n* null or empty string - doesn't delete user messages\n* soft - marks all user messages as deleted without removing any related message data\n* pruning - marks all user messages as deleted, nullifies message information and removes some message data such as reactions and flags\n* hard - deletes messages completely with all related information\n","enum":["soft","pruning","hard"],"title":"Delete Messages","type":"string","x-stream-index":"001.002.002"},"new_call_owner_id":{"type":"string","x-stream-index":"001.002.006"},"new_channel_owner_id":{"type":"string","x-stream-index":"001.002.005"},"user":{"description":"User delete mode.\n\n* soft - marks user as deleted and retains all user data\n* pruning - marks user as deleted and nullifies user information\n* hard - deletes user completely. Requires 'hard' option for messages and conversations as well\n","enum":["soft","pruning","hard"],"title":"Delete User","type":"string","x-stream-index":"001.002.001"},"user_ids":{"description":"IDs of users to delete","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001.001"}},"required":["user_ids"],"type":"object"},"DeleteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"Device":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"disabled":{"description":"Whether device is disabled or not","title":"Disabled","type":"boolean","x-stream-index":"005"},"disabled_reason":{"description":"Reason explaining why device had been disabled","title":"Reason","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"003"},"push_provider":{"type":"string","x-stream-index":"001"},"push_provider_name":{"type":"string","x-stream-index":"002"},"voip":{"description":"When true the token is for Apple VoIP push notifications","title":"Voip","type":"boolean","x-stream-index":"007"}},"required":["push_provider","id","created_at"],"title":"Device","type":"object"},"DeviceErrorInfo":{"properties":{"error_message":{"type":"string","x-stream-index":"003"},"provider":{"type":"string","x-stream-index":"001"},"provider_name":{"type":"string","x-stream-index":"002"}},"required":["provider","provider_name","error_message"],"type":"object"},"DeviceFields":{"properties":{"id":{"description":"Device ID","title":"ID","type":"string","x-stream-index":"004"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"title":"Push provider","type":"string","x-stream-index":"001"},"push_provider_name":{"description":"Name of the push provider configuration","title":"Push provider name","type":"string","x-stream-index":"003"},"voip":{"type":"boolean","x-stream-index":"005"}},"required":["push_provider","id"],"type":"object"},"EdgeResponse":{"properties":{"continent_code":{"type":"string","x-stream-index":"007.003"},"country_iso_code":{"type":"string","x-stream-index":"007.002"},"green":{"format":"int32","type":"integer","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"latency_test_url":{"type":"string","x-stream-index":"002"},"latitude":{"format":"float","type":"number","x-stream-index":"006.001"},"longitude":{"format":"float","type":"number","x-stream-index":"006.002"},"red":{"format":"int32","type":"integer","x-stream-index":"005"},"subdivision_iso_code":{"type":"string","x-stream-index":"007.001"},"yellow":{"format":"int32","type":"integer","x-stream-index":"004"}},"required":["id","latency_test_url","green","yellow","red","latitude","longitude","subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"EgressHLSResponse":{"properties":{"playlist_url":{"type":"string","x-stream-index":"001"}},"required":["playlist_url"],"type":"object"},"EgressRTMPResponse":{"properties":{"name":{"type":"string","x-stream-index":"001"},"stream_key":{"type":"string","x-stream-index":"003"},"url":{"type":"string","x-stream-index":"002"}},"required":["name","url","stream_key"],"type":"object"},"EgressResponse":{"properties":{"broadcasting":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/EgressHLSResponse","x-stream-index":"002"},"rtmps":{"items":{"$ref":"#/components/schemas/EgressRTMPResponse"},"type":"array","x-stream-index":"003"}},"required":["broadcasting","rtmps"],"type":"object"},"EndCallRequest":{"nullable":true,"type":"object"},"EndCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ErrorResult":{"properties":{"stacktrace":{"type":"string","x-stream-index":"003"},"type":{"type":"string","x-stream-index":"001"},"version":{"type":"string","x-stream-index":"004"}},"required":["type","description"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventNotificationSettingsRequest":{"properties":{"apns":{"$ref":"#/components/schemas/APNSRequest","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"EventRequest":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"002"},"type":{"type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["type"],"type":"object"},"EventResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/WSEvent","x-stream-index":"001"}},"required":["event","duration"],"type":"object"},"ExportChannelsRequest":{"nullable":true,"properties":{"channels":{"description":"Export options for channels","items":{"$ref":"#/components/schemas/ChannelExportRequest"},"maximum":25,"minimum":1,"title":"Channels","type":"array","x-stream-index":"002.001"},"clear_deleted_message_text":{"description":"Set if deleted message text should be cleared","title":"Clear deleted message text","type":"boolean","x-stream-index":"002.002"},"export_users":{"type":"boolean","x-stream-index":"002.004"},"include_truncated_messages":{"description":"Set if you want to include truncated messages","title":"Include truncated messages","type":"boolean","x-stream-index":"002.003"},"version":{"type":"string","x-stream-index":"001"}},"type":"object"},"ExportChannelsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"ExportChannelsResult":{"properties":{"path":{"description":"S3 path of result","title":"PathPrefix","type":"string","x-stream-index":"002"},"s3_bucket_name":{"description":"S3 bucket name result","title":"S3 bucket name","type":"string","x-stream-index":"003"},"url":{"description":"URL of result","title":"URL","type":"string","x-stream-index":"001"}},"required":["url"],"type":"object"},"ExportUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"messages":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["duration"],"type":"object"},"ExportUsersRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":25,"minimum":1,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"ExportUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"task_id":{"type":"string","x-stream-index":"001"}},"required":["task_id","duration"],"type":"object"},"ExternalStorageResponse":{"properties":{"bucket":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"path":{"type":"string","x-stream-index":"004"},"type":{"type":"string","x-stream-index":"002"}},"required":["name","type","bucket","path"],"type":"object"},"Field":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"required":["title","value","short"],"type":"object"},"FieldRequest":{"nullable":true,"properties":{"short":{"type":"boolean","x-stream-index":"003"},"title":{"type":"string","x-stream-index":"001"},"value":{"type":"string","x-stream-index":"002"}},"type":"object"},"FileDeleteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"FileUploadConfig":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"required":["allowed_file_extensions","blocked_file_extensions","allowed_mime_types","blocked_mime_types","size_limit"],"type":"object"},"FileUploadConfigRequest":{"properties":{"allowed_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"allowed_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"blocked_file_extensions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"blocked_mime_types":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"size_limit":{"format":"int32","maximum":104857600,"minimum":0,"type":"integer","x-stream-index":"005"}},"type":"object"},"FileUploadRequest":{"nullable":true,"properties":{"file":{"description":"file field","title":"File","type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","description":"user for the request **server side only**","title":"User","x-stream-index":"003"}},"type":"object"},"FileUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"003"}},"required":["duration"],"type":"object"},"FirebaseConfigFields":{"properties":{"apn_template":{"type":"string","x-stream-index":"004"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"003"},"enabled":{"type":"boolean","x-stream-index":"001"},"notification_template":{"type":"string","x-stream-index":"002"},"server_key":{"type":"string","x-stream-index":"005"}},"required":["enabled","notification_template","data_template","apn_template"],"type":"object"},"FirebaseConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"001"},"apn_template":{"type":"string","x-stream-index":"005"},"credentials_json":{"type":"string","x-stream-index":"006"},"data_template":{"type":"string","x-stream-index":"004"},"notification_template":{"type":"string","x-stream-index":"003"},"server_key":{"type":"string","x-stream-index":"002"}},"type":"object"},"Flag":{"description":"Contains information about flagged user or message","properties":{"approved_at":{"description":"Date of the approval","format":"date-time","title":"Approved at","type":"string","x-stream-index":"015"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"011"},"created_by_automod":{"type":"boolean","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"022"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"021"},"reason":{"type":"string","x-stream-index":"020"},"rejected_at":{"description":"Date of the rejection","format":"date-time","title":"Rejected at","type":"string","x-stream-index":"016"},"reviewed_at":{"description":"Date of the review","format":"date-time","title":"Reviewed at","type":"string","x-stream-index":"013"},"target_message":{"$ref":"#/components/schemas/Message","x-stream-index":"008"},"target_message_id":{"description":"ID of flagged message","title":"Target Message ID","type":"string","x-stream-index":"007"},"target_user":{"$ref":"#/components/schemas/UserObject","description":"Flagged user","title":"User","x-stream-index":"010"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"012"},"user":{"$ref":"#/components/schemas/UserObject","description":"User who flagged a message or a user","title":"User","x-stream-index":"006"}},"required":["created_by_automod","created_at","updated_at"],"title":"Flag","type":"object"},"FlagDetails":{"properties":{"Extra":{"type":"object","writeOnly":true,"x-stream-index":"002"},"automod":{"$ref":"#/components/schemas/AutomodDetails","x-stream-index":"001"},"original_text":{"type":"string","x-stream-index":"003"}},"required":["Extra","original_text"],"type":"object"},"FlagFeedback":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"labels":{"items":{"$ref":"#/components/schemas/Label"},"type":"array","x-stream-index":"006"},"message_id":{"type":"string","x-stream-index":"004"}},"required":["message_id","created_at","labels"],"type":"object"},"FlagMessageDetails":{"properties":{"pin_changed":{"type":"boolean","x-stream-index":"002"},"should_enrich":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"004"},"updated_by_id":{"type":"string","x-stream-index":"001"}},"type":"object"},"FlagRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"004"},"reason":{"maxLength":255,"type":"string","x-stream-index":"003"},"target_message_id":{"description":"ID of the message when reporting a message","title":"Target Message ID","type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"}},"type":"object"},"FlagResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flag":{"$ref":"#/components/schemas/Flag","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GeofenceResponse":{"nullable":true,"properties":{"country_codes":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"}},"required":["name"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GeofenceSettingsRequest":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"type":"object"},"GeolocationResult":{"properties":{"AccuracyRadius":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"continent_code":{"type":"string","x-stream-index":"002.003"},"country_iso_code":{"type":"string","x-stream-index":"002.002"},"latitude":{"format":"float","type":"number","x-stream-index":"001.001"},"longitude":{"format":"float","type":"number","x-stream-index":"001.002"},"subdivision_iso_code":{"type":"string","x-stream-index":"002.001"}},"required":["latitude","longitude","subdivision_iso_code","country_iso_code","continent_code","AccuracyRadius"],"type":"object"},"GetApplicationResponse":{"nullable":true,"properties":{"app":{"$ref":"#/components/schemas/App","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["app","duration"],"type":"object"},"GetBlockListResponse":{"nullable":true,"properties":{"blocklist":{"$ref":"#/components/schemas/BlockList","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"GetCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"type":"object"},"GetCallStatsResponse":{"nullable":true,"properties":{"average_jitter":{"format":"float","type":"number","x-stream-index":"005"},"average_latency":{"format":"float","type":"number","x-stream-index":"004"},"call_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"002"},"call_timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"014"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"max_jitter":{"format":"float","type":"number","x-stream-index":"007"},"max_latency":{"format":"float","type":"number","x-stream-index":"006"},"max_participants":{"format":"int32","type":"integer","x-stream-index":"008"},"participant_report":{"additionalProperties":{"$ref":"#/components/schemas/UserStats"},"type":"object","x-stream-index":"015"},"publishing_participants":{"format":"int32","type":"integer","x-stream-index":"009"},"quality_score":{"format":"int32","type":"integer","x-stream-index":"003"},"sfu_count":{"format":"int32","type":"integer","x-stream-index":"010"},"sfus":{"items":{"$ref":"#/components/schemas/SFULocationResponse"},"type":"array","x-stream-index":"013"},"total_freezes_duration":{"format":"float","type":"number","x-stream-index":"012"},"total_quality_limitation_duration":{"format":"float","type":"number","x-stream-index":"011"}},"required":["duration","call_duration_seconds","quality_score","average_latency","average_jitter","max_latency","max_jitter","max_participants","publishing_participants","sfu_count","total_quality_limitation_duration","total_freezes_duration","sfus","participant_report"],"type":"object"},"GetCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"GetCommandResponse":{"nullable":true,"properties":{"args":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.001"},"description":{"type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001.004"},"set":{"type":"string","x-stream-index":"001.007"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.002"}},"required":["name","description","args","set","duration"],"type":"object"},"GetCustomPermissionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"permission":{"$ref":"#/components/schemas/Permission","x-stream-index":"001"}},"required":["permission","duration"],"type":"object"},"GetEdgesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"edges":{"items":{"$ref":"#/components/schemas/EdgeResponse"},"type":"array","x-stream-index":"001"}},"required":["edges","duration"],"type":"object"},"GetExportChannelsStatusResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"001.007.001"},"error":{"$ref":"#/components/schemas/ErrorResult","description":"Contains task error in case of failure","title":"Error","x-stream-index":"003"},"result":{"$ref":"#/components/schemas/ExportChannelsResult","description":"Contains task result in case of success","title":"Result","x-stream-index":"002"},"status":{"type":"string","x-stream-index":"001.002"},"task_id":{"type":"string","x-stream-index":"001.001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.004"}},"required":["task_id","status","created_at","updated_at","duration"],"type":"object"},"GetImportResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_task":{"$ref":"#/components/schemas/ImportTask","x-stream-index":"001"}},"required":["duration"],"type":"object"},"GetManyMessagesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetOGResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.020"},"actions":{"items":{"$ref":"#/components/schemas/Action"},"type":"array","x-stream-index":"001.015"},"asset_url":{"description":"URL of detected video or audio","title":"Image URL","type":"string","x-stream-index":"001.017"},"author_icon":{"type":"string","x-stream-index":"001.007"},"author_link":{"description":"og:site","title":"Author Link","type":"string","x-stream-index":"001.006"},"author_name":{"description":"og:site_name","title":"Author Name","type":"string","x-stream-index":"001.005"},"color":{"type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"002.001"},"fallback":{"type":"string","x-stream-index":"001.002"},"fields":{"items":{"$ref":"#/components/schemas/Field"},"type":"array","x-stream-index":"001.016"},"footer":{"type":"string","x-stream-index":"001.013"},"footer_icon":{"type":"string","x-stream-index":"001.014"},"giphy":{"$ref":"#/components/schemas/Images","x-stream-index":"001.021"},"image_url":{"description":"URL of detected image","title":"Image URL","type":"string","x-stream-index":"001.011"},"og_scrape_url":{"description":"extracted url from the text","title":"OG Scrape URL","type":"string","x-stream-index":"001.022"},"original_height":{"format":"int32","type":"integer","x-stream-index":"001.024"},"original_width":{"format":"int32","type":"integer","x-stream-index":"001.023"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001.019"},"poll_id":{"type":"string","x-stream-index":"001.018"},"pretext":{"type":"string","x-stream-index":"001.004"},"text":{"description":"og:description","title":"Text","type":"string","x-stream-index":"001.010"},"thumb_url":{"description":"URL of detected thumb image","title":"Image URL","type":"string","x-stream-index":"001.012"},"title":{"description":"og:title","title":"Title","type":"string","x-stream-index":"001.008"},"title_link":{"description":"og:url","title":"Title Link","type":"string","x-stream-index":"001.009"},"type":{"description":"Attachment type, could be empty, image, audio or video","title":"Type","type":"string","x-stream-index":"001.001"}},"required":["Custom","duration"],"title":"Get OG Attachment","type":"object","x-stream-docs-page-id":"og"},"GetOrCreateCallRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/CallRequest","title":"ReadOnlyData","x-stream-index":"003"},"members_limit":{"format":"int32","maximum":100,"type":"integer","x-stream-index":"006"},"notify":{"description":"if provided it sends a notification event to the members for this call","title":"Notify","type":"boolean","x-stream-index":"005"},"ring":{"description":"if provided it sends a ring event to the members for this call","title":"Ring","type":"boolean","x-stream-index":"004"}},"type":"object"},"GetOrCreateCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"type":"boolean","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","created","duration"],"type":"object"},"GetRateLimitsResponse":{"nullable":true,"properties":{"android":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the Android platform","title":"Android","type":"object","x-stream-index":"002","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"duration":{"type":"string","x-stream-index":"005.001"},"ios":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the iOS platform","title":"iOS","type":"object","x-stream-index":"003","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"server_side":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the server-side platform","title":"Server-side","type":"object","x-stream-index":"001","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}},"web":{"additionalProperties":{"$ref":"#/components/schemas/LimitInfo"},"description":"Map of endpoint rate limits for the web platform","title":"Web","type":"object","x-stream-index":"004","x-stream-map":{"key":"endpoint","title":"Endpoint name","description":"The name of the endpoint for which the limits apply"}}},"required":["duration"],"title":"Get Rate Limits Response","type":"object","x-stream-docs-page-id":"rate_limits"},"GetReactionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"reactions":{"description":"List of reactions","items":{"$ref":"#/components/schemas/Reaction"},"title":"Reactions","type":"array","x-stream-index":"001"}},"required":["reactions","duration"],"type":"object"},"GetRepliesResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"messages":{"description":"List of messages","items":{"$ref":"#/components/schemas/Message"},"title":"Messages","type":"array","x-stream-index":"001.001"}},"required":["messages","duration"],"type":"object"},"GetTaskResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.003"},"duration":{"type":"string","x-stream-index":"004.001"},"error":{"$ref":"#/components/schemas/ErrorResult","description":"Error produced by task","title":"Error","x-stream-index":"003"},"result":{"description":"Result produced by task after completion","title":"Result","type":"object","x-stream-index":"002"},"status":{"description":"Current status of task","title":"Status","type":"string","x-stream-index":"001.002"},"task_id":{"description":"ID of task","title":"Task ID","type":"string","x-stream-index":"001.001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.004"}},"required":["task_id","status","created_at","updated_at","duration"],"title":"Get Task Response","type":"object","x-stream-docs-page-id":"tasks"},"GetThreadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadStateResponse","description":"Enriched thread state","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"GoLiveRequest":{"nullable":true,"properties":{"recording_storage_name":{"type":"string","x-stream-index":"005"},"start_hls":{"type":"boolean","x-stream-index":"003"},"start_recording":{"type":"boolean","x-stream-index":"004"},"start_transcription":{"type":"boolean","x-stream-index":"007"},"transcription_storage_name":{"type":"string","x-stream-index":"006"}},"type":"object"},"GoLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"GuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"GuestResponse":{"nullable":true,"properties":{"access_token":{"description":"Authentication token to use for guest user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserObject","description":"Created user object","title":"User","x-stream-index":"001"}},"required":["access_token","duration"],"type":"object"},"HLSSettings":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks"],"type":"object"},"HLSSettingsRequest":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettingsRequest","title":"LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"maximum":3,"minimum":1,"type":"array","x-stream-index":"003"}},"type":"object"},"HLSSettingsResponse":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","title":"Layout","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks","layout"],"type":"object"},"HideChannelRequest":{"nullable":true,"properties":{"clear_history":{"description":"Whether to clear message history of the channel or not","title":"Clear history","type":"boolean","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"type":"object"},"HideChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"HuaweiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"id":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"HuaweiConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"secret":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageData":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"required":["url","width","height","size","frames"],"type":"object"},"ImageDataRequest":{"properties":{"frames":{"type":"string","x-stream-index":"005"},"height":{"type":"string","x-stream-index":"003"},"size":{"type":"string","x-stream-index":"004"},"url":{"type":"string","x-stream-index":"001"},"width":{"type":"string","x-stream-index":"002"}},"type":"object"},"ImageSize":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"required":["crop","resize","height","width"],"title":"Image size configuration","type":"object"},"ImageSizeRequest":{"properties":{"crop":{"description":"Crop mode","enum":["top","bottom","left","right","center"],"title":"Crop","type":"string","x-stream-index":"001"},"height":{"description":"Target image height","format":"int32","title":"Height","type":"integer","x-stream-index":"003"},"resize":{"description":"Resize method","enum":["clip","crop","scale","fill"],"title":"Resize","type":"string","x-stream-index":"002"},"width":{"description":"Target image width","format":"int32","title":"Width","type":"integer","x-stream-index":"004"}},"title":"Image size configuration","type":"object"},"ImageUploadRequest":{"nullable":true,"properties":{"file":{"type":"string","x-stream-index":"001.002"},"upload_sizes":{"description":"field with JSON-encoded array of image size configurations","items":{"$ref":"#/components/schemas/ImageSizeRequest"},"title":"Upload sizes","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/OnlyUserIDRequest","x-stream-index":"001.003"}},"type":"object"},"ImageUploadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001.001"},"file":{"description":"URL to the uploaded asset. Should be used to put to `asset_url` attachment field","title":"File","type":"string","x-stream-index":"001.002"},"thumb_url":{"description":"URL of the file thumbnail for supported file formats. Should be put to `thumb_url` attachment field","title":"Thumbnail URL","type":"string","x-stream-index":"001.003"},"upload_sizes":{"items":{"$ref":"#/components/schemas/ImageSize"},"type":"array","x-stream-index":"002"}},"required":["duration"],"type":"object"},"Images":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageData","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageData","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageData","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageData","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageData","x-stream-index":"001"}},"required":["original","fixed_height","fixed_height_still","fixed_height_downsampled","fixed_width","fixed_width_still","fixed_width_downsampled"],"type":"object"},"ImagesRequest":{"properties":{"fixed_height":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"002"},"fixed_height_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"004"},"fixed_height_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"003"},"fixed_width":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"005"},"fixed_width_downsampled":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"007"},"fixed_width_still":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"006"},"original":{"$ref":"#/components/schemas/ImageDataRequest","x-stream-index":"001"}},"type":"object"},"ImportTask":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"history":{"items":{"$ref":"#/components/schemas/ImportTaskHistory"},"type":"array","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"003"},"mode":{"type":"string","x-stream-index":"006"},"path":{"type":"string","x-stream-index":"005"},"size":{"format":"int64","type":"integer","x-stream-index":"007"},"state":{"type":"string","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["id","path","mode","state","history","created_at","updated_at"],"type":"object"},"ImportTaskHistory":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"next_state":{"type":"string","x-stream-index":"006"},"prev_state":{"type":"string","x-stream-index":"005"}},"required":["prev_state","next_state","created_at"],"type":"object"},"Label":{"properties":{"harm_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"phrase_list_ids":{"items":{"format":"int32","type":"integer"},"type":"array","x-stream-index":"002"}},"required":["name"],"type":"object"},"LabelThresholds":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LabelThresholdsRequest":{"properties":{"block":{"description":"Threshold for automatic message block","format":"float","maximum":1,"minimum":0,"title":"Block","type":"number","x-stream-index":"002"},"flag":{"description":"Threshold for automatic message flag","format":"float","maximum":1,"minimum":0,"title":"Flag","type":"number","x-stream-index":"001"}},"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"LayoutSettingsRequest":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name"],"type":"object"},"LimitInfo":{"properties":{"limit":{"description":"The maximum number of calls allowed for the time window","format":"int32","title":"Limit","type":"integer","x-stream-index":"001"},"remaining":{"description":"The number of remaining calls in the current window","format":"int64","title":"Remaining","type":"integer","x-stream-index":"002"},"reset":{"description":"The Unix timestamp of the next window","format":"int64","title":"Reset","type":"integer","x-stream-index":"003"}},"required":["limit","remaining","reset"],"title":"Rate Limit info","type":"object","x-stream-docs-page-id":"rate_limits"},"ListBlockListResponse":{"nullable":true,"properties":{"blocklists":{"items":{"$ref":"#/components/schemas/BlockList"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["blocklists","duration"],"type":"object"},"ListCallTypeResponse":{"nullable":true,"properties":{"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallTypeResponse"},"type":"object","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["call_types","duration"],"type":"object"},"ListChannelTypesResponse":{"nullable":true,"properties":{"channel_types":{"additionalProperties":{"$ref":"#/components/schemas/ChannelTypeConfig"},"description":"Object with all channel types","title":"Channel types","type":"object","x-stream-index":"001","x-stream-map":{"key":"channel_type","title":"Channel type","description":"Channel type config object"}},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["channel_types","duration"],"type":"object"},"ListCommandsResponse":{"nullable":true,"properties":{"commands":{"items":{"$ref":"#/components/schemas/Command"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["commands","duration"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"external_storages":{"additionalProperties":{"$ref":"#/components/schemas/ExternalStorageResponse"},"type":"object","x-stream-index":"002"}},"required":["duration","external_storages"],"type":"object"},"ListImportsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"import_tasks":{"items":{"$ref":"#/components/schemas/ImportTask"},"type":"array","x-stream-index":"001"}},"required":["import_tasks","duration"],"type":"object"},"ListPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"permissions":{"items":{"$ref":"#/components/schemas/Permission"},"type":"array","x-stream-index":"001"}},"required":["permissions","duration"],"type":"object"},"ListPushProvidersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"push_providers":{"items":{"$ref":"#/components/schemas/PushProviderResponse"},"type":"array","x-stream-index":"001"}},"required":["push_providers","duration"],"type":"object"},"ListRecordingsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"recordings":{"items":{"$ref":"#/components/schemas/CallRecording"},"type":"array","x-stream-index":"002"}},"required":["duration","recordings"],"type":"object"},"ListRolesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"roles":{"items":{"$ref":"#/components/schemas/Role"},"type":"array","x-stream-index":"001"}},"required":["roles","duration"],"type":"object"},"ListTranscriptionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"transcriptions":{"items":{"$ref":"#/components/schemas/CallTranscription"},"type":"array","x-stream-index":"002"}},"required":["duration","transcriptions"],"type":"object"},"Location":{"properties":{"continent_code":{"type":"string","x-stream-index":"003"},"country_iso_code":{"type":"string","x-stream-index":"002"},"subdivision_iso_code":{"type":"string","x-stream-index":"001"}},"required":["subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"MarkChannelsReadRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"MarkReadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message that is considered last read by client","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Optional Thread ID to specifically mark a given thread as read","title":"Thread ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"type":"object"},"MarkReadResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"event":{"$ref":"#/components/schemas/MessageReadEvent","description":"Mark read event","title":"Event","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MarkUnreadRequest":{"nullable":true,"properties":{"message_id":{"description":"ID of the message from where the channel is marked unread","title":"Message ID","type":"string","x-stream-index":"001"},"thread_id":{"description":"Mark a thread unread, specify both the thread and message id","title":"Thread ID","type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["message_id","thread_id"],"type":"object"},"MemberRequest":{"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"role":{"title":"Role","type":"string","x-stream-index":"002"},"user_id":{"minLength":1,"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"MemberResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"005"},"custom":{"description":"Custom member response data","title":"Custom","type":"object","x-stream-index":"004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"007"},"role":{"title":"Role","type":"string","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_id","custom","created_at","updated_at"],"type":"object"},"MembersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"members":{"description":"List of found members","items":{"$ref":"#/components/schemas/ChannelMember"},"title":"Members","type":"array","x-stream-index":"001"}},"required":["members","duration"],"type":"object"},"Message":{"description":"Represents any chat message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"031"},"attachments":{"description":"Array of message attachments","items":{"$ref":"#/components/schemas/Attachment"},"title":"Message attachments","type":"array","x-stream-docs-page-id":"message_format#attachment-format","x-stream-index":"011"},"before_message_send_failed":{"description":"Whether `before_message_send webhook` failed or not. Field is only accessible in push webhook","title":"Before Message Send Failed","type":"boolean","x-stream-docs-page-id":"before_message_send_webhook","x-stream-index":"043"},"cid":{"description":"Channel unique identifier in \u003ctype\u003e:\u003cid\u003e format","title":"Channel CID","type":"string","x-stream-index":"026"},"command":{"description":"Contains provided slash command","title":"Command","type":"string","x-stream-docs-page-id":"custom_commands_webhook","x-stream-index":"006"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"028"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"021"},"html":{"description":"Contains HTML markup of the message. Can only be set when using server-side API","title":"HTML content","type":"string","x-stream-index":"007"},"i18n":{"additionalProperties":{"type":"string"},"description":"Object with translations. Key `language` contains the original language key. Other keys contain translations","title":"Internationalization info","type":"object","x-stream-docs-page-id":"translation","x-stream-index":"041"},"id":{"description":"Message ID is unique string identifier of the message","title":"ID","type":"string","x-stream-index":"002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Contains image moderation information","title":"Image moderation labels","type":"object","x-stream-index":"037"},"latest_reactions":{"description":"List of 10 latest reactions to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Latest reactions","type":"array","x-stream-index":"012"},"mentioned_users":{"description":"List of mentioned users","items":{"$ref":"#/components/schemas/UserObject"},"title":"Mentioned Users","type":"array","x-stream-index":"040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"049"},"mml":{"description":"Should be empty if `text` is provided. Can only be set when using server-side API","title":"Messaging Markup Language","type":"string","x-stream-docs-page-id":"mml_overview","x-stream-index":"005"},"own_reactions":{"description":"List of 10 latest reactions of authenticated user to this message","items":{"$ref":"#/components/schemas/Reaction"},"title":"Own reactions","type":"array","x-stream-index":"013"},"parent_id":{"description":"ID of parent message (thread)","title":"Parent message ID","type":"string","x-stream-docs-page-id":"threads","x-stream-index":"017"},"pin_expires":{"description":"Date when pinned message expires","format":"date-time","title":"Pin expiration date","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"048"},"pinned":{"description":"Whether message is pinned or not","title":"Pinned","type":"boolean","x-stream-docs-page-id":"pinned_messages","x-stream-index":"044"},"pinned_at":{"description":"Date when message got pinned","format":"date-time","title":"Pinned at","type":"string","x-stream-docs-page-id":"pinned_messages","x-stream-index":"045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","description":"Contains user who pinned the message","title":"Pinned by","x-stream-docs-page-id":"pinned_messages","x-stream-index":"047"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"051"},"poll_id":{"description":"Identifier of the poll to include in the message","title":"Poll ID","type":"string","x-stream-index":"050"},"quoted_message":{"$ref":"#/components/schemas/Message","description":"Contains quoted message","title":"Quoted message","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"023"},"quoted_message_id":{"title":"ID of quoted message","type":"string","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing number of reactions of each type. Key: reaction type (string), value: number of reactions (int)","title":"Reaction counts","type":"object","x-stream-index":"014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"description":"An object containing scores of reactions of each type. Key: reaction type (string), value: total score of reactions (int)","title":"Reaction scores","type":"object","x-stream-index":"015"},"reply_count":{"description":"Number of replies to this message","format":"int32","title":"Reply count","type":"integer","x-stream-index":"020"},"shadowed":{"description":"Whether the message was shadowed or not","title":"Shadowed","type":"boolean","x-stream-docs-page-id":"moderation#shadow-ban","x-stream-index":"033"},"show_in_channel":{"description":"Whether thread reply should be shown in the channel as well","title":"Show in channel","type":"boolean","x-stream-docs-page-id":"threads","x-stream-index":"019"},"silent":{"description":"Whether message is silent or not","title":"Silent","type":"boolean","x-stream-index":"042"},"text":{"description":"Text of the message. Should be empty if `mml` is provided","title":"Text","type":"string","x-stream-index":"004"},"thread_participants":{"description":"List of users who participate in thread","items":{"$ref":"#/components/schemas/UserObject"},"title":"Thread participants","type":"array","x-stream-docs-page-id":"threads#quote-message","x-stream-index":"025"},"type":{"description":"Contains type of the message","enum":["regular","ephemeral","error","reply","system","deleted"],"title":"Message Type","type":"string","x-stream-docs-page-id":"message_format#message-types","x-stream-index":"008"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"029"},"user":{"$ref":"#/components/schemas/UserObject","description":"Sender of the message. Required when using server-side API","title":"User object","x-stream-index":"010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned","poll_id"],"title":"Message","type":"object","x-stream-docs-page-id":"send_message"},"MessageActionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"form_data":{"additionalProperties":{"type":"string"},"description":"ReadOnlyData to execute command with","title":"Form data","type":"object","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["form_data"],"type":"object"},"MessageChangeSet":{"properties":{"attachments":{"type":"boolean","x-stream-index":"005"},"custom":{"type":"boolean","x-stream-index":"001"},"html":{"type":"boolean","x-stream-index":"004"},"mentioned_user_ids":{"type":"boolean","x-stream-index":"006"},"mml":{"type":"boolean","x-stream-index":"003"},"pin":{"type":"boolean","x-stream-index":"009"},"quoted_message_id":{"type":"boolean","x-stream-index":"007"},"silent":{"type":"boolean","x-stream-index":"008"},"text":{"type":"boolean","x-stream-index":"002"}},"required":["custom","text","mml","html","attachments","mentioned_user_ids","quoted_message_id","silent","pin"],"type":"object"},"MessageFlag":{"nullable":true,"properties":{"approved_at":{"format":"date-time","type":"string","x-stream-index":"013"},"created_at":{"format":"date-time","type":"string","x-stream-index":"009"},"created_by_automod":{"type":"boolean","x-stream-index":"001"},"custom":{"type":"object","x-stream-index":"008"},"details":{"$ref":"#/components/schemas/FlagDetails","x-stream-index":"006"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"005"},"moderation_feedback":{"$ref":"#/components/schemas/FlagFeedback","x-stream-index":"003"},"moderation_result":{"$ref":"#/components/schemas/MessageModerationResult","x-stream-index":"002"},"reason":{"type":"string","x-stream-index":"007"},"rejected_at":{"format":"date-time","type":"string","x-stream-index":"014"},"reviewed_at":{"format":"date-time","type":"string","x-stream-index":"011"},"reviewed_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"012"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"004"}},"required":["created_by_automod","created_at","updated_at"],"type":"object"},"MessageModerationResult":{"properties":{"action":{"type":"string","x-stream-index":"004"},"ai_moderation_response":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"009"},"blocked_word":{"type":"string","x-stream-index":"006"},"blocklist_name":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"012"},"message_id":{"type":"string","x-stream-index":"003"},"moderated_by":{"type":"string","x-stream-index":"005"},"moderation_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"013"},"user_bad_karma":{"type":"boolean","x-stream-index":"011"},"user_karma":{"format":"float","type":"number","x-stream-index":"010"}},"required":["message_id","action","user_karma","user_bad_karma","created_at","updated_at"],"type":"object"},"MessagePaginationParamsRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"008"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"007"},"created_at_around":{"format":"date-time","type":"string","x-stream-index":"012"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"010"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"009"},"id_around":{"type":"string","x-stream-index":"011"},"id_gt":{"type":"string","x-stream-index":"004"},"id_gte":{"type":"string","x-stream-index":"003"},"id_lt":{"type":"string","x-stream-index":"006"},"id_lte":{"type":"string","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"MessageReadEvent":{"properties":{"channel_id":{"type":"string","x-stream-index":"002.002"},"channel_type":{"type":"string","x-stream-index":"002.003"},"cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005.002"},"last_read_message_id":{"type":"string","x-stream-index":"006"},"team":{"type":"string","x-stream-index":"004.001"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"003.001"},"type":{"type":"string","x-stream-index":"005.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["cid","channel_id","channel_type","type","created_at"],"title":"MessageReadEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"MessageRequest":{"properties":{"attachments":{"items":{"$ref":"#/components/schemas/AttachmentRequest"},"maximum":30,"type":"array","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"007"},"html":{"type":"string","x-stream-index":"010"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"mentioned_users":{"items":{"type":"string"},"maximum":25,"type":"array","x-stream-index":"008"},"mml":{"type":"string","x-stream-index":"003"},"parent_id":{"type":"string","x-stream-index":"005"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"015"},"pinned":{"type":"boolean","x-stream-index":"013"},"pinned_at":{"format":"date-time","nullable":true,"type":"string","x-stream-index":"014"},"poll_id":{"type":"string","x-stream-index":"038"},"quoted_message_id":{"type":"string","x-stream-index":"009"},"show_in_channel":{"type":"boolean","x-stream-index":"006"},"silent":{"type":"boolean","x-stream-index":"012"},"text":{"type":"string","x-stream-index":"002"},"type":{"enum":["''regular","system"],"type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"020.002"},"user_id":{"type":"string","x-stream-index":"020.001"}},"required":["attachments"],"type":"object"},"MessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"}},"required":["duration"],"type":"object"},"MessageUpdate":{"properties":{"change_set":{"$ref":"#/components/schemas/MessageChangeSet","x-stream-index":"002"},"old_text":{"type":"string","x-stream-index":"001"}},"type":"object"},"MessageWithPendingMetadataResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.002.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"description":"Metadata attached to a message while it is pending","title":"Pending message metadata","type":"object","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ModerationResponse":{"properties":{"action":{"type":"string","x-stream-index":"004"},"explicit":{"format":"float","type":"number","x-stream-index":"002"},"spam":{"format":"float","type":"number","x-stream-index":"003"},"toxic":{"format":"float","type":"number","x-stream-index":"001"}},"required":["toxic","explicit","spam","action","automod_response"],"type":"object"},"MuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["channel_cids"],"type":"object"},"MuteChannelResponse":{"nullable":true,"properties":{"channel_mute":{"$ref":"#/components/schemas/ChannelMute","description":"Object with channel mute (if one channel was muted)","title":"Channel mute","x-stream-index":"001"},"channel_mutes":{"description":"Object with mutes (if multiple channels were muted)","items":{"$ref":"#/components/schemas/ChannelMute"},"title":"Channel mutes","type":"array","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"004.001"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["target_ids"],"type":"object"},"MuteUserResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"mute":{"$ref":"#/components/schemas/UserMute","description":"Object with user mute (if one user was muted)","title":"Mute","x-stream-index":"001"},"mutes":{"description":"Object with mutes (if multiple users were muted)","items":{"$ref":"#/components/schemas/UserMute"},"title":"Mutes","type":"array","x-stream-index":"002"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"own_user":{"$ref":"#/components/schemas/OwnUser","description":"Authorized user object with fresh mutes information","title":"Own user","x-stream-index":"003"}},"required":["duration"],"type":"object"},"MuteUsersRequest":{"nullable":true,"properties":{"audio":{"title":"Audio","type":"boolean","x-stream-index":"005"},"mute_all_users":{"type":"boolean","x-stream-index":"003"},"screenshare":{"title":"Screenshare","type":"boolean","x-stream-index":"007"},"screenshare_audio":{"title":"ScreenshareAudio","type":"boolean","x-stream-index":"008"},"user_ids":{"items":{"type":"string"},"title":"UserIDs","type":"array","x-stream-index":"004"},"video":{"title":"Video","type":"boolean","x-stream-index":"006"}},"type":"object"},"MuteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"NoiseCancellationSettings":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode"],"type":"object"},"NoiseCancellationSettingsRequest":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"NotificationSettingsRequest":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"003"}},"type":"object"},"NullBoolRequest":{"properties":{"HasValue":{"type":"boolean","writeOnly":true,"x-stream-index":"002"},"Value":{"type":"boolean","writeOnly":true,"x-stream-index":"001"}},"type":"object"},"NullTimeRequest":{"properties":{"HasValue":{"type":"boolean","writeOnly":true,"x-stream-index":"002"},"Value":{"format":"date-time","type":"string","writeOnly":true,"x-stream-index":"001"}},"type":"object"},"OnlyUserIDRequest":{"properties":{"id":{"type":"string","x-stream-index":"001"}},"required":["id"],"type":"object"},"OwnCapability":{"description":"All possibility of string to use","enum":["block-users","create-call","create-reaction","enable-noise-cancellation","end-call","join-backstage","join-call","join-ended-call","mute-users","pin-for-everyone","read-call","remove-call-member","screenshare","send-audio","send-video","start-broadcast-call","start-record-call","start-transcription-call","stop-broadcast-call","stop-record-call","stop-transcription-call","update-call","update-call-member","update-call-permissions","update-call-settings"],"title":"OwnCapability","type":"string"},"OwnUser":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"banned":{"type":"boolean","x-stream-index":"014"},"channel_mutes":{"items":{"$ref":"#/components/schemas/ChannelMute"},"type":"array","x-stream-index":"026"},"created_at":{"format":"date-time","type":"string","x-stream-index":"007"},"deactivated_at":{"format":"date-time","type":"string","x-stream-index":"012"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"011"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"type":"array","x-stream-index":"024"},"id":{"type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"type":"string","x-stream-index":"031"},"last_active":{"format":"date-time","type":"string","x-stream-index":"010"},"latest_hidden_channels":{"items":{"type":"string"},"type":"array","x-stream-index":"033"},"mutes":{"items":{"$ref":"#/components/schemas/UserMute"},"type":"array","x-stream-index":"025"},"online":{"type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"role":{"type":"string","x-stream-index":"004"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"032"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"028"},"unread_channels":{"format":"int32","type":"integer","x-stream-index":"029"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"027"},"unread_threads":{"format":"int32","type":"integer","x-stream-index":"030"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"008"}},"required":["id","role","Custom","created_at","updated_at","banned","online","devices","mutes","channel_mutes","unread_count","total_unread_count","unread_channels","unread_threads","language"],"type":"object"},"PaginationParamsRequest":{"properties":{"id_gt":{"format":"int32","type":"integer","x-stream-index":"004"},"id_gte":{"format":"int32","type":"integer","x-stream-index":"003"},"id_lt":{"format":"int32","type":"integer","x-stream-index":"006"},"id_lte":{"format":"int32","type":"integer","x-stream-index":"005"},"limit":{"format":"int32","minimum":0,"type":"integer","x-stream-index":"001"},"offset":{"format":"int32","type":"integer","x-stream-index":"002"}},"type":"object"},"PendingMessage":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/Channel","x-stream-index":"007"},"message":{"$ref":"#/components/schemas/Message","description":"The message","title":"Message","x-stream-index":"009"},"metadata":{"additionalProperties":{"type":"string"},"description":"Additional data attached to the pending message. This data is discarded once the pending message is committed.","title":"Metadata","type":"object","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"002"}},"type":"object"},"Permission":{"properties":{"action":{"description":"Action name this permission is for (e.g. SendMessage)","title":"Action","type":"string","x-stream-index":"004"},"condition":{"description":"MongoDB style condition which decides whether or not the permission is granted","title":"Condition","type":"object","x-stream-index":"007"},"custom":{"description":"Whether this is a custom permission or built-in","title":"Custom","type":"boolean","x-stream-index":"009"},"description":{"description":"Description of the permission","title":"Description","type":"string","x-stream-index":"003"},"id":{"description":"Unique permission ID","title":"ID","type":"string","x-stream-index":"001"},"level":{"description":"Level at which permission could be applied (app or channel)","enum":["app","channel"],"title":"Level","type":"string","x-stream-index":"010"},"name":{"description":"Name of the permission","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether this permission applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"same_team":{"description":"Whether this permission applies to teammates (multi-tenancy mode only)","title":"Same team","type":"boolean","x-stream-index":"006"},"tags":{"description":"List of tags of the permission","items":{"type":"string"},"title":"Tags","type":"array","x-stream-index":"011"}},"required":["id","name","description","action","owner","same_team","custom","level","tags"],"type":"object"},"PinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"PinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Policy":{"properties":{"action":{"type":"integer","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"name":{"type":"string","x-stream-index":"004"},"owner":{"type":"boolean","x-stream-index":"008"},"priority":{"format":"int32","type":"integer","x-stream-index":"009"},"resources":{"items":{"type":"string"},"type":"array","x-stream-index":"005"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"}},"required":["name","resources","roles","action","owner","priority","created_at","updated_at"],"type":"object"},"PolicyRequest":{"properties":{"action":{"enum":["Deny","Allow"],"title":"Action","type":"string","x-stream-index":"001"},"name":{"description":"User-friendly policy name","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether policy applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"priority":{"description":"Policy priority","format":"int32","maximum":999,"minimum":1,"title":"Priority","type":"integer","x-stream-index":"006"},"resources":{"description":"List of resources to apply policy to","items":{"type":"string"},"minimum":1,"title":"Resources","type":"array","x-stream-index":"003"},"roles":{"description":"List of roles to apply policy to","items":{"type":"string"},"title":"Roles","type":"array","x-stream-index":"004"}},"required":["action","name","resources","roles","owner","priority"],"type":"object"},"PolicyRequest_1":{"properties":{"action":{"enum":["Deny","Allow"],"title":"Action","type":"string","x-stream-index":"001"},"name":{"description":"User-friendly policy name","title":"Name","type":"string","x-stream-index":"002"},"owner":{"description":"Whether policy applies to resource owner or not","title":"Owner","type":"boolean","x-stream-index":"005"},"priority":{"description":"Policy priority","format":"int32","maximum":999,"minimum":1,"title":"Priority","type":"integer","x-stream-index":"006"},"resources":{"description":"List of resources to apply policy to","items":{"type":"string"},"minimum":1,"title":"Resources","type":"array","x-stream-index":"003"},"roles":{"description":"List of roles to apply policy to","items":{"type":"string"},"title":"Roles","type":"array","x-stream-index":"004"}},"required":["name","priority"],"type":"object"},"Poll":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"023"},"allow_answers":{"type":"boolean","x-stream-index":"010"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"009"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"015"},"created_at":{"format":"date-time","type":"string","x-stream-index":"021"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"020"},"created_by_id":{"type":"string","x-stream-index":"019"},"description":{"type":"string","x-stream-index":"005"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"007"},"id":{"type":"string","x-stream-index":"003"},"is_closed":{"type":"boolean","x-stream-index":"011"},"latest_answers":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array","x-stream-index":"017"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array"},"type":"object","x-stream-index":"016"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"008"},"name":{"type":"string","x-stream-index":"004"},"options":{"items":{"$ref":"#/components/schemas/PollOption"},"type":"array","x-stream-index":"013"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVote"},"type":"array","x-stream-index":"018"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"022"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"012"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"014"},"voting_visibility":{"type":"string","x-stream-index":"006"}},"required":["id","name","description","enforce_unique_vote","allow_user_suggested_options","allow_answers","vote_count","options","vote_counts_by_option","answers_count","latest_votes_by_option","latest_answers","own_votes","created_by_id","created_at","updated_at","Custom"],"type":"object"},"PollOption":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id","text","custom"],"type":"object"},"PollOptionRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"PollOptionRequest_1":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"text":{"type":"string","x-stream-index":"002"}},"type":"object"},"PollOptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"poll_option":{"$ref":"#/components/schemas/PollOptionResponseData","x-stream-index":"001"}},"required":["poll_option","duration"],"type":"object"},"PollOptionResponseData":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"002"}},"required":["id","text","custom"],"type":"object"},"PollRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"023"},"allow_answers":{"type":"boolean","x-stream-index":"010"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"009"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"015"},"created_at":{"format":"date-time","type":"string","x-stream-index":"021"},"created_by":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"020"},"created_by_id":{"type":"string","x-stream-index":"019"},"description":{"type":"string","x-stream-index":"005"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"007"},"id":{"type":"string","x-stream-index":"003"},"is_closed":{"type":"boolean","x-stream-index":"011"},"latest_answers":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array","x-stream-index":"017"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array"},"type":"object","x-stream-index":"016"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"008"},"name":{"type":"string","x-stream-index":"004"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest"},"type":"array","x-stream-index":"013"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVoteRequest"},"type":"array","x-stream-index":"018"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"022"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"012"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"014"},"voting_visibility":{"type":"string","x-stream-index":"006"}},"type":"object"},"PollResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"poll":{"$ref":"#/components/schemas/PollResponseData","x-stream-index":"001"}},"required":["poll","duration"],"type":"object"},"PollResponseData":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"020"},"allow_answers":{"type":"boolean","x-stream-index":"008"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"007"},"answers_count":{"format":"int32","type":"integer","x-stream-index":"012"},"created_at":{"format":"date-time","type":"string","x-stream-index":"018"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"017"},"created_by_id":{"type":"string","x-stream-index":"016"},"description":{"type":"string","x-stream-index":"003"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"005"},"id":{"type":"string","x-stream-index":"001"},"is_closed":{"type":"boolean","x-stream-index":"009"},"latest_votes_by_option":{"additionalProperties":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array"},"type":"object","x-stream-index":"014"},"max_votes_allowed":{"format":"int32","type":"integer","x-stream-index":"006"},"name":{"type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionResponseData"},"type":"array","x-stream-index":"011"},"own_votes":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array","x-stream-index":"015"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"019"},"vote_count":{"format":"int32","type":"integer","x-stream-index":"010"},"vote_counts_by_option":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"013"},"voting_visibility":{"type":"string","x-stream-index":"004"}},"required":["id","name","description","voting_visibility","enforce_unique_vote","allow_user_suggested_options","allow_answers","vote_count","options","answers_count","vote_counts_by_option","latest_votes_by_option","own_votes","created_by_id","created_at","updated_at","Custom"],"type":"object"},"PollVote":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"004"},"is_answer":{"type":"boolean","x-stream-index":"006"},"option_id":{"type":"string","x-stream-index":"005"},"poll_id":{"type":"string","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"009"},"user_id":{"type":"string","x-stream-index":"008"}},"required":["poll_id","id","option_id","created_at","updated_at"],"type":"object"},"PollVoteRequest":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"007"},"created_at":{"format":"date-time","type":"string","x-stream-index":"010"},"id":{"type":"string","x-stream-index":"004"},"is_answer":{"type":"boolean","x-stream-index":"006"},"option_id":{"type":"string","x-stream-index":"005"},"poll_id":{"type":"string","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"009"},"user_id":{"type":"string","x-stream-index":"008"}},"type":"object"},"PollVoteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"vote":{"$ref":"#/components/schemas/PollVoteResponseData","x-stream-index":"001"}},"required":["duration"],"type":"object"},"PollVoteResponseData":{"nullable":true,"properties":{"answer_text":{"type":"string","x-stream-index":"005"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"id":{"type":"string","x-stream-index":"002"},"is_answer":{"type":"boolean","x-stream-index":"004"},"option_id":{"type":"string","x-stream-index":"003"},"poll_id":{"type":"string","x-stream-index":"001"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"007"},"user_id":{"type":"string","x-stream-index":"006"}},"required":["poll_id","id","option_id","created_at","updated_at"],"type":"object"},"PollVotesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"votes":{"items":{"$ref":"#/components/schemas/PollVoteResponseData"},"type":"array","x-stream-index":"001"}},"required":["votes","duration"],"type":"object"},"PushConfigRequest":{"properties":{"offline_only":{"type":"boolean","x-stream-index":"002"},"version":{"enum":["v1","v2"],"type":"string","x-stream-index":"001"}},"type":"object"},"PushNotificationFields":{"properties":{"apn":{"$ref":"#/components/schemas/APNConfigFields","x-stream-index":"002"},"firebase":{"$ref":"#/components/schemas/FirebaseConfigFields","x-stream-index":"003"},"huawei":{"$ref":"#/components/schemas/HuaweiConfigFields","x-stream-index":"004"},"offline_only":{"type":"boolean","x-stream-index":"001.002"},"providers":{"items":{"$ref":"#/components/schemas/PushProvider"},"type":"array","x-stream-index":"006"},"version":{"type":"string","x-stream-index":"001.001"},"xiaomi":{"$ref":"#/components/schemas/XiaomiConfigFields","x-stream-index":"005"}},"required":["version","offline_only","apn","firebase","huawei","xiaomi"],"type":"object"},"PushNotificationSettings":{"properties":{"disabled":{"type":"boolean","x-stream-index":"001"},"disabled_until":{"format":"date-time","type":"string","x-stream-index":"002"}},"type":"object"},"PushNotificationSettingsRequest":{"properties":{"disabled":{"$ref":"#/components/schemas/NullBoolRequest","x-stream-index":"001"},"disabled_until":{"$ref":"#/components/schemas/NullTimeRequest","x-stream-index":"002"}},"type":"object"},"PushProvider":{"nullable":true,"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name","type","created_at","updated_at"],"type":"object"},"PushProviderRequest":{"properties":{"apn_auth_key":{"type":"string","x-stream-index":"012"},"apn_auth_type":{"type":"string","x-stream-index":"017"},"apn_development":{"type":"boolean","x-stream-index":"018"},"apn_host":{"type":"string","x-stream-index":"019"},"apn_key_id":{"type":"string","x-stream-index":"013"},"apn_notification_template":{"type":"string","x-stream-index":"020"},"apn_p12_cert":{"type":"string","x-stream-index":"014"},"apn_team_id":{"type":"string","x-stream-index":"015"},"apn_topic":{"type":"string","x-stream-index":"016"},"created_at":{"format":"date-time","type":"string","x-stream-index":"008"},"description":{"maxLength":128,"type":"string","x-stream-index":"007"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"010"},"disabled_reason":{"maxLength":255,"type":"string","x-stream-index":"011"},"firebase_apn_template":{"type":"string","x-stream-index":"025"},"firebase_credentials":{"type":"string","x-stream-index":"022"},"firebase_data_template":{"type":"string","x-stream-index":"023"},"firebase_host":{"type":"string","x-stream-index":"026"},"firebase_notification_template":{"type":"string","x-stream-index":"024"},"firebase_server_key":{"type":"string","x-stream-index":"021"},"huawei_app_id":{"type":"string","x-stream-index":"027"},"huawei_app_secret":{"type":"string","x-stream-index":"028"},"name":{"maxLength":36,"minLength":1,"type":"string","x-stream-index":"005"},"type":{"type":"integer","x-stream-index":"006"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"009"},"xiaomi_app_secret":{"type":"string","x-stream-index":"030"},"xiaomi_package_name":{"type":"string","x-stream-index":"029"}},"required":["name"],"type":"object"},"PushProviderResponse":{"properties":{"apn_auth_key":{"type":"string","x-stream-index":"008"},"apn_auth_type":{"type":"string","x-stream-index":"013"},"apn_development":{"type":"boolean","x-stream-index":"014"},"apn_host":{"type":"string","x-stream-index":"015"},"apn_key_id":{"type":"string","x-stream-index":"009"},"apn_p12_cert":{"type":"string","x-stream-index":"010"},"apn_sandbox_certificate":{"type":"boolean","x-stream-index":"016"},"apn_supports_remote_notifications":{"type":"boolean","x-stream-index":"018"},"apn_supports_voip_notifications":{"type":"boolean","x-stream-index":"017"},"apn_team_id":{"type":"string","x-stream-index":"011"},"apn_topic":{"type":"string","x-stream-index":"012"},"created_at":{"format":"date-time","type":"string","x-stream-index":"004"},"description":{"type":"string","x-stream-index":"003"},"disabled_at":{"format":"date-time","type":"string","x-stream-index":"006"},"disabled_reason":{"type":"string","x-stream-index":"007"},"firebase_apn_template":{"type":"string","x-stream-index":"023"},"firebase_credentials":{"type":"string","x-stream-index":"020"},"firebase_data_template":{"type":"string","x-stream-index":"021"},"firebase_host":{"type":"string","x-stream-index":"024"},"firebase_notification_template":{"type":"string","x-stream-index":"022"},"firebase_server_key":{"type":"string","x-stream-index":"019"},"huawei_app_id":{"type":"string","x-stream-index":"025"},"huawei_app_secret":{"type":"string","x-stream-index":"026"},"name":{"type":"string","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"005"},"xiaomi_app_secret":{"type":"string","x-stream-index":"028"},"xiaomi_package_name":{"type":"string","x-stream-index":"027"}},"required":["name","type","created_at","updated_at"],"type":"object"},"QueryBannedUsersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"003.006"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.005"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"003.008"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"003.007"},"exclude_expired_bans":{"type":"boolean","x-stream-index":"006"},"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"type":"integer","x-stream-index":"004"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"005"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"required":["filter_conditions"],"type":"object"},"QueryBannedUsersResponse":{"nullable":true,"properties":{"bans":{"items":{"$ref":"#/components/schemas/BanResponse"},"type":"array","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["bans","duration"],"type":"object"},"QueryCallStatsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"002"}},"type":"object"},"QueryCallStatsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"next":{"type":"string","x-stream-index":"003.001"},"prev":{"type":"string","x-stream-index":"003.002"},"reports":{"items":{"$ref":"#/components/schemas/CallStatsReportSummaryResponse"},"type":"array","x-stream-index":"001"}},"required":["reports","duration"],"type":"object"},"QueryCallsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"006.001"},"next":{"type":"string","x-stream-index":"006.002"},"prev":{"type":"string","x-stream-index":"006.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"004"},"watch":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryCallsResponse":{"nullable":true,"properties":{"calls":{"items":{"$ref":"#/components/schemas/CallStateResponseFields"},"title":"Calls","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["calls","duration"],"type":"object"},"QueryChannelsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"description":"Number of channels to limit","format":"int32","title":"Limit","type":"integer","x-stream-index":"008"},"member_limit":{"description":"Number of members to limit","format":"int32","maximum":100,"minimum":0,"title":"Member limit","type":"integer","x-stream-index":"007"},"message_limit":{"description":"Number of messages to limit","format":"int32","minimum":0,"title":"Message limit","type":"integer","x-stream-index":"006"},"offset":{"description":"Channel pagination offset","format":"int32","title":"Offset","type":"integer","x-stream-index":"009"},"presence":{"title":"Presence","type":"boolean","x-stream-index":"005"},"sort":{"description":"List of sort parameters","items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"state":{"description":"Whether to update channel state or not","title":"State","type":"boolean","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"010.002"},"user_id":{"type":"string","x-stream-index":"010.001"},"watch":{"description":"Whether to start watching found channels or not","title":"Watch","type":"boolean","x-stream-index":"003"}},"title":"Query Channels Request","type":"object","x-stream-docs-page-id":"query_channels"},"QueryMembersRequest":{"properties":{"created_at_after":{"format":"date-time","type":"string","x-stream-index":"006.010"},"created_at_after_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.009"},"created_at_before":{"format":"date-time","type":"string","x-stream-index":"006.012"},"created_at_before_or_equal":{"format":"date-time","type":"string","x-stream-index":"006.011"},"filter_conditions":{"description":"Filter to apply to members","title":"Filter conditions","type":"object","x-stream-index":"004"},"id":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","x-stream-index":"002"},"limit":{"description":"Number of records to return","format":"int32","maximum":300,"minimum":0,"title":"Limit","type":"integer","x-stream-index":"006.003"},"members":{"description":"List of members to search in distinct channels","items":{"$ref":"#/components/schemas/ChannelMember"},"maximum":100,"title":"Members","type":"array","x-stream-index":"003"},"offset":{"description":"Number of records to offset","format":"int32","maximum":10000,"title":"Offset","type":"integer","x-stream-index":"006.004"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":1,"title":"Sort","type":"array","x-stream-index":"005"},"type":{"description":"Channel type to interact with","maxLength":64,"title":"Channel type","type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"},"user_id_gt":{"type":"string","x-stream-index":"006.006"},"user_id_gte":{"type":"string","x-stream-index":"006.005"},"user_id_lt":{"type":"string","x-stream-index":"006.008"},"user_id_lte":{"type":"string","x-stream-index":"006.007"}},"required":["type","filter_conditions"],"type":"object"},"QueryMembersRequest_1":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"002"},"id":{"maxLength":64,"type":"string","x-stream-index":"001.002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":1,"type":"array","x-stream-index":"003"},"type":{"maxLength":64,"type":"string","x-stream-index":"001.001"}},"required":["type","id"],"type":"object"},"QueryMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["members","duration"],"type":"object"},"QueryMessageFlagsRequest":{"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":300,"minimum":0,"type":"integer","x-stream-index":"003.003"},"offset":{"format":"int32","maximum":10000,"type":"integer","x-stream-index":"003.004"},"show_deleted_messages":{"type":"boolean","x-stream-index":"002"},"sort":{"items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"type":"array","x-stream-index":"003.005"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"type":"object"},"QueryMessageFlagsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"flags":{"items":{"$ref":"#/components/schemas/MessageFlag"},"type":"array","x-stream-index":"001"}},"required":["flags","duration"],"type":"object"},"QueryPollVotesRequest":{"nullable":true,"properties":{"filter":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"002"},"prev":{"type":"string","x-stream-index":"005.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"type":"array","x-stream-index":"004"}},"required":["poll_id"],"type":"object"},"QueryPollsRequest":{"nullable":true,"properties":{"filter":{"type":"object","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"prev":{"type":"string","x-stream-index":"005.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":5,"type":"array","x-stream-index":"003"}},"type":"object"},"QueryPollsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"polls":{"items":{"$ref":"#/components/schemas/PollResponseData"},"type":"array","x-stream-index":"001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["polls","duration"],"type":"object"},"QueryThreadsRequest":{"nullable":true,"properties":{"connection_id":{"type":"string","x-stream-index":"002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"005.001"},"next":{"type":"string","x-stream-index":"005.002"},"participant_limit":{"description":"Limit the number of participants returned per each thread","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","x-stream-index":"004"},"prev":{"type":"string","x-stream-index":"005.003"},"reply_limit":{"description":"Limit the number of replies returned per each thread","format":"int32","maximum":10,"minimum":0,"title":"Reply limit","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"type":"object"},"QueryThreadsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"},"threads":{"description":"List of enriched thread states","items":{"$ref":"#/components/schemas/ThreadStateResponse"},"title":"Threads","type":"array","x-stream-index":"001"}},"required":["threads","duration"],"type":"object"},"QueryUsersRequest":{"properties":{"filter_conditions":{"description":"User filters","title":"Filter conditions","type":"object","x-stream-docs-page-id":"query_users","x-stream-index":"001"},"id_gt":{"type":"string","x-stream-index":"005.006"},"id_gte":{"type":"string","x-stream-index":"005.005"},"id_lt":{"type":"string","x-stream-index":"005.008"},"id_lte":{"type":"string","x-stream-index":"005.007"},"include_deactivated_users":{"type":"boolean","x-stream-index":"004"},"limit":{"format":"int32","maximum":100,"minimum":0,"type":"integer","x-stream-index":"005.003"},"offset":{"format":"int32","maximum":1000,"type":"integer","x-stream-index":"005.004"},"presence":{"description":"Request user presence status","title":"Presence","type":"boolean","x-stream-index":"003"},"sort":{"description":"Array of sort parameters","items":{"$ref":"#/components/schemas/SortParam"},"maximum":5,"title":"Sort","type":"array","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"006.002"},"user_id":{"type":"string","x-stream-index":"006.001"}},"required":["filter_conditions"],"type":"object"},"RTMPIngress":{"description":"RTMP input settings","properties":{"address":{"type":"string","x-stream-index":"001"}},"required":["address"],"title":"RTMP Ingress","type":"object"},"Reaction":{"description":"Represents user reaction to a message","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"008"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"009"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["message_id","type","score","created_at","updated_at","Custom"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionRemovalResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactionRequest":{"description":"Represents user reaction to a message","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"message_id":{"description":"ID of a message user reacted to","title":"Message ID","type":"string","x-stream-index":"003"},"score":{"description":"Reaction score. If not specified reaction has score of 1","format":"int32","title":"Score","type":"integer","x-stream-index":"007"},"type":{"description":"The type of reaction (e.g. 'like', 'laugh', 'wow')","maxLength":30,"title":"Type","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserObjectRequest","x-stream-index":"005"},"user_id":{"description":"ID of a user who reacted to a message","title":"User ID","type":"string","x-stream-index":"004"}},"required":["type"],"title":"Reaction","type":"object","x-stream-docs-page-id":"send_reaction"},"ReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"002"}},"required":["duration"],"type":"object"},"ReactivateUserRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who's reactivating the user","title":"Created by ID","type":"string","x-stream-index":"004"},"name":{"description":"Set this field to put new name for the user","title":"Name","type":"string","x-stream-index":"003"},"restore_messages":{"description":"Restore previously deleted messages","title":"Restore messages","type":"boolean","x-stream-index":"002"},"user_id":{"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"ReactivateUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.002.001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ReactivateUsersRequest":{"nullable":true,"properties":{"created_by_id":{"description":"ID of the user who's reactivating the users","title":"Created by ID","type":"string","x-stream-index":"003"},"restore_messages":{"description":"Restore previously deleted messages","title":"Restore messages","type":"boolean","x-stream-index":"002"},"user_ids":{"description":"User IDs to reactivate","items":{"type":"string"},"maximum":100,"minimum":1,"title":"User IDs","type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"ReactivateUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.002.001"},"task_id":{"type":"string","x-stream-index":"001.001"}},"required":["task_id","duration"],"type":"object"},"Read":{"nullable":true,"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"004"},"unread_messages":{"format":"int32","type":"integer","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001"}},"required":["last_read","unread_messages"],"type":"object"},"RecordSettings":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality"],"type":"object"},"RecordSettingsRequest":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettingsRequest","title":"LayoutSettings","x-stream-index":"004"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"002"},"quality":{"enum":["360p","480p","720p","1080p","1440p"],"type":"string","x-stream-index":"003"}},"required":["mode"],"type":"object"},"RecordSettingsResponse":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","title":"Layout","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality","layout"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RestoreUsersRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":100,"minimum":1,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"RingSettingsRequest":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"001"}},"type":"object"},"Role":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"custom":{"description":"Whether this is a custom role or built-in","title":"Custom","type":"boolean","x-stream-index":"002"},"name":{"description":"Unique role name","title":"Name","type":"string","x-stream-index":"001"},"scopes":{"description":"List of scopes where this role is currently present. `.app` means that role is present in app-level grants","items":{"type":"string"},"title":"Scopes","type":"array","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"}},"required":["name","custom","scopes","created_at","updated_at"],"type":"object"},"S3Request":{"properties":{"s3_api_key":{"type":"string","x-stream-index":"002"},"s3_region":{"type":"string","x-stream-index":"001"},"s3_secret":{"type":"string","x-stream-index":"003"}},"required":["s3_region"],"type":"object"},"SFULocationResponse":{"properties":{"coordinates":{"$ref":"#/components/schemas/Coordinates","x-stream-index":"004"},"datacenter":{"type":"string","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001"},"location":{"$ref":"#/components/schemas/Location","x-stream-index":"003"}},"required":["id","datacenter","location","coordinates"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"ScreensharingSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"SearchRequest":{"properties":{"filter_conditions":{"description":"Channel filter conditions","maximum":100,"minimum":1,"title":"Channel filter","type":"object","x-stream-docs-page-id":"query_channels","x-stream-index":"002"},"limit":{"description":"Number of messages to return","format":"int32","title":"Limit","type":"integer","x-stream-index":"004"},"message_filter_conditions":{"description":"Message filter conditions","title":"Message filter","type":"object","x-stream-index":"003"},"next":{"description":"Pagination parameter. Cannot be used with non-zero offset.","title":"Next","type":"string","x-stream-index":"007"},"offset":{"description":"Pagination offset. Cannot be used with sort or next.","format":"int32","title":"Offset","type":"integer","x-stream-index":"005"},"query":{"description":"Search phrase","title":"Query","type":"string","x-stream-index":"001"},"sort":{"description":"Sort parameters. Cannot be used with non-zero offset","items":{"$ref":"#/components/schemas/SortParam"},"title":"Sort","type":"array","x-stream-index":"006"}},"required":["filter_conditions"],"type":"object"},"SearchResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"005.001"},"next":{"description":"Value to pass to the next search query in order to paginate","title":"Next","type":"string","x-stream-index":"003"},"previous":{"description":"Value that points to the previous page. Pass as the next value in a search query to paginate backwards","title":"Previous","type":"string","x-stream-index":"004"},"results":{"description":"Search results","items":{"$ref":"#/components/schemas/SearchResult"},"title":"Results","type":"array","x-stream-index":"001"},"results_warning":{"$ref":"#/components/schemas/SearchWarning","description":"Warning about the search results","title":"Results Warning","x-stream-index":"002"}},"required":["results","duration"],"type":"object"},"SearchResult":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/SearchResultMessage","description":"Found message","title":"Message","x-stream-index":"001"}},"type":"object"},"SearchResultMessage":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.031"},"attachments":{"items":{"$ref":"#/components/schemas/Attachment"},"type":"array","x-stream-index":"001.011"},"before_message_send_failed":{"type":"boolean","x-stream-index":"001.043"},"channel":{"$ref":"#/components/schemas/ChannelResponse","description":"Channel object","title":"Channel","x-stream-index":"002"},"cid":{"type":"string","x-stream-index":"001.026"},"command":{"type":"string","x-stream-index":"001.006"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.028"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.030"},"deleted_reply_count":{"format":"int32","type":"integer","x-stream-index":"001.021"},"html":{"type":"string","x-stream-index":"001.007"},"i18n":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"001.041"},"id":{"type":"string","x-stream-index":"001.002"},"image_labels":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.037"},"latest_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.012"},"mentioned_users":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.040"},"message_text_updated_at":{"format":"date-time","type":"string","x-stream-index":"001.049"},"mml":{"type":"string","x-stream-index":"001.005"},"own_reactions":{"items":{"$ref":"#/components/schemas/Reaction"},"type":"array","x-stream-index":"001.013"},"parent_id":{"type":"string","x-stream-index":"001.017"},"pin_expires":{"format":"date-time","type":"string","x-stream-index":"001.048"},"pinned":{"type":"boolean","x-stream-index":"001.044"},"pinned_at":{"format":"date-time","type":"string","x-stream-index":"001.045"},"pinned_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.047"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"001.051"},"poll_id":{"type":"string","x-stream-index":"001.050"},"quoted_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.023"},"quoted_message_id":{"type":"string","x-stream-index":"001.022"},"reaction_counts":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.014"},"reaction_scores":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"001.015"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.020"},"shadowed":{"type":"boolean","x-stream-index":"001.033"},"show_in_channel":{"type":"boolean","x-stream-index":"001.019"},"silent":{"type":"boolean","x-stream-index":"001.042"},"text":{"type":"string","x-stream-index":"001.004"},"thread_participants":{"items":{"$ref":"#/components/schemas/UserObject"},"type":"array","x-stream-index":"001.025"},"type":{"type":"string","x-stream-index":"001.008"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.029"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.010"}},"required":["id","text","html","type","attachments","latest_reactions","own_reactions","reaction_counts","reaction_scores","reply_count","deleted_reply_count","cid","created_at","updated_at","Custom","shadowed","mentioned_users","silent","pinned","poll_id"],"type":"object"},"SearchWarning":{"properties":{"channel_search_cids":{"description":"Channel CIDs for the searched channels","items":{"type":"string"},"title":"Channel Search CIDs","type":"array","x-stream-index":"004"},"channel_search_count":{"description":"Number of channels searched","format":"int32","title":"Channel Search Count","type":"integer","x-stream-index":"003"},"warning_code":{"description":"Code corresponding to the warning","format":"int32","title":"Warning Code","type":"integer","x-stream-index":"002"},"warning_description":{"description":"Description of the warning","title":"Warning Description","type":"string","x-stream-index":"001"}},"required":["warning_description","warning_code"],"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/EventRequest","x-stream-index":"001"}},"required":["event"],"type":"object"},"SendEventResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SendMessageRequest":{"nullable":true,"properties":{"force_moderation":{"type":"boolean","x-stream-index":"007"},"keep_channel_hidden":{"type":"boolean","x-stream-index":"008"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"pending":{"type":"boolean","x-stream-index":"006"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"005"},"skip_enrich_url":{"type":"boolean","x-stream-index":"003"},"skip_push":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"SendMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"enforce_unique":{"description":"Whether to replace all existing user reactions","title":"Enforce unique","type":"boolean","x-stream-index":"003"},"reaction":{"$ref":"#/components/schemas/ReactionRequest","x-stream-index":"002"},"skip_push":{"description":"Skips any mobile push notifications","title":"Skip push","type":"boolean","x-stream-index":"004"}},"required":["reaction"],"type":"object"},"SendUserCustomEventRequest":{"nullable":true,"properties":{"event":{"$ref":"#/components/schemas/UserCustomEventRequest","x-stream-index":"002"}},"required":["event"],"type":"object"},"ShowChannelRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"type":"object"},"ShowChannelResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParam":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StartHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StartHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"playlist_url":{"type":"string","x-stream-index":"002"}},"required":["duration","playlist_url"],"type":"object"},"StartRecordingRequest":{"nullable":true,"properties":{"recording_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartRecordingResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StartTranscriptionRequest":{"nullable":true,"properties":{"transcription_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartTranscriptionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Stats":{"properties":{"average_seconds":{"format":"float","type":"number","x-stream-index":"001"},"max_seconds":{"format":"float","type":"number","x-stream-index":"002"}},"required":["average_seconds","max_seconds"],"type":"object"},"StopHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StopHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopLiveRequest":{"nullable":true,"type":"object"},"StopLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"StopRecordingRequest":{"nullable":true,"type":"object"},"StopRecordingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopTranscriptionRequest":{"nullable":true,"type":"object"},"StopTranscriptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Subsession":{"properties":{"sfu_id":{"type":"string","x-stream-index":"003"},"ts_ended_at":{"format":"int64","type":"integer","x-stream-index":"002"},"ts_joined_at":{"format":"int64","type":"integer","x-stream-index":"001"}},"required":["ts_joined_at","ts_ended_at","sfu_id"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"TargetResolutionRequest":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"type":"object"},"Thread":{"description":"Represents a conversation thread linked to a specific message in a channel.","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"012"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"010"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom"],"title":"Thread","type":"object"},"ThreadParticipant":{"description":"Represents a user that is participating in a thread.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"010"},"app_pk":{"format":"int32","readOnly":true,"type":"integer","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"007"},"last_read_at":{"format":"date-time","type":"string","x-stream-index":"009"},"left_thread_at":{"description":"Left Thread At is the time when the user left the thread","format":"date-time","title":"Left Thread At","type":"string","x-stream-index":"008"},"thread_id":{"description":"Thead ID is unique string identifier of the thread","title":"ID","type":"string","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserObject","description":"User is the user object","title":"User","x-stream-index":"006"},"user_id":{"description":"User ID is unique string identifier of the user","title":"User ID","type":"string","x-stream-index":"005"}},"required":["app_pk","channel_cid","created_at","last_read_at","Custom"],"title":"ThreadParticipant","type":"object"},"ThreadResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"channel_cid":{"type":"string","x-stream-index":"001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"006"},"created_by_user_id":{"type":"string","x-stream-index":"005"},"custom":{"type":"object","x-stream-index":"015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"010"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"004"},"parent_message_id":{"type":"string","x-stream-index":"003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"008"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"009"},"title":{"type":"string","x-stream-index":"014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom"],"type":"object"},"ThreadState":{"description":"Represents a conversation thread linked to a specific message in a channel.","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.017"},"channel":{"$ref":"#/components/schemas/Channel","description":"Channel is the channel the thread belongs to","title":"Channel","x-stream-index":"001.004"},"channel_cid":{"description":"Channel CID is unique string identifier of the channel","title":"Channel CID","type":"string","x-stream-index":"001.003"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"001.013"},"created_by":{"$ref":"#/components/schemas/UserObject","description":"Created By is the user who created the thread","title":"Created By","x-stream-index":"001.008"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"001.015"},"last_message_at":{"description":"Last Message At is the time of the last message in the thread","format":"date-time","title":"Last Message At","type":"string","x-stream-index":"001.012"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","description":"Parent Message is the message the thread is replying to","title":"Parent Message","x-stream-index":"001.006"},"parent_message_id":{"description":"Parent Message ID is unique string identifier of the parent message","title":"Parent Message ID","type":"string","x-stream-index":"001.005"},"participant_count":{"description":"The number of participants in the thread","format":"int32","title":"Participant Count","type":"integer","x-stream-index":"001.010"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"description":"The number of replies in the thread","format":"int32","title":"Reply Count","type":"integer","x-stream-index":"001.009"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.011"},"title":{"description":"Title is the title of the thread","title":"Title","type":"string","x-stream-index":"001.016"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"001.014"}},"required":["channel_cid","parent_message_id","created_at","updated_at","title","Custom","latest_replies"],"title":"Thread","type":"object"},"ThreadStateResponse":{"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001.002"},"channel_cid":{"type":"string","x-stream-index":"001.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.011"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"001.006"},"created_by_user_id":{"type":"string","x-stream-index":"001.005"},"custom":{"type":"object","x-stream-index":"001.015"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.013"},"last_message_at":{"format":"date-time","type":"string","x-stream-index":"001.010"},"latest_replies":{"items":{"$ref":"#/components/schemas/Message"},"type":"array","x-stream-index":"002"},"parent_message":{"$ref":"#/components/schemas/Message","x-stream-index":"001.004"},"parent_message_id":{"type":"string","x-stream-index":"001.003"},"participant_count":{"format":"int32","type":"integer","x-stream-index":"001.008"},"read":{"items":{"$ref":"#/components/schemas/Read"},"type":"array","x-stream-index":"003"},"reply_count":{"format":"int32","type":"integer","x-stream-index":"001.007"},"thread_participants":{"items":{"$ref":"#/components/schemas/ThreadParticipant"},"type":"array","x-stream-index":"001.009"},"title":{"type":"string","x-stream-index":"001.014"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.012"}},"required":["channel_cid","parent_message_id","created_by_user_id","created_at","updated_at","title","custom","latest_replies"],"type":"object"},"Thresholds":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholds","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThresholdsRequest":{"description":"Sets thresholds for AI moderation","properties":{"explicit":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for explicit messages","title":"Explicit","x-stream-index":"001"},"spam":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for spam","title":"Spam","x-stream-index":"002"},"toxic":{"$ref":"#/components/schemas/LabelThresholdsRequest","description":"Thresholds for toxic messages","title":"Toxic","x-stream-index":"003"}},"title":"Auto moderation thresholds","type":"object"},"ThumbnailResponse":{"properties":{"image_url":{"type":"string","x-stream-index":"001"}},"required":["image_url"],"type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"ThumbnailsSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranscriptionSettingsRequest":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"TranslateMessageRequest":{"nullable":true,"properties":{"language":{"description":"Language to translate message to","enum":["af","sq","am","ar","az","bn","bs","bg","zh","zh-TW","hr","cs","da","fa-AF","nl","en","et","fi","fr","fr-CA","ka","de","el","ha","he","hi","hu","id","it","ja","ko","lv","ms","no","fa","ps","pl","pt","ro","ru","sr","sk","sl","so","es","es-MX","sw","sv","tl","ta","th","tr","uk","ur","vi"],"title":"Language","type":"string","x-stream-index":"002"}},"required":["language"],"type":"object"},"TruncateChannelRequest":{"nullable":true,"properties":{"hard_delete":{"description":"Permanently delete channel data (messages, reactions, etc.)","title":"Hard delete","type":"boolean","x-stream-index":"002"},"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"004"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"005"},"truncated_at":{"description":"Truncate channel data up to `truncated_at`. The system message (if provided) creation time is always greater than `truncated_at`","format":"date-time","title":"Truncated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"007.002"},"user_id":{"type":"string","x-stream-index":"007.001"}},"type":"object"},"TruncateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"002"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"003"}},"required":["duration"],"type":"object"},"UnblockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to unblock","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"UnblockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnmuteChannelRequest":{"nullable":true,"properties":{"channel_cids":{"description":"Channel CIDs to mute (if multiple channels)","items":{"type":"string"},"maximum":25,"title":"Channel CIDs","type":"array","x-stream-index":"001.002"},"expiration":{"description":"Duration of mute in milliseconds","title":"Expiration","type":"integer","x-stream-index":"001.003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"required":["channel_cids"],"type":"object"},"UnmuteResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"non_existing_users":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["duration"],"type":"object"},"UnmuteUserRequest":{"nullable":true,"properties":{"target_ids":{"description":"User IDs to mute (if multiple users)","items":{"type":"string"},"maximum":1000,"title":"Target IDs","type":"array","x-stream-index":"001.002"},"timeout":{"description":"Duration of mute in minutes","minimum":0,"title":"Timeout","type":"integer","x-stream-index":"001.003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"002.002"},"user_id":{"type":"string","x-stream-index":"002.001"}},"required":["target_ids"],"type":"object"},"UnpinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"UnpinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnreadCountsBatchRequest":{"nullable":true,"properties":{"user_ids":{"items":{"type":"string"},"maximum":100,"type":"array","x-stream-index":"001"}},"required":["user_ids"],"type":"object"},"UnreadCountsBatchResponse":{"nullable":true,"properties":{"counts_by_user":{"additionalProperties":{"$ref":"#/components/schemas/UnreadCountsResponse"},"type":"object","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["counts_by_user","duration"],"type":"object"},"UnreadCountsChannel":{"properties":{"channel_id":{"type":"string","x-stream-index":"001"},"last_read":{"format":"date-time","type":"string","x-stream-index":"003"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["channel_id","unread_count","last_read"],"type":"object"},"UnreadCountsChannelType":{"properties":{"channel_count":{"format":"int32","type":"integer","x-stream-index":"002"},"channel_type":{"type":"string","x-stream-index":"001"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"003"}},"required":["channel_type","channel_count","unread_count"],"type":"object"},"UnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"003"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads"],"type":"object"},"UnreadCountsThread":{"properties":{"last_read":{"format":"date-time","type":"string","x-stream-index":"002"},"last_read_message_id":{"type":"string","x-stream-index":"003"},"parent_message_id":{"type":"string","x-stream-index":"004"},"unread_count":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["unread_count","last_read","last_read_message_id","parent_message_id"],"type":"object"},"UpdateAppRequest":{"nullable":true,"properties":{"agora_options":{"$ref":"#/components/schemas/ConfigRequest","x-stream-index":"001.038"},"apn_config":{"$ref":"#/components/schemas/APNConfigRequest","x-stream-index":"001.003"},"async_moderation_config":{"$ref":"#/components/schemas/AsyncModerationConfigurationRequest","x-stream-index":"001.040"},"async_url_enrich_enabled":{"type":"boolean","x-stream-index":"001.017"},"auto_translation_enabled":{"type":"boolean","x-stream-index":"001.016"},"before_message_send_hook_url":{"type":"string","x-stream-index":"001.018"},"cdn_expiration_seconds":{"format":"int32","maximum":1209600,"minimum":14400,"type":"integer","x-stream-index":"001.036"},"channel_hide_members_only":{"type":"boolean","x-stream-index":"001.031"},"custom_action_handler_url":{"type":"string","x-stream-index":"001.019"},"datadog_info":{"$ref":"#/components/schemas/DataDogInfoRequest","x-stream-index":"001.041"},"disable_auth_checks":{"type":"boolean","x-stream-index":"001.001"},"disable_permissions_checks":{"type":"boolean","x-stream-index":"001.002"},"enforce_unique_usernames":{"enum":["no","app","team"],"type":"string","x-stream-index":"001.020"},"file_upload_config":{"$ref":"#/components/schemas/FileUploadConfigRequest","x-stream-index":"001.028"},"firebase_config":{"$ref":"#/components/schemas/FirebaseConfigRequest","x-stream-index":"001.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.032"},"hms_options":{"$ref":"#/components/schemas/ConfigRequest","x-stream-index":"001.039"},"huawei_config":{"$ref":"#/components/schemas/HuaweiConfigRequest","x-stream-index":"001.005"},"image_moderation_block_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.013"},"image_moderation_enabled":{"type":"boolean","x-stream-index":"001.014"},"image_moderation_labels":{"items":{"type":"string"},"type":"array","x-stream-index":"001.012"},"image_upload_config":{"$ref":"#/components/schemas/FileUploadConfigRequest","x-stream-index":"001.027"},"migrate_permissions_to_v2":{"type":"boolean","x-stream-index":"001.033"},"multi_tenant_enabled":{"type":"boolean","x-stream-index":"001.011"},"permission_version":{"enum":["v1","v2"],"type":"string","x-stream-index":"001.009"},"push_config":{"$ref":"#/components/schemas/PushConfigRequest","x-stream-index":"001.007"},"reminders_interval":{"format":"int32","maximum":86400,"minimum":60,"type":"integer","x-stream-index":"001.034"},"reminders_max_members":{"format":"int32","minimum":2,"type":"integer","x-stream-index":"001.035"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.029"},"sns_key":{"type":"string","x-stream-index":"001.025"},"sns_secret":{"type":"string","x-stream-index":"001.026"},"sns_topic_arn":{"type":"string","x-stream-index":"001.024"},"sqs_key":{"type":"string","x-stream-index":"001.022"},"sqs_secret":{"type":"string","x-stream-index":"001.023"},"sqs_url":{"type":"string","x-stream-index":"001.021"},"user_search_disallowed_roles":{"items":{"type":"string"},"type":"array","x-stream-index":"001.010"},"video_provider":{"enum":["agora","hms"],"type":"string","x-stream-index":"001.037"},"webhook_events":{"items":{"type":"string"},"type":"array","x-stream-index":"001.030"},"webhook_url":{"type":"string","x-stream-index":"001.008"},"xiaomi_config":{"$ref":"#/components/schemas/XiaomiConfigRequest","x-stream-index":"001.006"}},"type":"object"},"UpdateBlockListRequest":{"nullable":true,"properties":{"Name":{"type":"string","writeOnly":true,"x-stream-index":"001"},"words":{"description":"List of words to block","items":{"type":"string"},"minimum":1,"title":"Words","type":"array","x-stream-index":"002"}},"title":"Update block list","type":"object","x-stream-docs-page-id":"update_block_list"},"UpdateCallMembersRequest":{"nullable":true,"properties":{"remove_members":{"description":"List of userID to remove","items":{"type":"string"},"maximum":100,"title":"Remove Members","type":"array","x-stream-index":"003"},"update_members":{"description":"List of members to update or insert","items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"title":"Update Members","type":"array","x-stream-index":"004"}},"type":"object"},"UpdateCallMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"002"}},"required":["duration","members"],"type":"object"},"UpdateCallRequest":{"nullable":true,"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","description":"the settings to change for this call","title":"Settings Override","x-stream-index":"004"},"starts_at":{"description":"the time the call is scheduled to start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"005"}},"type":"object"},"UpdateCallResponse":{"description":"Represents a call","nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"title":"Call","type":"object"},"UpdateCallTypeRequest":{"nullable":true,"properties":{"external_storage":{"type":"string","x-stream-index":"002.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettingsRequest","x-stream-index":"002.002"},"settings":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"002.003"}},"type":"object"},"UpdateCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"UpdateChannelPartialRequest":{"nullable":true,"properties":{"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["set","unset"],"type":"object"},"UpdateChannelPartialResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelRequest":{"nullable":true,"properties":{"accept_invite":{"description":"Set to `true` to accept the invite","title":"Accept invite","type":"boolean","x-stream-index":"008"},"add_members":{"description":"List of user IDs to add to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Add members","type":"array","x-stream-index":"001"},"add_moderators":{"description":"List of user IDs to make channel moderators","items":{"type":"string"},"maximum":100,"title":"Add moderators","type":"array","x-stream-index":"003"},"assign_roles":{"description":"List of channel member role assignments. If any specified user is not part of the channel, the request will fail","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Assign roles","type":"array","x-stream-index":"006"},"cooldown":{"description":"Sets cool down period for the channel in seconds","format":"int32","maximum":120,"minimum":0,"title":"Cool down","type":"integer","x-stream-index":"007"},"data":{"$ref":"#/components/schemas/ChannelRequest","x-stream-index":"013.001"},"demote_moderators":{"description":"List of user IDs to take away moderators status from","items":{"type":"string"},"maximum":100,"title":"Demote moderators","type":"array","x-stream-index":"004"},"hide_history":{"description":"Set to `true` to hide channel's history when adding new members","title":"Hide history","type":"boolean","x-stream-index":"012"},"invites":{"description":"List of user IDs to invite to the channel","items":{"$ref":"#/components/schemas/ChannelMemberRequest"},"maximum":100,"title":"Invites","type":"array","x-stream-index":"005"},"message":{"$ref":"#/components/schemas/MessageRequest","description":"Message to send to the chat when channel is successfully updated","title":"Message","x-stream-index":"010"},"reject_invite":{"description":"Set to `true` to reject the invite","title":"Reject invite","type":"boolean","x-stream-index":"009"},"remove_members":{"description":"List of user IDs to remove from the channel","items":{"type":"string"},"maximum":100,"title":"Remove members","type":"array","x-stream-index":"002"},"skip_push":{"description":"When `message` is set disables all push notifications for it","title":"Skip push","type":"boolean","x-stream-index":"011"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"014.002"},"user_id":{"type":"string","x-stream-index":"014.001"}},"required":["remove_members","add_moderators","demote_moderators"],"title":"Channel update request","type":"object","x-stream-docs-page-id":"channel_update"},"UpdateChannelResponse":{"nullable":true,"properties":{"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"004.001"},"members":{"items":{"$ref":"#/components/schemas/ChannelMember"},"type":"array","x-stream-index":"003"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"002"}},"required":["members","duration"],"type":"object"},"UpdateChannelTypeRequest":{"nullable":true,"properties":{"NameFromPath":{"type":"string","writeOnly":true,"x-stream-index":"001"},"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"007.001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"007.001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"007.001.020"},"automod_thresholds":{"$ref":"#/components/schemas/ThresholdsRequest","x-stream-index":"007.001.025"},"blocklist":{"type":"string","x-stream-index":"007.001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"007.001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptionsRequest"},"type":"array","x-stream-index":"007.001.023"},"commands":{"description":"List of commands that channel supports","items":{"type":"string"},"title":"Commands","type":"array","x-stream-index":"007.003"},"connect_events":{"type":"boolean","x-stream-index":"007.001.004"},"custom_events":{"type":"boolean","x-stream-index":"007.001.012"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"004"},"mark_messages_pending":{"type":"boolean","x-stream-index":"007.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"007.001.018"},"message_retention":{"type":"string","x-stream-index":"007.001.017"},"mutes":{"type":"boolean","x-stream-index":"007.001.009"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest_1"},"type":"array","x-stream-index":"003"},"polls":{"type":"boolean","x-stream-index":"007.001.016"},"push_notifications":{"type":"boolean","x-stream-index":"007.001.013"},"quotes":{"type":"boolean","x-stream-index":"007.001.008"},"reactions":{"type":"boolean","x-stream-index":"007.001.006"},"read_events":{"type":"boolean","x-stream-index":"007.001.003"},"reminders":{"type":"boolean","x-stream-index":"007.001.014"},"replies":{"type":"boolean","x-stream-index":"007.001.007"},"search":{"type":"boolean","x-stream-index":"007.001.005"},"typing_events":{"type":"boolean","x-stream-index":"007.001.002"},"uploads":{"type":"boolean","x-stream-index":"007.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"007.001.011"}},"required":["automod"],"type":"object"},"UpdateChannelTypeResponse":{"nullable":true,"properties":{"allowed_flag_reasons":{"items":{"type":"string"},"type":"array","x-stream-index":"003.001.024"},"automod":{"enum":["disabled","simple","AI"],"type":"string","x-stream-index":"003.001.019"},"automod_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.001.020"},"automod_thresholds":{"$ref":"#/components/schemas/Thresholds","x-stream-index":"003.001.025"},"blocklist":{"type":"string","x-stream-index":"003.001.021"},"blocklist_behavior":{"enum":["flag","block","shadow_block"],"type":"string","x-stream-index":"003.001.022"},"blocklists":{"items":{"$ref":"#/components/schemas/BlockListOptions"},"type":"array","x-stream-index":"003.001.023"},"commands":{"items":{"type":"string"},"type":"array","x-stream-index":"003.003"},"connect_events":{"type":"boolean","x-stream-index":"003.001.004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"003.002.003"},"custom_events":{"type":"boolean","x-stream-index":"003.001.012"},"duration":{"type":"string","x-stream-index":"004.001"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"mark_messages_pending":{"type":"boolean","x-stream-index":"003.001.015"},"max_message_length":{"format":"int32","maximum":20000,"type":"integer","x-stream-index":"003.001.018"},"message_retention":{"type":"string","x-stream-index":"003.001.017"},"mutes":{"type":"boolean","x-stream-index":"003.001.009"},"name":{"type":"string","x-stream-index":"003.001.001"},"permissions":{"items":{"$ref":"#/components/schemas/PolicyRequest"},"type":"array","x-stream-index":"001"},"polls":{"type":"boolean","x-stream-index":"003.001.016"},"push_notifications":{"type":"boolean","x-stream-index":"003.001.013"},"quotes":{"type":"boolean","x-stream-index":"003.001.008"},"reactions":{"type":"boolean","x-stream-index":"003.001.006"},"read_events":{"type":"boolean","x-stream-index":"003.001.003"},"reminders":{"type":"boolean","x-stream-index":"003.001.014"},"replies":{"type":"boolean","x-stream-index":"003.001.007"},"search":{"type":"boolean","x-stream-index":"003.001.005"},"typing_events":{"type":"boolean","x-stream-index":"003.001.002"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"003.002.004"},"uploads":{"type":"boolean","x-stream-index":"003.001.010"},"url_enrichment":{"type":"boolean","x-stream-index":"003.001.011"}},"required":["permissions","grants","name","typing_events","read_events","connect_events","search","reactions","replies","quotes","mutes","uploads","url_enrichment","custom_events","push_notifications","reminders","mark_messages_pending","polls","message_retention","max_message_length","automod","automod_behavior","created_at","updated_at","commands","duration"],"type":"object"},"UpdateCommandRequest":{"description":"Represents custom chat command","nullable":true,"properties":{"Name":{"type":"string","writeOnly":true,"x-stream-index":"001"},"args":{"description":"Arguments help text, shown in commands auto-completion","maxLength":255,"title":"Arguments","type":"string","x-stream-index":"003"},"description":{"description":"Description, shown in commands auto-completion","maxLength":255,"title":"Description","type":"string","x-stream-index":"002"},"set":{"description":"Set name used for grouping commands","maxLength":255,"title":"Set","type":"string","x-stream-index":"004"}},"required":["description"],"title":"Command","type":"object"},"UpdateCommandResponse":{"nullable":true,"properties":{"command":{"$ref":"#/components/schemas/Command","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["duration"],"type":"object"},"UpdateExternalStorageRequest":{"nullable":true,"properties":{"aws_s3":{"$ref":"#/components/schemas/S3Request","x-stream-index":"003.004"},"azure_blob":{"$ref":"#/components/schemas/AzureRequest","x-stream-index":"003.006"},"bucket":{"type":"string","x-stream-index":"003.002"},"gcs_credentials":{"type":"string","x-stream-index":"003.005"},"path":{"type":"string","x-stream-index":"003.003"},"storage_type":{"type":"string","x-stream-index":"003.001"}},"required":["storage_type","bucket"],"type":"object"},"UpdateExternalStorageResponse":{"nullable":true,"properties":{"bucket":{"type":"string","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001.001"},"path":{"type":"string","x-stream-index":"001.004"},"type":{"type":"string","x-stream-index":"001.002"}},"required":["name","type","bucket","path","duration"],"type":"object"},"UpdateMessagePartialRequest":{"nullable":true,"properties":{"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"skip_enrich_url":{"type":"boolean","x-stream-index":"001"},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"004.002"},"user_id":{"type":"string","x-stream-index":"004.001"}},"required":["set","unset"],"type":"object"},"UpdateMessagePartialResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdateMessageRequest":{"nullable":true,"properties":{"message":{"$ref":"#/components/schemas/MessageRequest","x-stream-index":"001"},"skip_enrich_url":{"type":"boolean","x-stream-index":"002"}},"required":["message"],"type":"object"},"UpdateMessageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"001"},"pending_message_metadata":{"additionalProperties":{"type":"string"},"type":"object","x-stream-index":"002"}},"required":["message","duration"],"type":"object"},"UpdatePollOptionRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"id":{"maxLength":255,"type":"string","x-stream-index":"002"},"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"text":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"}},"required":["poll_id","id","text"],"type":"object"},"UpdatePollPartialRequest":{"nullable":true,"properties":{"poll_id":{"maxLength":255,"type":"string","x-stream-index":"001"},"set":{"description":"Sets new field values","title":"Set","type":"object","x-stream-index":"002.001","x-stream-map":{"key":"field","title":"Value","description":"New value to set"}},"unset":{"description":"Array of field names to unset","items":{"type":"string"},"title":"Unset","type":"array","x-stream-index":"002.002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["poll_id","set","unset"],"type":"object"},"UpdatePollRequest":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"011"},"allow_answers":{"type":"boolean","x-stream-index":"009"},"allow_user_suggested_options":{"type":"boolean","x-stream-index":"008"},"description":{"type":"string","x-stream-index":"003"},"enforce_unique_vote":{"type":"boolean","x-stream-index":"005"},"id":{"maxLength":255,"type":"string","x-stream-index":"001"},"is_closed":{"type":"boolean","x-stream-index":"010"},"max_votes_allowed":{"format":"int32","maximum":10,"type":"integer","x-stream-index":"007"},"name":{"type":"string","x-stream-index":"002"},"options":{"items":{"$ref":"#/components/schemas/PollOptionRequest"},"maximum":100,"type":"array","x-stream-index":"004"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"012.002"},"user_id":{"type":"string","x-stream-index":"012.001"},"voting_visibility":{"enum":["anonymous","public"],"type":"string","x-stream-index":"006"}},"required":["id","name"],"type":"object"},"UpdateThreadPartialRequest":{"nullable":true,"properties":{"ID":{"type":"string","writeOnly":true,"x-stream-index":"001"},"set":{"type":"object","x-stream-index":"004.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"004.002"},"user":{"$ref":"#/components/schemas/UserRequest_1","x-stream-index":"003.002"},"user_id":{"type":"string","x-stream-index":"003.001"}},"required":["set","unset"],"type":"object"},"UpdateThreadPartialResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"thread":{"$ref":"#/components/schemas/ThreadResponse","description":"Updated thread (not enriched)","title":"Thread","x-stream-index":"001"}},"required":["thread","duration"],"type":"object"},"UpdateUserPartialRequest":{"nullable":true,"properties":{"id":{"description":"User ID to update","title":"ID","type":"string","x-stream-index":"001"},"set":{"type":"object","x-stream-index":"002.001"},"unset":{"items":{"type":"string"},"type":"array","x-stream-index":"002.002"}},"required":["id","set","unset"],"type":"object"},"UpdateUserPermissionsRequest":{"nullable":true,"properties":{"grant_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"revoke_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"UpdateUserPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdateUsersRequest":{"nullable":true,"properties":{"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObjectRequest"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users"],"type":"object"},"UpdateUsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"003.001"},"membership_deletion_task_id":{"type":"string","x-stream-index":"002"},"users":{"additionalProperties":{"$ref":"#/components/schemas/UserObject"},"description":"Object containing users","title":"Users","type":"object","x-stream-index":"001","x-stream-map":{"key":"user_id"}}},"required":["users","membership_deletion_task_id","duration"],"type":"object"},"UpsertPushProviderRequest":{"nullable":true,"properties":{"push_provider":{"$ref":"#/components/schemas/PushProviderRequest","x-stream-index":"001"}},"type":"object"},"UpsertPushProviderResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"push_provider":{"$ref":"#/components/schemas/PushProviderResponse","x-stream-index":"001"}},"required":["push_provider","duration"],"type":"object"},"UserCustomEventRequest":{"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"type":{"type":"string","x-stream-index":"001"}},"required":["type"],"type":"object"},"UserInfoResponse":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"image":{"type":"string","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"004"}},"required":["name","image","custom","roles"],"type":"object"},"UserMute":{"nullable":true,"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"expires":{"description":"Date/time of mute expiration","format":"date-time","title":"Expires","type":"string","x-stream-index":"008"},"target":{"$ref":"#/components/schemas/UserObject","description":"User who's muted","title":"Target","x-stream-index":"007"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"},"user":{"$ref":"#/components/schemas/UserObject","description":"Owner of channel mute","title":"User","x-stream-index":"005"}},"required":["created_at","updated_at"],"type":"object"},"UserObject":{"description":"Represents chat user","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"ban_expires":{"description":"Expiration date of the ban","format":"date-time","title":"Ban expires","type":"string","x-stream-index":"015"},"banned":{"description":"Whether a user is banned or not","title":"Banned","type":"boolean","x-stream-index":"014"},"created_at":{"description":"Date/time of creation","format":"date-time","readOnly":true,"title":"Created at","type":"string","x-stream-index":"007"},"deactivated_at":{"description":"Date of deactivation","format":"date-time","readOnly":true,"title":"Deactivated at","type":"string","x-stream-index":"012"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","readOnly":true,"title":"Deleted at","type":"string","x-stream-index":"011"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"021"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"031"},"last_active":{"description":"Date of last activity","format":"date-time","readOnly":true,"title":"Last active","type":"string","x-stream-index":"010"},"online":{"description":"Whether a user online or not","readOnly":true,"title":"Online","type":"boolean","x-stream-index":"020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"023"},"revoke_tokens_issued_before":{"description":"Revocation date for tokens","format":"date-time","title":"Revoke tokens issued before","type":"string","x-stream-index":"038"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"032"},"updated_at":{"description":"Date/time of the last update","format":"date-time","readOnly":true,"title":"Updated at","type":"string","x-stream-index":"008"}},"required":["id"],"title":"User object","type":"object"},"UserObjectRequest":{"description":"Represents chat user","nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"005"},"id":{"description":"Unique user identifier","title":"ID","type":"string","x-stream-index":"003"},"invisible":{"type":"boolean","x-stream-index":"016"},"language":{"description":"Preferred language of a user","title":"Language","type":"string","x-stream-index":"021"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettingsRequest","x-stream-index":"022"},"role":{"description":"Determines the set of user permissions","title":"Role","type":"string","x-stream-index":"004"},"teams":{"description":"List of teams user is a part of","items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"019"}},"required":["id"],"title":"User object","type":"object"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserRequest_1":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserResponse":{"nullable":true,"properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"001.005"},"ban_expires":{"format":"date-time","type":"string","x-stream-index":"001.015"},"banned":{"type":"boolean","x-stream-index":"001.014"},"created_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.007"},"deactivated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.012"},"deleted_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.011"},"id":{"type":"string","x-stream-index":"001.003"},"invisible":{"type":"boolean","x-stream-index":"001.021"},"language":{"type":"string","x-stream-index":"001.031"},"last_active":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.010"},"online":{"readOnly":true,"type":"boolean","x-stream-index":"001.020"},"push_notifications":{"$ref":"#/components/schemas/PushNotificationSettings","x-stream-index":"001.023"},"revoke_tokens_issued_before":{"format":"date-time","type":"string","x-stream-index":"001.038"},"role":{"type":"string","x-stream-index":"001.004"},"shadow_banned":{"description":"Whether user is shadow banned or not","title":"Shadow banned","type":"boolean","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.032"},"updated_at":{"format":"date-time","readOnly":true,"type":"string","x-stream-index":"001.008"}},"required":["id","role","Custom","banned","online","shadow_banned"],"type":"object"},"UserSessionStats":{"properties":{"browser":{"type":"string","x-stream-index":"009"},"browser_version":{"type":"string","x-stream-index":"010"},"current_ip":{"type":"string","x-stream-index":"028"},"current_sfu":{"type":"string","x-stream-index":"029"},"device_model":{"type":"string","x-stream-index":"007"},"device_version":{"type":"string","x-stream-index":"008"},"freeze_duration_seconds":{"format":"float","type":"number","x-stream-index":"023"},"geolocation":{"$ref":"#/components/schemas/GeolocationResult","x-stream-index":"030"},"jitter":{"$ref":"#/components/schemas/Stats","x-stream-index":"011"},"latency":{"$ref":"#/components/schemas/Stats","x-stream-index":"012"},"max_fir_per_minute":{"format":"float","type":"number","x-stream-index":"019"},"max_freezes_per_minute":{"format":"float","type":"number","x-stream-index":"020"},"max_nack_per_minute":{"format":"float","type":"number","x-stream-index":"018"},"max_pli_per_minute":{"format":"float","type":"number","x-stream-index":"017"},"max_publishing_video_quality":{"$ref":"#/components/schemas/VideoQuality","x-stream-index":"016"},"max_receiving_video_quality":{"$ref":"#/components/schemas/VideoQuality","x-stream-index":"025"},"os":{"type":"string","x-stream-index":"002"},"os_version":{"type":"string","x-stream-index":"003"},"packet_loss_fraction":{"format":"float","type":"number","x-stream-index":"021"},"publishing_audio_codec":{"type":"string","x-stream-index":"015"},"publishing_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"014"},"quality_score":{"format":"float","type":"number","x-stream-index":"013"},"receiving_audio_codec":{"type":"string","x-stream-index":"024"},"receiving_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"022"},"sdk":{"type":"string","x-stream-index":"005"},"sdk_version":{"type":"string","x-stream-index":"006"},"subsessions":{"items":{"$ref":"#/components/schemas/Subsession"},"type":"array","x-stream-index":"031"},"timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"001"},"total_pixels_in":{"type":"integer","x-stream-index":"026"},"total_pixels_out":{"type":"integer","x-stream-index":"027"},"webrtc_version":{"type":"string","x-stream-index":"004"}},"required":["quality_score","publishing_duration_seconds","packet_loss_fraction","receiving_duration_seconds","freeze_duration_seconds","total_pixels_in","total_pixels_out"],"type":"object"},"UserStats":{"properties":{"info":{"$ref":"#/components/schemas/UserInfoResponse","x-stream-index":"001"},"session_stats":{"additionalProperties":{"$ref":"#/components/schemas/UserSessionStats"},"type":"object","x-stream-index":"002"}},"required":["info","session_stats"],"type":"object"},"UsersResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"002.001"},"users":{"description":"List of found users","items":{"$ref":"#/components/schemas/UserResponse"},"title":"Users","type":"array","x-stream-index":"001"}},"required":["users","duration"],"type":"object"},"VideoQuality":{"properties":{"resolution":{"$ref":"#/components/schemas/VideoResolution","x-stream-index":"001"}},"required":["resolution"],"type":"object"},"VideoResolution":{"properties":{"height":{"format":"int32","type":"integer","x-stream-index":"002"},"width":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["width","height"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VideoSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolutionRequest","x-stream-index":"003"}},"type":"object"},"VoteDataRequest":{"properties":{"Option":{"$ref":"#/components/schemas/PollOptionRequest","x-stream-index":"003"},"answer_text":{"type":"string","x-stream-index":"002"},"option_id":{"maxLength":255,"type":"string","x-stream-index":"001"}},"type":"object"},"WSEvent":{"description":"Represents an BaseEvent that happened in Stream Chat","properties":{"Custom":{"type":"object","writeOnly":true,"x-stream-index":"024"},"automoderation":{"type":"boolean","x-stream-index":"020"},"automoderation_scores":{"$ref":"#/components/schemas/ModerationResponse","x-stream-index":"021"},"channel":{"$ref":"#/components/schemas/ChannelResponse","x-stream-index":"009"},"channel_id":{"type":"string","x-stream-index":"004"},"channel_type":{"type":"string","x-stream-index":"005"},"cid":{"type":"string","x-stream-index":"003"},"connection_id":{"type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"025"},"created_by":{"$ref":"#/components/schemas/UserObject","x-stream-index":"019"},"me":{"$ref":"#/components/schemas/OwnUser","x-stream-index":"016"},"member":{"$ref":"#/components/schemas/ChannelMember","x-stream-index":"011"},"message":{"$ref":"#/components/schemas/Message","x-stream-index":"006"},"message_update":{"$ref":"#/components/schemas/MessageUpdate","x-stream-index":"007"},"parent_id":{"type":"string","x-stream-index":"022"},"poll":{"$ref":"#/components/schemas/Poll","x-stream-index":"012"},"poll_vote":{"$ref":"#/components/schemas/PollVote","x-stream-index":"013"},"reaction":{"$ref":"#/components/schemas/Reaction","x-stream-index":"008"},"reason":{"type":"string","x-stream-index":"018"},"team":{"type":"string","x-stream-index":"023"},"thread":{"$ref":"#/components/schemas/Thread","x-stream-index":"010"},"type":{"type":"string","x-stream-index":"001"},"user":{"$ref":"#/components/schemas/UserObject","x-stream-index":"014"},"user_id":{"type":"string","x-stream-index":"015"},"watcher_count":{"format":"int32","type":"integer","x-stream-index":"017"}},"required":["type","Custom","created_at"],"title":"Event","type":"object","x-stream-docs-page-id":"event_object"},"WrappedUnreadCountsResponse":{"nullable":true,"properties":{"channel_type":{"items":{"$ref":"#/components/schemas/UnreadCountsChannelType"},"type":"array","x-stream-index":"001.004"},"channels":{"items":{"$ref":"#/components/schemas/UnreadCountsChannel"},"type":"array","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"threads":{"items":{"$ref":"#/components/schemas/UnreadCountsThread"},"type":"array","x-stream-index":"001.005"},"total_unread_count":{"format":"int32","type":"integer","x-stream-index":"001.001"},"total_unread_threads_count":{"format":"int32","type":"integer","x-stream-index":"001.002"}},"required":["total_unread_count","total_unread_threads_count","channels","channel_type","threads","duration"],"type":"object"},"XiaomiConfigFields":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"package_name":{"type":"string","x-stream-index":"002"},"secret":{"type":"string","x-stream-index":"003"}},"required":["enabled"],"type":"object"},"XiaomiConfigRequest":{"properties":{"Disabled":{"type":"boolean","writeOnly":true,"x-stream-index":"003"},"package_name":{"type":"string","x-stream-index":"001"},"secret":{"type":"string","x-stream-index":"002"}},"type":"object"},"connectRequestQueryRequest":{"nullable":true,"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v105.1.0"},"openapi":"3.0.3","paths":{"/api/v2/app":{"get":{"description":"This Method returns the application settings\n","operationId":"GetApp","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetApplicationResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get App Settings","tags":["Settings"]},"patch":{"description":"This Method updates one or more application settings\n","operationId":"UpdateApp","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAppRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update App Settings","tags":["Settings"]}},"/api/v2/chat/blocklists":{"get":{"description":"Returns all available block lists\n","operationId":"ListBlockLists","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListBlockListResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List block lists","tags":["Settings","Moderation"]},"post":{"description":"Creates a new application blocklist, once created the blocklist can be used by any channel type\n","operationId":"CreateBlockList","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBlockListRequest"}}},"description":"Block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create block list","tags":["Settings","Moderation"]}},"/api/v2/chat/blocklists/{name}":{"delete":{"description":"Deletes previously created application blocklist\n","operationId":"DeleteBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete block list","tags":["Settings","Moderation"]},"get":{"description":"Returns block list by given name\n","operationId":"GetBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetBlockListResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get block list","tags":["Settings","Moderation"]},"put":{"description":"Updates contents of the block list\n","operationId":"UpdateBlockList","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Block list name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateBlockListRequest"}}},"description":"Update block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update block list","tags":["Settings","Moderation"]}},"/api/v2/chat/blocklists/{type}/validate":{"post":{"description":"Runs specific blocklist validation, returns an appropriate error if the blocklist is invalid\n","operationId":"ValidateBlockList","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBlockListRequest"}}},"description":"Block list","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Validate Blocklist","tags":["Moderation"]}},"/api/v2/chat/channels":{"post":{"description":"Query channels with filter query\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryChannelsRequest"}}},"description":"Query Channels Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelsResponse"}}},"description":"Channels list"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query channels","tags":["Channels"]}},"/api/v2/chat/channels/delete":{"post":{"description":"Allows to delete several channels at once asynchronously\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deletes channels asynchronously","tags":["Channels","GDPR"]}},"/api/v2/chat/channels/read":{"post":{"description":"Marks channels as read up to the specific message. If no channels is given, mark all channel as read\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkChannelsRead","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkChannelsReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark channels as read","tags":["Channels","Messages"]}},"/api/v2/chat/channels/{type}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}":{"delete":{"description":"Deletes channel\n\nSends events:\n- channel.deleted\n\nRequired permissions:\n- DeleteChannel\n","operationId":"DeleteChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"hard_delete","schema":{"type":"boolean","x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel","tags":["Channels"]},"patch":{"description":"Updates certain fields of the channel\n\nSends events:\n- channel.updated\n\nRequired permissions:\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n","operationId":"UpdateChannelPartial","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update channel","tags":["Channels"]},"post":{"description":"Change channel data\n\nSends events:\n- channel.updated\n- member.added\n- member.removed\n- member.updated\n- message.new\n\nRequired permissions:\n- AddOwnChannelMembership\n- RemoveOwnChannelMembership\n- UpdateChannel\n- UpdateChannelCooldown\n- UpdateChannelFrozen\n- UpdateChannelMembers\n","operationId":"UpdateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"013.002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelRequest"}}},"description":"Channel update request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/event":{"post":{"description":"Sends event to the channel\n\nRequired permissions:\n- SendCustomEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send event","tags":["Events"]}},"/api/v2/chat/channels/{type}/{id}/file":{"delete":{"description":"Deletes previously uploaded file\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete file","tags":["Messages","Files"]},"post":{"description":"Uploads file\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadFile","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload file","tags":["Messages","Files"]}},"/api/v2/chat/channels/{type}/{id}/hide":{"post":{"description":"Marks channel as hidden for current user\n\nSends events:\n- channel.hidden\n\nRequired permissions:\n- ReadChannel\n","operationId":"HideChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HideChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Hide channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/image":{"delete":{"description":"Deletes previously uploaded image\n\nRequired permissions:\n- DeleteAttachment\n","operationId":"DeleteImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of file","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"File ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"url","schema":{"description":"File URL to delete","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FileDeleteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete image","tags":["Messages","Files"]},"post":{"description":"Uploads image\n\nRequired permissions:\n- UploadAttachment\n","operationId":"UploadImage","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001.002"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/ImageUploadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImageUploadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upload image","tags":["Messages","Files"]}},"/api/v2/chat/channels/{type}/{id}/message":{"post":{"description":"Sends new message to the specified channel\n\nSends events:\n- message.new\n- message.updated\n\nRequired permissions:\n- AddLinks\n- CreateMessage\n- PinMessage\n- SkipChannelCooldown\n- SkipMessageModeration\n- UseFrozenChannel\n","operationId":"SendMessage","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"009.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"009.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send new message","tags":["Messages"]}},"/api/v2/chat/channels/{type}/{id}/messages":{"get":{"description":"Returns list messages found by IDs\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetManyMessages","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"ids","schema":{"description":"List of comma-separated IDs","items":{"type":"string"},"maximum":50,"minimum":1,"title":"IDs","type":"array","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetManyMessagesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get many messages","tags":["Messages"]}},"/api/v2/chat/channels/{type}/{id}/query":{"post":{"description":"This Method creates a channel or returns an existing one with matching attributes\n\nSends events:\n- channel.created\n- member.added\n- member.removed\n- member.updated\n- user.watching.start\n","operationId":"GetOrCreateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID (maximum length of 64 characters)","title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelGetOrCreateRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelStateResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/read":{"post":{"description":"Marks channel as read up to the specific message\n\nSends events:\n- message.read\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkRead","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkReadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark read","tags":["Channels","Messages"]}},"/api/v2/chat/channels/{type}/{id}/show":{"post":{"description":"Shows previously hidden channel\n\nSends events:\n- channel.visible\n","operationId":"ShowChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"Channel type to interact with","title":"Channel type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Channel ID to interact with","title":"Channel ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShowChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Show channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/truncate":{"post":{"description":"Truncates channel\n\nSends events:\n- channel.truncated\n\nRequired permissions:\n- DeleteChannel\n- TruncateChannel\n","operationId":"TruncateChannel","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TruncateChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Truncate channel","tags":["Channels"]}},"/api/v2/chat/channels/{type}/{id}/unread":{"post":{"description":"Marks channel as unread from a specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"MarkUnread","parameters":[{"in":"path","name":"type","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarkUnreadRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mark unread","tags":["Channels","Messages"]}},"/api/v2/chat/channeltypes":{"get":{"description":"Lists all available channel types\n","operationId":"ListChannelTypes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListChannelTypesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List channel types","tags":["Settings","Channel types"]},"post":{"description":"Creates new channel type\n","operationId":"CreateChannelType","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateChannelTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateChannelTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create channel type","tags":["Settings","Channel types"]}},"/api/v2/chat/channeltypes/{name}":{"delete":{"description":"Deletes channel type\n","operationId":"DeleteChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Channel type name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete channel type","tags":["Settings","Channel types"]},"get":{"description":"Gets channel type\n","operationId":"GetChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Channel type name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get channel type","tags":["Settings","Channel types"]},"put":{"description":"Updates channel type\n","operationId":"UpdateChannelType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChannelTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update channel type","tags":["Settings","Channel types"]}},"/api/v2/chat/commands":{"get":{"description":"Returns all custom commands\n","operationId":"ListCommands","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListCommandsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List commands","tags":["Custom commands"]},"post":{"description":"Creates custom chat command\n","operationId":"CreateCommand","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommandRequest"}}},"description":"Command","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create command","tags":["Custom commands"]}},"/api/v2/chat/commands/{name}":{"delete":{"description":"Deletes custom chat command\n","operationId":"DeleteCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete command","tags":["Custom commands"]},"get":{"description":"Returns custom command by its name\n","operationId":"GetCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get command","tags":["Custom commands"]},"put":{"description":"Updates custom chat command\n","operationId":"UpdateCommand","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Unique command name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCommandRequest"}}},"description":"Command","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCommandResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update command","tags":["Custom commands"]}},"/api/v2/chat/export_channels":{"post":{"description":"Exports channel data to JSON file\n","operationId":"ExportChannels","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportChannelsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportChannelsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export channels","tags":["Channels"]}},"/api/v2/chat/export_channels/{id}":{"get":{"description":"\n","operationId":"GetExportChannelsStatus","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Task ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetExportChannelsStatusResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export channels status","tags":["Channels"]}},"/api/v2/chat/members":{"get":{"description":"Find and filter channel members\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryMembers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query members","tags":["Channels"]}},"/api/v2/chat/messages/{id}":{"delete":{"description":"Deletes message\n\nSends events:\n- message.deleted\n\nRequired permissions:\n- DeleteMessage\n","operationId":"DeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"hard","schema":{"description":"Delete all message reactions and replies as well","title":"Hard","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"deleted_by","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete message","tags":["Messages"]},"get":{"description":"Returns message by ID\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"show_deleted_message","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageWithPendingMetadataResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get message","tags":["Messages"]},"post":{"description":"Updates message with new data\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update message","tags":["Messages"]},"put":{"description":"Updates certain fields of the message\n\nSends events:\n- message.updated\n\nRequired permissions:\n- AddLinks\n- PinMessage\n- SkipMessageModeration\n- UpdateMessage\n","operationId":"UpdateMessagePartial","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessagePartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially message update","tags":["Messages"]}},"/api/v2/chat/messages/{id}/action":{"post":{"description":"Executes message command action with given parameters\n\nSends events:\n- message.new\n\nRequired permissions:\n- RunMessageAction\n","operationId":"RunMessageAction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageActionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Run message command action","tags":["Messages"]}},"/api/v2/chat/messages/{id}/commit":{"post":{"description":"Commits a pending message, which will make it visible in the channel\n\nSends events:\n- message.new\n- message.updated\n","operationId":"CommitMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Commit message"}},"/api/v2/chat/messages/{id}/reaction":{"post":{"description":"Sends reaction to specified message\n\nSends events:\n- reaction.new\n- reaction.updated\n\nRequired permissions:\n- CreateReaction\n- UseFrozenChannel\n","operationId":"SendReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to send reaction for","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/reaction/{type}":{"delete":{"description":"Removes user reaction from the message\n\nSends events:\n- reaction.deleted\n\nRequired permissions:\n- DeleteReaction\n","operationId":"DeleteReaction","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID to remove reaction from","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"type","required":true,"schema":{"description":"Reaction type to remove","title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactionRemovalResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete reaction","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/reactions":{"get":{"description":"Returns list of reactions of specific message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReactions","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"limit","schema":{"description":"Number of records to return","format":"int32","title":"Limit","type":"integer","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"offset","schema":{"description":"Number of records to offset","format":"int32","title":"Offset","type":"integer","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetReactionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get reactions","tags":["Messages","Reactions"]}},"/api/v2/chat/messages/{id}/translate":{"post":{"description":"Translates message to a given language using automated translation software\n\nSends events:\n- message.updated\n\nRequired permissions:\n- ReadChannel\n","operationId":"TranslateMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Message ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Translate message","tags":["Messages"]}},"/api/v2/chat/messages/{id}/undelete":{"post":{"description":"Undelete a message that was previously soft-deleted\n\nSends events:\n- message.undeleted\n","operationId":"UndeleteMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"003.001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMessageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Undelete message","tags":["Messages"]}},"/api/v2/chat/messages/{message_id}/polls/{poll_id}/vote":{"post":{"description":"Cast a vote on a poll\n\nSends events:\n- poll.vote_casted\n\nRequired permissions:\n- CastVote\n","operationId":"CastPollVote","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CastPollVoteRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVoteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Cast vote","tags":["Polls"]}},"/api/v2/chat/messages/{message_id}/polls/{poll_id}/vote/{vote_id}":{"delete":{"description":"Delete a vote from a poll\n\nSends events:\n- poll.vote_removed\n\nRequired permissions:\n- CastVote\n","operationId":"RemovePollVote","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"path","name":"vote_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"004"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVoteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete vote","tags":["Polls"]}},"/api/v2/chat/messages/{parent_id}/replies":{"get":{"description":"Returns replies (thread) of the message\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetReplies","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"description":"ID of a message which replies to return","title":"Parent ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"id_gte","schema":{"type":"string","x-stream-index":"002.001.003"}},{"in":"query","name":"id_gt","schema":{"type":"string","x-stream-index":"002.001.004"}},{"in":"query","name":"id_lte","schema":{"type":"string","x-stream-index":"002.001.005"}},{"in":"query","name":"id_lt","schema":{"type":"string","x-stream-index":"002.001.006"}},{"in":"query","name":"created_at_after_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.007"}},{"in":"query","name":"created_at_after","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.008"}},{"in":"query","name":"created_at_before_or_equal","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.009"}},{"in":"query","name":"created_at_before","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.010"}},{"in":"query","name":"id_around","schema":{"type":"string","x-stream-index":"002.001.011"}},{"in":"query","name":"created_at_around","schema":{"format":"date-time","type":"string","x-stream-index":"002.001.012"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRepliesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get replies","tags":["Messages"]}},"/api/v2/chat/moderation/ban":{"delete":{"description":"Removes previously applied ban\n\nSends events:\n- user.unbanned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Unban","parameters":[{"in":"query","name":"target_user_id","schema":{"type":"string","x-stream-index":"001"}},{"in":"query","name":"type","schema":{"type":"string","x-stream-index":"002"}},{"in":"query","name":"id","schema":{"type":"string","x-stream-index":"003"}},{"in":"query","name":"created_by","schema":{"type":"string","x-stream-index":"004"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unban user","tags":["Users","Moderation"]},"post":{"description":"Restricts user activity either in specific channel or globally\n\nSends events:\n- user.banned\n\nRequired permissions:\n- BanChannelMember\n- BanUser\n","operationId":"Ban","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BanRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Ban user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/flag":{"post":{"description":"Reports message or user for review by moderators\n\nSends events:\n- message.flagged\n- user.flagged\n\nRequired permissions:\n- FlagMessage\n- FlagUser\n","operationId":"Flag","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FlagResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Flag","tags":["Moderation","Messages","Users"]}},"/api/v2/chat/moderation/flags/message":{"get":{"description":"Find and filter message flags\n\nRequired permissions:\n- ReadMessageFlags\n","operationId":"QueryMessageFlags","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMessageFlagsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Message Flags","tags":["Messages","Moderation"]}},"/api/v2/chat/moderation/mute":{"post":{"description":"Mutes one or several users\n\nSends events:\n- user.muted\n\nRequired permissions:\n- MuteUser\n","operationId":"MuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/mute/channel":{"post":{"description":"Mutes channel for user\n\nSends events:\n- channel.muted\n\nRequired permissions:\n- MuteChannel\n","operationId":"MuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteChannelResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute channel","tags":["Channels"]}},"/api/v2/chat/moderation/unmute":{"post":{"description":"Unmutes previously muted user\n\nSends events:\n- user.unmuted\n\nRequired permissions:\n- MuteUser\n","operationId":"UnmuteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute user","tags":["Users","Moderation"]}},"/api/v2/chat/moderation/unmute/channel":{"post":{"description":"Unmutes channel for user\n\nSends events:\n- channel.unmuted\n\nRequired permissions:\n- MuteChannel\n","operationId":"UnmuteChannel","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteChannelRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmuteResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unmute channel","tags":["Channels"]}},"/api/v2/chat/polls":{"post":{"description":"Creates a new poll\n\nSends events:\n- poll.created\n\nRequired permissions:\n- CreatePoll\n","operationId":"CreatePoll","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePollRequest"}}},"description":"Create Poll Request","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create poll","tags":["Polls"]},"put":{"description":"Updates a poll\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePoll","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update poll","tags":["Polls"]}},"/api/v2/chat/polls/query":{"post":{"description":"Queries polls\n","operationId":"QueryPolls","parameters":[{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query polls","tags":["Polls"]}},"/api/v2/chat/polls/{poll_id}":{"delete":{"description":"Deletes a poll\n\nSends events:\n- poll.deleted\n\nRequired permissions:\n- DeletePoll\n","operationId":"DeletePoll","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete poll","tags":["Polls"]},"get":{"description":"Retrieves a poll\n","operationId":"GetPoll","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get poll","tags":["Polls"]},"patch":{"description":"Updates a poll partially\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePollPartial","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partial update poll","tags":["Polls"]}},"/api/v2/chat/polls/{poll_id}/options":{"post":{"description":"Creates a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- CastVote\n- UpdatePoll\n","operationId":"CreatePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePollOptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create poll option","tags":["Polls"]},"put":{"description":"Updates a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"UpdatePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePollOptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update poll option","tags":["Polls"]}},"/api/v2/chat/polls/{poll_id}/options/{option_id}":{"delete":{"description":"Deletes a poll option\n\nSends events:\n- poll.updated\n\nRequired permissions:\n- UpdatePoll\n","operationId":"DeletePollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"path","name":"option_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete poll option","tags":["Polls"]},"get":{"description":"Retrieves a poll option\n","operationId":"GetPollOption","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"path","name":"option_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"003"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollOptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get poll option","tags":["Polls"]}},"/api/v2/chat/polls/{poll_id}/votes":{"post":{"description":"Queries votes\n","operationId":"QueryPollVotes","parameters":[{"in":"path","name":"poll_id","required":true,"schema":{"maxLength":255,"type":"string","x-stream-index":"002"}},{"in":"query","name":"user_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryPollVotesRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PollVotesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query votes","tags":["Polls"]}},"/api/v2/chat/query_banned_users":{"get":{"description":"Find and filter channel scoped or global user bans\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryBannedUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryBannedUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Banned Users","tags":["Users","Moderation"]}},"/api/v2/chat/search":{"get":{"description":"Search messages across channels\n\nRequired permissions:\n- ReadChannel\n","operationId":"Search","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchRequest","description":"JSON object with search payload","title":"Payload","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Search messages","tags":["Channels","Messages"]}},"/api/v2/chat/threads":{"post":{"description":"Returns the list of threads for specific user\n\nRequired permissions:\n- ReadChannel\n","operationId":"QueryThreads","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryThreadsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Threads","tags":["Threads"]}},"/api/v2/chat/threads/{message_id}":{"get":{"description":"Return a specific thread\n\nRequired permissions:\n- ReadChannel\n","operationId":"GetThread","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"watch","schema":{"description":"Start watching the channel this thread belongs to","title":"Watch","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"reply_limit","schema":{"description":"Limit the number of replies returned","format":"int32","minimum":0,"title":"Reply limit","type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"participant_limit","schema":{"description":"Limit the number of participants returned","format":"int32","maximum":100,"minimum":0,"title":"Participant limit","type":"integer","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetThreadResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Thread","tags":["Threads"]},"patch":{"description":"Updates certain fields of the thread\n\nSends events:\n- thread.updated\n\nRequired permissions:\n- ReadChannel\n- UpdateThread\n","operationId":"UpdateThreadPartial","parameters":[{"in":"path","name":"message_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateThreadPartialResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update thread","tags":["Threads","Channels"]}},"/api/v2/chat/unread":{"get":{"description":"Fetch unread counts for a single user\n","operationId":"UnreadCounts","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WrappedUnreadCountsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unread counts","tags":["Channels"]}},"/api/v2/chat/unread_batch":{"post":{"description":"Fetch unread counts in batch for multiple users in one call\n","operationId":"UnreadCountsBatch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnreadCountsBatchRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnreadCountsBatchResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Batch unread counts","tags":["Channels"]}},"/api/v2/chat/users/{user_id}/event":{"post":{"description":"Sends a custom event to a user\n\nSends events:\n- custom\n","operationId":"SendUserCustomEvent","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendUserCustomEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send user event","tags":["Events"]}},"/api/v2/check_push":{"post":{"description":"Sends a test message via push, this is a test endpoint to verify your push settings\n","operationId":"CheckPush","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckPushRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckPushResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check push","tags":["Settings","Testing"]}},"/api/v2/check_sns":{"post":{"description":"Validates Amazon SNS configuration\n","operationId":"CheckSNS","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSNSRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSNSResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check SNS","tags":["Settings","Testing"]}},"/api/v2/check_sqs":{"post":{"description":"Validates Amazon SQS credentials\n","operationId":"CheckSQS","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSQSRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckSQSResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check SQS","tags":["Settings","Testing"]}},"/api/v2/connect":{"get":{"description":"Establishes WebSocket connection for user\n\nSends events:\n- user.updated\n","operationId":"Connect","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Connect (WebSocket)","tags":["Users"]}},"/api/v2/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device","tags":["Devices"]},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices","tags":["Devices"]},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device","tags":["Devices","Push"]}},"/api/v2/export/users":{"post":{"description":"Exports user profile, reactions and messages for list of given users\n","operationId":"ExportUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export users","tags":["Users"]}},"/api/v2/guest":{"post":{"description":"Creates guest user\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create guest","tags":["Users"]}},"/api/v2/import_urls":{"post":{"description":"Creates a new import URL\n","operationId":"CreateImportURL","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportURLRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportURLResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create import URL","tags":["Imports"]}},"/api/v2/imports":{"get":{"description":"Gets an import\n","operationId":"ListImports","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListImportsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get import","tags":["Imports"]},"post":{"description":"Creates a new import\n","operationId":"CreateImport","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create import","tags":["Imports"]}},"/api/v2/imports/{id}":{"get":{"description":"Gets an import\n","operationId":"GetImport","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetImportResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get import","tags":["Imports"]}},"/api/v2/longpoll":{"get":{"description":"WebSocket fallback transport endpoint\n\nSends events:\n- user.updated\n","operationId":"LongPoll","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectRequest","x-stream-index":"001"}}},"in":"query","name":"json"},{"in":"query","name":"connection_id","schema":{"maxLength":36,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Long Poll (Transport)","tags":["Users"]}},"/api/v2/og":{"get":{"description":"Get an OpenGraph attachment for a link\n","operationId":"GetOG","parameters":[{"in":"query","name":"url","schema":{"description":"URL to be scraped","title":"URL","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOGResponse"}}},"description":"Get OG Attachment"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get OG","tags":["Messages"]}},"/api/v2/permissions":{"get":{"description":"Lists all available permissions\n","operationId":"ListPermissions","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List permissions","tags":["Permissions V2"]}},"/api/v2/permissions/{id}":{"get":{"description":"Gets custom permission\n","operationId":"GetPermission","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Permission ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCustomPermissionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get permission","tags":["Permissions V2"]}},"/api/v2/push_providers":{"get":{"description":"List details of all push providers.\n","operationId":"ListPushProviders","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListPushProvidersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List push providers","tags":["Push","Settings"]},"post":{"description":"Upsert a push provider for v2 with multi bundle/package support\n","operationId":"UpsertPushProvider","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertPushProviderRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertPushProviderResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert a push provider","tags":["Server-side"]}},"/api/v2/push_providers/{type}/{name}":{"delete":{"description":"Delete a push provider from v2 with multi bundle/package support. v1 isn't supported in this endpoint\n","operationId":"DeletePushProvider","parameters":[{"in":"path","name":"type","required":true,"schema":{"enum":["apn","firebase","huawei","xiaomi"],"type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"name","required":true,"schema":{"maxLength":36,"minLength":1,"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete a push provider","tags":["Push","Settings"]}},"/api/v2/rate_limits":{"get":{"description":"Get rate limits usage and quotas\n","operationId":"GetRateLimits","parameters":[{"in":"query","name":"server_side","schema":{"description":"Whether to include server-side platform limits or not","title":"Server-side","type":"boolean","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"android","schema":{"description":"Whether to include Android platform limits or not","title":"Android","type":"boolean","writeOnly":true,"x-stream-index":"002"}},{"in":"query","name":"ios","schema":{"description":"Whether to include iOS platform limits or not","title":"iOS","type":"boolean","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"web","schema":{"description":"Whether to include web platform limits or not","title":"Web","type":"boolean","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"endpoints","schema":{"description":"Specific endpoints to show limits for, as a comma-separated list of values","title":"Endpoints","type":"string","writeOnly":true,"x-stream-index":"005"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetRateLimitsResponse"}}},"description":"Get Rate Limits Response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get rate limits","tags":["Settings"]}},"/api/v2/roles":{"get":{"description":"Lists all available roles\n","operationId":"ListRoles","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRolesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List roles","tags":["Permissions V2"]},"post":{"description":"Creates custom role\n","operationId":"CreateRole","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRoleResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create role","tags":["Permissions V2"]}},"/api/v2/roles/{name}":{"delete":{"description":"Deletes custom role\n","operationId":"DeleteRole","parameters":[{"in":"path","name":"name","required":true,"schema":{"description":"Role name","title":"Name","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete role","tags":["Permissions V2"]}},"/api/v2/tasks/{id}":{"get":{"description":"Gets status of a task\n","operationId":"GetTask","parameters":[{"in":"path","name":"id","required":true,"schema":{"description":"Task ID","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTaskResponse"}}},"description":"Get Task Response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get status of a task","tags":["Tasks"]}},"/api/v2/users":{"get":{"description":"Find and filter users\n\nRequired permissions:\n- SearchUser\n","operationId":"QueryUsers","parameters":[{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryUsersRequest","x-stream-index":"001"}}},"in":"query","name":"payload"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query users","tags":["Users"]},"patch":{"description":"Updates certain fields of the user\n\nSends events:\n- user.presence.changed\n- user.updated\n","operationId":"UpdateUsersPartial","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPartialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Partially update user","tags":["Users"]},"post":{"description":"Update or create users in bulk\n\nSends events:\n- user.updated\n","operationId":"UpdateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Upsert users","tags":["Users"]}},"/api/v2/users/deactivate":{"post":{"description":"Deactivate users in batches\n\nSends events:\n- user.deactivated\n","operationId":"DeactivateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deactivate users","tags":["Users","GDPR","Moderation"]}},"/api/v2/users/delete":{"post":{"description":"Deletes users and optionally all their belongings asynchronously.\n\nSends events:\n- channel.deleted\n- user.deleted\n","operationId":"DeleteUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete Users","tags":["Users","GDPR","Moderation"]}},"/api/v2/users/reactivate":{"post":{"description":"Reactivate users in batches\n\nSends events:\n- user.reactivated\n","operationId":"ReactivateUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reactivate users","tags":["Users","GDPR","Moderation"]}},"/api/v2/users/restore":{"post":{"description":"Restore soft deleted users\n","operationId":"RestoreUsers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestoreUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Restore users","tags":["Users"]}},"/api/v2/users/{user_id}/deactivate":{"post":{"description":"Deactivates user with possibility to activate it back\n\nSends events:\n- user.deactivated\n","operationId":"DeactivateUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User ID","type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeactivateUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Deactivate user","tags":["Users","GDPR","Moderation"]}},"/api/v2/users/{user_id}/export":{"get":{"description":"Exports the user's profile, reactions and messages. Raises an error if a user has more than 10k messages or reactions\n","operationId":"ExportUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"type":"string","x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Export user","tags":["Users"]}},"/api/v2/users/{user_id}/reactivate":{"post":{"description":"Activates user who's been deactivated previously\n\nSends events:\n- user.reactivated\n","operationId":"ReactivateUser","parameters":[{"in":"path","name":"user_id","required":true,"schema":{"title":"User ID","type":"string","x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReactivateUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reactivate user","tags":["Users","GDPR","Moderation"]}},"/api/v2/video/call/members":{"post":{"description":"Query call members with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryMembers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest_1"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call members"}},"/api/v2/video/call/stats":{"post":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"QueryCallStats","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Call Stats"}},"/api/v2/video/call/{type}/{id}":{"get":{"description":"\n\nRequired permissions:\n- ReadCall\n","operationId":"GetCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"members_limit","schema":{"format":"int32","maximum":100,"minimum":0,"type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"ring","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"005"}},{"in":"query","name":"notify","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"006"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call"},"patch":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"UpdateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallResponse"}}},"description":"Call"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call"},"post":{"description":"Gets or creates a new call\n\nSends events:\n- call.created\n- call.notification\n- call.ring\n\nRequired permissions:\n- CreateCall\n- ReadCall\n- UpdateCallSettings\n","operationId":"GetOrCreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create a call"}},"/api/v2/video/call/{type}/{id}/block":{"post":{"description":"Block a user, preventing them from joining the call until they are unblocked.\n\nSends events:\n- call.blocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"BlockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Block user on a call"}},"/api/v2/video/call/{type}/{id}/event":{"post":{"description":"Sends custom event to the call\n\nSends events:\n- custom\n\nRequired permissions:\n- SendEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send custom event"}},"/api/v2/video/call/{type}/{id}/feedback/{session}":{"post":{"description":"\n\nRequired permissions:\n- JoinCall\n","operationId":"CollectUserFeedback","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Collect user feedback"}},"/api/v2/video/call/{type}/{id}/go_live":{"post":{"description":"\n\nSends events:\n- call.live_started\n\nRequired permissions:\n- UpdateCall\n","operationId":"GoLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as live"}},"/api/v2/video/call/{type}/{id}/mark_ended":{"post":{"description":"\n\nSends events:\n- call.ended\n\nRequired permissions:\n- EndCall\n","operationId":"EndCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"End call"}},"/api/v2/video/call/{type}/{id}/members":{"post":{"description":"\n\nSends events:\n- call.member_added\n- call.member_removed\n- call.member_updated\n\nRequired permissions:\n- RemoveCallMember\n- UpdateCallMember\n- UpdateCallMemberRole\n","operationId":"UpdateCallMembers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Member"}},"/api/v2/video/call/{type}/{id}/mute_users":{"post":{"description":"Mutes users in a call\n\nRequired permissions:\n- MuteUsers\n","operationId":"MuteUsers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute users"}},"/api/v2/video/call/{type}/{id}/pin":{"post":{"description":"Pins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoPin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Pin"}},"/api/v2/video/call/{type}/{id}/recordings":{"get":{"description":"Lists recordings\n\nRequired permissions:\n- ListRecordings\n","operationId":"ListRecordings","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRecordingsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List recordings"}},"/api/v2/video/call/{type}/{id}/start_broadcasting":{"post":{"description":"Starts HLS broadcasting\n\nRequired permissions:\n- StartBroadcasting\n","operationId":"StartHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start HLS broadcasting"}},"/api/v2/video/call/{type}/{id}/start_recording":{"post":{"description":"Starts recording\n\nSends events:\n- call.recording_started\n\nRequired permissions:\n- StartRecording\n","operationId":"StartRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start recording"}},"/api/v2/video/call/{type}/{id}/start_transcription":{"post":{"description":"Starts transcription\n\nRequired permissions:\n- StartTranscription\n","operationId":"StartTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start transcription"}},"/api/v2/video/call/{type}/{id}/stats/{session}":{"get":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"GetCallStats","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Stats"}},"/api/v2/video/call/{type}/{id}/stop_broadcasting":{"post":{"description":"Stops HLS broadcasting\n\nRequired permissions:\n- StopBroadcasting\n","operationId":"StopHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop HLS broadcasting"}},"/api/v2/video/call/{type}/{id}/stop_live":{"post":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"StopLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as not live"}},"/api/v2/video/call/{type}/{id}/stop_recording":{"post":{"description":"Stops recording\n\nSends events:\n- call.recording_stopped\n\nRequired permissions:\n- StopRecording\n","operationId":"StopRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop recording"}},"/api/v2/video/call/{type}/{id}/stop_transcription":{"post":{"description":"Stops transcription\n\nSends events:\n- call.transcription_stopped\n\nRequired permissions:\n- StopTranscription\n","operationId":"StopTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop transcription"}},"/api/v2/video/call/{type}/{id}/transcriptions":{"get":{"description":"Lists transcriptions\n\nRequired permissions:\n- ListTranscriptions\n","operationId":"ListTranscriptions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTranscriptionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List transcriptions"}},"/api/v2/video/call/{type}/{id}/unblock":{"post":{"description":"Removes the block for a user on a call. The user will be able to join the call again.\n\nSends events:\n- call.unblocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"UnblockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unblocks user on a call"}},"/api/v2/video/call/{type}/{id}/unpin":{"post":{"description":"Unpins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoUnpin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unpin"}},"/api/v2/video/call/{type}/{id}/user_permissions":{"post":{"description":"Updates user permissions\n\nSends events:\n- call.permissions_updated\n\nRequired permissions:\n- UpdateCallPermissions\n","operationId":"UpdateUserPermissions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update user permissions"}},"/api/v2/video/calls":{"post":{"description":"Query calls with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryCalls","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call"}},"/api/v2/video/calltypes":{"get":{"description":"\n","operationId":"ListCallTypes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List Call Type","tags":["Server-side"]},"post":{"description":"\n","operationId":"CreateCallType","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create Call Type","tags":["Server-side"]}},"/api/v2/video/calltypes/{name}":{"delete":{"description":"\n","operationId":"DeleteCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete Call Type","tags":["Server-side"]},"get":{"description":"\n","operationId":"GetCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Type","tags":["Server-side"]},"put":{"description":"\n","operationId":"UpdateCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Type","tags":["Server-side"]}},"/api/v2/video/edges":{"get":{"description":"Returns the list of all edges available for video calls.\n","operationId":"GetEdges","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEdgesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Edges"}},"/api/v2/video/external_storage":{"get":{"description":"Lists external storage\n","operationId":"ListExternalStorage","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List external storage","tags":["Settings"]},"post":{"description":"Creates new external storage\n","operationId":"CreateExternalStorage","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalStorageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create external storage","tags":["Settings"]}},"/api/v2/video/external_storage/{name}":{"delete":{"description":"Deletes external storage\n","operationId":"DeleteExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete external storage","tags":["Settings"]},"put":{"description":"\n","operationId":"UpdateExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalStorageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update External Storage","tags":["Server-side"]}},"/api/v2/video/external_storage/{name}/check":{"get":{"description":"\n","operationId":"CheckExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check External Storage","tags":["Server-side"]}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file diff --git a/openapi/serverside-api.yaml b/openapi/serverside-api.yaml index 05b83268..26b23c4d 100644 --- a/openapi/serverside-api.yaml +++ b/openapi/serverside-api.yaml @@ -194,7 +194,7 @@ components: properties: agora_options: $ref: '#/components/schemas/Config' - x-stream-index: "001.038" + x-stream-index: "001.039" allowed_flag_reasons: items: type: string @@ -220,7 +220,7 @@ components: cdn_expiration_seconds: format: int32 type: integer - x-stream-index: "001.036" + x-stream-index: "001.037" channel_configs: additionalProperties: $ref: '#/components/schemas/ChannelConfig' @@ -235,7 +235,7 @@ components: x-stream-index: "001.021" datadog_info: $ref: '#/components/schemas/DataDogInfo' - x-stream-index: "001.041" + x-stream-index: "001.042" disable_auth_checks: type: boolean x-stream-index: "001.010" @@ -252,7 +252,7 @@ components: items: $ref: '#/components/schemas/GeofenceResponse' type: array - x-stream-index: "001.040" + x-stream-index: "001.041" grants: additionalProperties: items: @@ -262,7 +262,7 @@ components: x-stream-index: "001.032" hms_options: $ref: '#/components/schemas/Config' - x-stream-index: "001.039" + x-stream-index: "001.040" image_moderation_enabled: type: boolean x-stream-index: "001.015" @@ -293,13 +293,16 @@ components: type: array type: object x-stream-index: "001.007" + polls_enabled: + type: boolean + x-stream-index: "001.034" push_notifications: $ref: '#/components/schemas/PushNotificationFields' x-stream-index: "001.003" reminders_interval: format: int32 type: integer - x-stream-index: "001.035" + x-stream-index: "001.036" revoke_tokens_issued_before: format: date-time type: string @@ -335,12 +338,12 @@ components: x-stream-index: "001.013" video_provider: type: string - x-stream-index: "001.037" + x-stream-index: "001.038" webhook_events: items: type: string type: array - x-stream-index: "001.034" + x-stream-index: "001.035" webhook_url: type: string x-stream-index: "001.004" @@ -373,6 +376,7 @@ components: - image_upload_config - grants - campaign_enabled + - polls_enabled - webhook_events - reminders_interval - cdn_expiration_seconds @@ -407,7 +411,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "018" + x-stream-index: "020" actions: items: $ref: '#/components/schemas/Action' @@ -444,21 +448,27 @@ components: x-stream-index: "014" giphy: $ref: '#/components/schemas/Images' - x-stream-index: "019" + x-stream-index: "021" image_url: type: string x-stream-index: "011" og_scrape_url: type: string - x-stream-index: "020" + x-stream-index: "022" original_height: format: int32 type: integer - x-stream-index: "022" + x-stream-index: "024" original_width: format: int32 type: integer - x-stream-index: "021" + x-stream-index: "023" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "019" + poll_id: + type: string + x-stream-index: "018" pretext: type: string x-stream-index: "004" @@ -475,7 +485,7 @@ components: type: string x-stream-index: "009" type: - description: Attachment type (e.g. image, video, url) + description: Attachment type (e.g. image, video, url, poll) title: Type type: string x-stream-index: "001" @@ -490,7 +500,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "018" + x-stream-index: "020" actions: items: $ref: '#/components/schemas/ActionRequest' @@ -527,21 +537,27 @@ components: x-stream-index: "014" giphy: $ref: '#/components/schemas/ImagesRequest' - x-stream-index: "019" + x-stream-index: "021" image_url: type: string x-stream-index: "011" og_scrape_url: type: string - x-stream-index: "020" + x-stream-index: "022" original_height: format: int32 type: integer - x-stream-index: "022" + x-stream-index: "024" original_width: format: int32 type: integer - x-stream-index: "021" + x-stream-index: "023" + poll: + $ref: '#/components/schemas/PollRequest' + x-stream-index: "019" + poll_id: + type: string + x-stream-index: "018" pretext: type: string x-stream-index: "004" @@ -558,7 +574,7 @@ components: type: string x-stream-index: "009" type: - description: Attachment type (e.g. image, video, url) + description: Attachment type (e.g. image, video, url, poll) title: Type type: string x-stream-index: "001" @@ -579,6 +595,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettings' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -610,6 +629,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettingsRequest' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -892,20 +914,25 @@ components: properties: description: type: string - x-stream-index: "003" + x-stream-index: "004" + end_timestamp: + format: int64 + type: integer + x-stream-index: "002" severity: format: int32 type: integer - x-stream-index: "002" + x-stream-index: "003" timestamp: format: int32 type: integer x-stream-index: "001" type: type: string - x-stream-index: "004" + x-stream-index: "005" required: - timestamp + - end_timestamp - severity - description - type @@ -1430,6 +1457,25 @@ components: - created_at - updated_at type: object + CastPollVoteRequest: + nullable: true + properties: + poll_id: + maxLength: 255 + type: string + x-stream-index: "002" + user: + $ref: '#/components/schemas/UserRequest_1' + x-stream-index: "004.002" + user_id: + type: string + x-stream-index: "004.001" + vote: + $ref: '#/components/schemas/VoteDataRequest' + x-stream-index: "003" + required: + - poll_id + type: object Channel: properties: Custom: @@ -1524,39 +1570,39 @@ components: items: type: string type: array - x-stream-index: "001.023" + x-stream-index: "001.024" automod: enum: - disabled - simple - AI type: string - x-stream-index: "001.018" + x-stream-index: "001.019" automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: "001.019" + x-stream-index: "001.020" automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: "001.024" + x-stream-index: "001.025" blocklist: type: string - x-stream-index: "001.020" + x-stream-index: "001.021" blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: "001.021" + x-stream-index: "001.022" blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: "001.022" + x-stream-index: "001.023" commands: description: List of commands that channel supports items: @@ -1581,16 +1627,19 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: "001.017" + x-stream-index: "001.018" message_retention: type: string - x-stream-index: "001.016" + x-stream-index: "001.017" mutes: type: boolean x-stream-index: "001.009" name: type: string x-stream-index: "001.001" + polls: + type: boolean + x-stream-index: "001.016" push_notifications: type: boolean x-stream-index: "001.013" @@ -1641,6 +1690,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -1722,39 +1772,39 @@ components: items: type: string type: array - x-stream-index: 001.002.023 + x-stream-index: 001.002.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 001.002.018 + x-stream-index: 001.002.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.002.019 + x-stream-index: 001.002.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 001.002.024 + x-stream-index: 001.002.025 blocklist: type: string - x-stream-index: 001.002.020 + x-stream-index: 001.002.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.002.021 + x-stream-index: 001.002.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 001.002.022 + x-stream-index: 001.002.023 commands: items: $ref: '#/components/schemas/Command' @@ -1789,16 +1839,19 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 001.002.017 + x-stream-index: 001.002.018 message_retention: type: string - x-stream-index: 001.002.016 + x-stream-index: 001.002.017 mutes: type: boolean x-stream-index: 001.002.009 name: type: string x-stream-index: 001.002.001 + polls: + type: boolean + x-stream-index: 001.002.016 push_notifications: type: boolean x-stream-index: 001.002.013 @@ -1851,6 +1904,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -2473,39 +2527,39 @@ components: items: type: string type: array - x-stream-index: 003.002.023 + x-stream-index: 003.002.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 003.002.018 + x-stream-index: 003.002.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 003.002.019 + x-stream-index: 003.002.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 003.002.024 + x-stream-index: 003.002.025 blocklist: type: string - x-stream-index: 003.002.020 + x-stream-index: 003.002.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 003.002.021 + x-stream-index: 003.002.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 003.002.022 + x-stream-index: 003.002.023 commands: description: List of commands that channel supports items: @@ -2537,10 +2591,10 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 003.002.017 + x-stream-index: 003.002.018 message_retention: type: string - x-stream-index: 003.002.016 + x-stream-index: 003.002.017 mutes: type: boolean x-stream-index: 003.002.009 @@ -2552,6 +2606,9 @@ components: $ref: '#/components/schemas/PolicyRequest' type: array x-stream-index: "001" + polls: + type: boolean + x-stream-index: 003.002.016 push_notifications: type: boolean x-stream-index: 003.002.013 @@ -2606,6 +2663,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -3111,7 +3169,7 @@ components: - AI title: Auto moderation type: string - x-stream-index: "016" + x-stream-index: "017" automod_behavior: description: Sets behavior of automatic moderation enum: @@ -3119,12 +3177,12 @@ components: - block title: Auto moderation behavior type: string - x-stream-index: "017" + x-stream-index: "018" blocklist: description: Name of the blocklist to use title: Blocklist type: string - x-stream-index: "021" + x-stream-index: "022" blocklist_behavior: description: Sets behavior of blocklist enum: @@ -3133,19 +3191,19 @@ components: - shadow_block title: Blocklist behavior type: string - x-stream-index: "022" + x-stream-index: "023" blocklists: items: $ref: '#/components/schemas/BlockListOptionsRequest' type: array - x-stream-index: "023" + x-stream-index: "024" commands: description: List of commands that channel supports items: type: string title: Commands type: array - x-stream-index: "018" + x-stream-index: "019" connect_events: description: Connect events support title: Connect events @@ -3162,7 +3220,7 @@ components: type: string type: array type: object - x-stream-index: "020" + x-stream-index: "021" mark_messages_pending: description: Marks messages as pending by default title: Mark messages pending @@ -3173,7 +3231,7 @@ components: format: int32 title: Maximum message length type: integer - x-stream-index: "015" + x-stream-index: "016" mutes: description: Enables mutes title: Mutes @@ -3190,7 +3248,12 @@ components: $ref: '#/components/schemas/PolicyRequest_1' title: Permissions type: array - x-stream-index: "019" + x-stream-index: "020" + polls: + description: Enables polls + title: Polls + type: boolean + x-stream-index: "014" push_notifications: description: Enables push notifications title: Push notifications @@ -3242,39 +3305,39 @@ components: items: type: string type: array - x-stream-index: 001.001.023 + x-stream-index: 001.001.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 001.001.018 + x-stream-index: 001.001.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.001.019 + x-stream-index: 001.001.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 001.001.024 + x-stream-index: 001.001.025 blocklist: type: string - x-stream-index: 001.001.020 + x-stream-index: 001.001.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 001.001.021 + x-stream-index: 001.001.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 001.001.022 + x-stream-index: 001.001.023 commands: items: type: string @@ -3307,10 +3370,10 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 001.001.017 + x-stream-index: 001.001.018 message_retention: type: string - x-stream-index: 001.001.016 + x-stream-index: 001.001.017 mutes: type: boolean x-stream-index: 001.001.009 @@ -3322,6 +3385,9 @@ components: $ref: '#/components/schemas/PolicyRequest' type: array x-stream-index: "002" + polls: + type: boolean + x-stream-index: 001.001.016 push_notifications: type: boolean x-stream-index: 001.001.013 @@ -3372,6 +3438,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -3555,6 +3622,103 @@ components: - upload_url - duration type: object + CreatePollOptionRequest: + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "004" + poll_id: + maxLength: 255 + type: string + x-stream-index: "001" + position: + format: int32 + type: integer + x-stream-index: "003" + text: + type: string + x-stream-index: "002" + user: + $ref: '#/components/schemas/UserRequest_1' + x-stream-index: "005.002" + user_id: + type: string + x-stream-index: "005.001" + required: + - poll_id + - text + type: object + CreatePollRequest: + description: Contains all information needed to create a new poll + nullable: true + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "011" + allow_answers: + description: Indicates whether users can suggest user defined answers + title: Allow answers + type: boolean + x-stream-index: "009" + allow_user_suggested_options: + type: boolean + x-stream-index: "008" + description: + description: A description of the poll + title: Description + type: string + x-stream-index: "003" + enforce_unique_vote: + description: Indicates whether users can cast multiple votes + title: Multiple choice + type: boolean + x-stream-index: "006" + id: + maxLength: 255 + type: string + x-stream-index: "001" + is_closed: + description: Indicates whether the poll is open for voting + title: Is closed + type: boolean + x-stream-index: "010" + max_votes_allowed: + description: Indicates the maximum amount of votes a user can cast + format: int32 + maximum: 10 + title: Maximum votes allowed + type: integer + x-stream-index: "007" + name: + description: The name of the poll + title: Name + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionRequest_1' + maximum: 100 + type: array + x-stream-index: "004" + user: + $ref: '#/components/schemas/UserRequest_1' + x-stream-index: "012.002" + user_id: + type: string + x-stream-index: "012.001" + voting_visibility: + enum: + - anonymous + - public + type: string + x-stream-index: "005" + required: + - name + title: Create Poll Request + type: object CreateRoleRequest: nullable: true properties: @@ -4630,24 +4794,56 @@ components: type: array x-stream-index: "001" type: object - GetApplicationResponse: - nullable: true + GeolocationResult: properties: - app: - $ref: '#/components/schemas/App' - x-stream-index: "001" - duration: - description: Duration of the request in human-readable format - title: Duration + AccuracyRadius: + format: int32 + type: integer + writeOnly: true + x-stream-index: "003" + continent_code: type: string - x-stream-index: "002.001" - required: - - app - - duration - type: object - GetBlockListResponse: - nullable: true - properties: + x-stream-index: "002.003" + country_iso_code: + type: string + x-stream-index: "002.002" + latitude: + format: float + type: number + x-stream-index: "001.001" + longitude: + format: float + type: number + x-stream-index: "001.002" + subdivision_iso_code: + type: string + x-stream-index: "002.001" + required: + - latitude + - longitude + - subdivision_iso_code + - country_iso_code + - continent_code + - AccuracyRadius + type: object + GetApplicationResponse: + nullable: true + properties: + app: + $ref: '#/components/schemas/App' + x-stream-index: "001" + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "002.001" + required: + - app + - duration + type: object + GetBlockListResponse: + nullable: true + properties: blocklist: $ref: '#/components/schemas/BlockList' x-stream-index: "001" @@ -4699,30 +4895,38 @@ components: type: number x-stream-index: "004" call_duration_seconds: - format: int64 + format: int32 type: integer x-stream-index: "002" call_timeline: $ref: '#/components/schemas/CallTimeline' - x-stream-index: "012" + x-stream-index: "014" duration: description: Duration of the request in human-readable format title: Duration type: string x-stream-index: "001.001" + max_jitter: + format: float + type: number + x-stream-index: "007" + max_latency: + format: float + type: number + x-stream-index: "006" max_participants: format: int32 type: integer - x-stream-index: "006" + x-stream-index: "008" participant_report: additionalProperties: $ref: '#/components/schemas/UserStats' type: object - x-stream-index: "013" + x-stream-index: "015" publishing_participants: format: int32 type: integer - x-stream-index: "007" + x-stream-index: "009" quality_score: format: int32 type: integer @@ -4730,26 +4934,28 @@ components: sfu_count: format: int32 type: integer - x-stream-index: "008" + x-stream-index: "010" sfus: items: $ref: '#/components/schemas/SFULocationResponse' type: array - x-stream-index: "011" + x-stream-index: "013" total_freezes_duration: format: float type: number - x-stream-index: "010" + x-stream-index: "012" total_quality_limitation_duration: format: float type: number - x-stream-index: "009" + x-stream-index: "011" required: - duration - call_duration_seconds - quality_score - average_latency - average_jitter + - max_latency + - max_jitter - max_participants - publishing_participants - sfu_count @@ -4941,7 +5147,7 @@ components: Custom: type: object writeOnly: true - x-stream-index: "001.018" + x-stream-index: "001.020" actions: items: $ref: '#/components/schemas/Action' @@ -4987,7 +5193,7 @@ components: x-stream-index: "001.014" giphy: $ref: '#/components/schemas/Images' - x-stream-index: "001.019" + x-stream-index: "001.021" image_url: description: URL of detected image title: Image URL @@ -4997,15 +5203,21 @@ components: description: extracted url from the text title: OG Scrape URL type: string - x-stream-index: "001.020" + x-stream-index: "001.022" original_height: format: int32 type: integer - x-stream-index: "001.022" + x-stream-index: "001.024" original_width: format: int32 type: integer - x-stream-index: "001.021" + x-stream-index: "001.023" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001.019" + poll_id: + type: string + x-stream-index: "001.018" pretext: type: string x-stream-index: "001.004" @@ -6339,6 +6551,14 @@ components: title: Pinned by x-stream-docs-page-id: pinned_messages x-stream-index: "047" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "051" + poll_id: + description: Identifier of the poll to include in the message + title: Poll ID + type: string + x-stream-index: "050" quoted_message: $ref: '#/components/schemas/Message' description: Contains quoted message @@ -6448,6 +6668,7 @@ components: - mentioned_users - silent - pinned + - poll_id title: Message type: object x-stream-docs-page-id: send_message @@ -6745,6 +6966,9 @@ components: nullable: true type: string x-stream-index: "014" + poll_id: + type: string + x-stream-index: "038" quoted_message_id: type: string x-stream-index: "009" @@ -6986,6 +7210,28 @@ components: required: - duration type: object + NoiseCancellationSettings: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + required: + - mode + type: object + NoiseCancellationSettingsRequest: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + type: object NotificationSettings: properties: call_live_started: @@ -7065,6 +7311,7 @@ components: - block-users - create-call - create-reaction + - enable-noise-cancellation - end-call - join-backstage - join-call @@ -7477,216 +7724,648 @@ components: - name - priority type: object - PushConfigRequest: + Poll: properties: - offline_only: + Custom: + type: object + writeOnly: true + x-stream-index: "023" + allow_answers: type: boolean - x-stream-index: "002" - version: - enum: - - v1 - - v2 + x-stream-index: "010" + allow_user_suggested_options: + type: boolean + x-stream-index: "009" + answers_count: + format: int32 + type: integer + x-stream-index: "015" + created_at: + format: date-time + type: string + x-stream-index: "021" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "020" + created_by_id: + type: string + x-stream-index: "019" + description: + type: string + x-stream-index: "005" + enforce_unique_vote: + type: boolean + x-stream-index: "007" + id: type: string - x-stream-index: "001" - type: object - PushNotificationFields: - properties: - apn: - $ref: '#/components/schemas/APNConfigFields' - x-stream-index: "002" - firebase: - $ref: '#/components/schemas/FirebaseConfigFields' x-stream-index: "003" - huawei: - $ref: '#/components/schemas/HuaweiConfigFields' - x-stream-index: "004" - offline_only: + is_closed: type: boolean - x-stream-index: "001.002" - providers: + x-stream-index: "011" + latest_answers: items: - $ref: '#/components/schemas/PushProvider' + $ref: '#/components/schemas/PollVote' type: array - x-stream-index: "006" - version: + x-stream-index: "017" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVote' + type: array + type: object + x-stream-index: "016" + max_votes_allowed: + format: int32 + type: integer + x-stream-index: "008" + name: type: string - x-stream-index: "001.001" - xiaomi: - $ref: '#/components/schemas/XiaomiConfigFields' - x-stream-index: "005" + x-stream-index: "004" + options: + items: + $ref: '#/components/schemas/PollOption' + type: array + x-stream-index: "013" + own_votes: + items: + $ref: '#/components/schemas/PollVote' + type: array + x-stream-index: "018" + updated_at: + format: date-time + type: string + x-stream-index: "022" + vote_count: + format: int32 + type: integer + x-stream-index: "012" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "014" + voting_visibility: + type: string + x-stream-index: "006" required: - - version - - offline_only - - apn - - firebase - - huawei - - xiaomi + - id + - name + - description + - enforce_unique_vote + - allow_user_suggested_options + - allow_answers + - vote_count + - options + - vote_counts_by_option + - answers_count + - latest_votes_by_option + - latest_answers + - own_votes + - created_by_id + - created_at + - updated_at + - Custom type: object - PushNotificationSettings: + PollOption: + nullable: true properties: - disabled: - type: boolean + custom: + type: object + x-stream-index: "003" + id: + maxLength: 255 + type: string x-stream-index: "001" - disabled_until: - format: date-time + text: type: string x-stream-index: "002" + required: + - id + - text + - custom type: object - PushNotificationSettingsRequest: + PollOptionRequest: + nullable: true properties: - disabled: - $ref: '#/components/schemas/NullBoolRequest' + custom: + type: object + x-stream-index: "003" + id: + maxLength: 255 + type: string x-stream-index: "001" - disabled_until: - $ref: '#/components/schemas/NullTimeRequest' + text: + type: string x-stream-index: "002" + required: + - id type: object - PushProvider: + PollOptionRequest_1: nullable: true properties: - apn_auth_key: - type: string - x-stream-index: "012" - apn_auth_type: - type: string - x-stream-index: "017" - apn_development: - type: boolean - x-stream-index: "018" - apn_host: + custom: + type: object + x-stream-index: "003" + text: type: string - x-stream-index: "019" - apn_key_id: + x-stream-index: "002" + type: object + PollOptionResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "013" - apn_notification_template: - type: string - x-stream-index: "020" - apn_p12_cert: + x-stream-index: "002.001" + poll_option: + $ref: '#/components/schemas/PollOptionResponseData' + x-stream-index: "001" + required: + - poll_option + - duration + type: object + PollOptionResponseData: + nullable: true + properties: + custom: + type: object + x-stream-index: "003" + id: type: string - x-stream-index: "014" - apn_team_id: + x-stream-index: "001" + text: type: string + x-stream-index: "002" + required: + - id + - text + - custom + type: object + PollRequest: + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "023" + allow_answers: + type: boolean + x-stream-index: "010" + allow_user_suggested_options: + type: boolean + x-stream-index: "009" + answers_count: + format: int32 + type: integer x-stream-index: "015" - apn_topic: - type: string - x-stream-index: "016" created_at: format: date-time type: string - x-stream-index: "008" + x-stream-index: "021" + created_by: + $ref: '#/components/schemas/UserObjectRequest' + x-stream-index: "020" + created_by_id: + type: string + x-stream-index: "019" description: - maxLength: 128 type: string + x-stream-index: "005" + enforce_unique_vote: + type: boolean x-stream-index: "007" - disabled_at: - format: date-time - type: string - x-stream-index: "010" - disabled_reason: - maxLength: 255 + id: type: string + x-stream-index: "003" + is_closed: + type: boolean x-stream-index: "011" - firebase_apn_template: + latest_answers: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + x-stream-index: "017" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + type: object + x-stream-index: "016" + max_votes_allowed: + format: int32 + type: integer + x-stream-index: "008" + name: type: string - x-stream-index: "025" - firebase_credentials: + x-stream-index: "004" + options: + items: + $ref: '#/components/schemas/PollOptionRequest' + type: array + x-stream-index: "013" + own_votes: + items: + $ref: '#/components/schemas/PollVoteRequest' + type: array + x-stream-index: "018" + updated_at: + format: date-time type: string x-stream-index: "022" - firebase_data_template: - type: string - x-stream-index: "023" - firebase_host: - type: string - x-stream-index: "026" - firebase_notification_template: + vote_count: + format: int32 + type: integer + x-stream-index: "012" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "014" + voting_visibility: type: string - x-stream-index: "024" - firebase_server_key: + x-stream-index: "006" + type: object + PollResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration type: string - x-stream-index: "021" - huawei_app_id: + x-stream-index: "002.001" + poll: + $ref: '#/components/schemas/PollResponseData' + x-stream-index: "001" + required: + - poll + - duration + type: object + PollResponseData: + properties: + Custom: + type: object + writeOnly: true + x-stream-index: "020" + allow_answers: + type: boolean + x-stream-index: "008" + allow_user_suggested_options: + type: boolean + x-stream-index: "007" + answers_count: + format: int32 + type: integer + x-stream-index: "012" + created_at: + format: date-time type: string - x-stream-index: "027" - huawei_app_secret: + x-stream-index: "018" + created_by: + $ref: '#/components/schemas/UserObject' + x-stream-index: "017" + created_by_id: type: string - x-stream-index: "028" - name: - maxLength: 36 - minLength: 1 + x-stream-index: "016" + description: type: string + x-stream-index: "003" + enforce_unique_vote: + type: boolean x-stream-index: "005" - type: + id: + type: string + x-stream-index: "001" + is_closed: + type: boolean + x-stream-index: "009" + latest_votes_by_option: + additionalProperties: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array + type: object + x-stream-index: "014" + max_votes_allowed: + format: int32 type: integer x-stream-index: "006" + name: + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionResponseData' + type: array + x-stream-index: "011" + own_votes: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array + x-stream-index: "015" updated_at: format: date-time type: string - x-stream-index: "009" - xiaomi_app_secret: - type: string - x-stream-index: "030" - xiaomi_package_name: + x-stream-index: "019" + vote_count: + format: int32 + type: integer + x-stream-index: "010" + vote_counts_by_option: + additionalProperties: + format: int32 + type: integer + type: object + x-stream-index: "013" + voting_visibility: type: string - x-stream-index: "029" + x-stream-index: "004" required: + - id - name - - type + - description + - voting_visibility + - enforce_unique_vote + - allow_user_suggested_options + - allow_answers + - vote_count + - options + - answers_count + - vote_counts_by_option + - latest_votes_by_option + - own_votes + - created_by_id - created_at - updated_at + - Custom type: object - PushProviderRequest: + PollVote: + nullable: true properties: - apn_auth_key: - type: string - x-stream-index: "012" - apn_auth_type: - type: string - x-stream-index: "017" - apn_development: - type: boolean - x-stream-index: "018" - apn_host: - type: string - x-stream-index: "019" - apn_key_id: + answer_text: type: string - x-stream-index: "013" - apn_notification_template: + x-stream-index: "007" + created_at: + format: date-time type: string - x-stream-index: "020" - apn_p12_cert: + x-stream-index: "010" + id: type: string - x-stream-index: "014" - apn_team_id: + x-stream-index: "004" + is_answer: + type: boolean + x-stream-index: "006" + option_id: type: string - x-stream-index: "015" - apn_topic: + x-stream-index: "005" + poll_id: type: string - x-stream-index: "016" - created_at: + x-stream-index: "003" + updated_at: format: date-time + type: string + x-stream-index: "011" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "009" + user_id: type: string x-stream-index: "008" - description: - maxLength: 128 + required: + - poll_id + - id + - option_id + - created_at + - updated_at + type: object + PollVoteRequest: + nullable: true + properties: + answer_text: type: string x-stream-index: "007" - disabled_at: + created_at: format: date-time type: string x-stream-index: "010" - disabled_reason: - maxLength: 255 + id: type: string - x-stream-index: "011" - firebase_apn_template: + x-stream-index: "004" + is_answer: + type: boolean + x-stream-index: "006" + option_id: type: string - x-stream-index: "025" - firebase_credentials: + x-stream-index: "005" + poll_id: type: string - x-stream-index: "022" - firebase_data_template: + x-stream-index: "003" + updated_at: + format: date-time + type: string + x-stream-index: "011" + user: + $ref: '#/components/schemas/UserObjectRequest' + x-stream-index: "009" + user_id: + type: string + x-stream-index: "008" + type: object + PollVoteResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "002.001" + vote: + $ref: '#/components/schemas/PollVoteResponseData' + x-stream-index: "001" + required: + - duration + type: object + PollVoteResponseData: + nullable: true + properties: + answer_text: + type: string + x-stream-index: "005" + created_at: + format: date-time + type: string + x-stream-index: "008" + id: + type: string + x-stream-index: "002" + is_answer: + type: boolean + x-stream-index: "004" + option_id: + type: string + x-stream-index: "003" + poll_id: + type: string + x-stream-index: "001" + updated_at: + format: date-time + type: string + x-stream-index: "009" + user: + $ref: '#/components/schemas/UserObject' + x-stream-index: "007" + user_id: + type: string + x-stream-index: "006" + required: + - poll_id + - id + - option_id + - created_at + - updated_at + type: object + PollVotesResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "003.001" + next: + type: string + x-stream-index: "002.001" + prev: + type: string + x-stream-index: "002.002" + votes: + items: + $ref: '#/components/schemas/PollVoteResponseData' + type: array + x-stream-index: "001" + required: + - votes + - duration + type: object + PushConfigRequest: + properties: + offline_only: + type: boolean + x-stream-index: "002" + version: + enum: + - v1 + - v2 + type: string + x-stream-index: "001" + type: object + PushNotificationFields: + properties: + apn: + $ref: '#/components/schemas/APNConfigFields' + x-stream-index: "002" + firebase: + $ref: '#/components/schemas/FirebaseConfigFields' + x-stream-index: "003" + huawei: + $ref: '#/components/schemas/HuaweiConfigFields' + x-stream-index: "004" + offline_only: + type: boolean + x-stream-index: "001.002" + providers: + items: + $ref: '#/components/schemas/PushProvider' + type: array + x-stream-index: "006" + version: + type: string + x-stream-index: "001.001" + xiaomi: + $ref: '#/components/schemas/XiaomiConfigFields' + x-stream-index: "005" + required: + - version + - offline_only + - apn + - firebase + - huawei + - xiaomi + type: object + PushNotificationSettings: + properties: + disabled: + type: boolean + x-stream-index: "001" + disabled_until: + format: date-time + type: string + x-stream-index: "002" + type: object + PushNotificationSettingsRequest: + properties: + disabled: + $ref: '#/components/schemas/NullBoolRequest' + x-stream-index: "001" + disabled_until: + $ref: '#/components/schemas/NullTimeRequest' + x-stream-index: "002" + type: object + PushProvider: + nullable: true + properties: + apn_auth_key: + type: string + x-stream-index: "012" + apn_auth_type: + type: string + x-stream-index: "017" + apn_development: + type: boolean + x-stream-index: "018" + apn_host: + type: string + x-stream-index: "019" + apn_key_id: + type: string + x-stream-index: "013" + apn_notification_template: + type: string + x-stream-index: "020" + apn_p12_cert: + type: string + x-stream-index: "014" + apn_team_id: + type: string + x-stream-index: "015" + apn_topic: + type: string + x-stream-index: "016" + created_at: + format: date-time + type: string + x-stream-index: "008" + description: + maxLength: 128 + type: string + x-stream-index: "007" + disabled_at: + format: date-time + type: string + x-stream-index: "010" + disabled_reason: + maxLength: 255 + type: string + x-stream-index: "011" + firebase_apn_template: + type: string + x-stream-index: "025" + firebase_credentials: + type: string + x-stream-index: "022" + firebase_data_template: type: string x-stream-index: "023" firebase_host: @@ -7724,90 +8403,183 @@ components: x-stream-index: "029" required: - name + - type + - created_at + - updated_at type: object - PushProviderResponse: + PushProviderRequest: properties: apn_auth_key: type: string - x-stream-index: "008" + x-stream-index: "012" apn_auth_type: type: string - x-stream-index: "013" + x-stream-index: "017" apn_development: type: boolean - x-stream-index: "014" + x-stream-index: "018" apn_host: type: string - x-stream-index: "015" + x-stream-index: "019" apn_key_id: type: string - x-stream-index: "009" + x-stream-index: "013" + apn_notification_template: + type: string + x-stream-index: "020" apn_p12_cert: type: string - x-stream-index: "010" - apn_sandbox_certificate: - type: boolean - x-stream-index: "016" - apn_supports_remote_notifications: - type: boolean - x-stream-index: "018" - apn_supports_voip_notifications: - type: boolean - x-stream-index: "017" + x-stream-index: "014" apn_team_id: type: string - x-stream-index: "011" + x-stream-index: "015" apn_topic: type: string - x-stream-index: "012" + x-stream-index: "016" created_at: format: date-time type: string - x-stream-index: "004" + x-stream-index: "008" description: + maxLength: 128 type: string - x-stream-index: "003" + x-stream-index: "007" disabled_at: format: date-time type: string - x-stream-index: "006" + x-stream-index: "010" disabled_reason: + maxLength: 255 type: string - x-stream-index: "007" + x-stream-index: "011" firebase_apn_template: type: string - x-stream-index: "023" + x-stream-index: "025" firebase_credentials: type: string - x-stream-index: "020" + x-stream-index: "022" firebase_data_template: type: string - x-stream-index: "021" + x-stream-index: "023" firebase_host: type: string - x-stream-index: "024" + x-stream-index: "026" firebase_notification_template: type: string - x-stream-index: "022" + x-stream-index: "024" firebase_server_key: type: string - x-stream-index: "019" + x-stream-index: "021" huawei_app_id: type: string - x-stream-index: "025" + x-stream-index: "027" huawei_app_secret: type: string - x-stream-index: "026" + x-stream-index: "028" name: + maxLength: 36 + minLength: 1 type: string - x-stream-index: "001" + x-stream-index: "005" type: - type: string - x-stream-index: "002" + type: integer + x-stream-index: "006" updated_at: format: date-time type: string - x-stream-index: "005" + x-stream-index: "009" + xiaomi_app_secret: + type: string + x-stream-index: "030" + xiaomi_package_name: + type: string + x-stream-index: "029" + required: + - name + type: object + PushProviderResponse: + properties: + apn_auth_key: + type: string + x-stream-index: "008" + apn_auth_type: + type: string + x-stream-index: "013" + apn_development: + type: boolean + x-stream-index: "014" + apn_host: + type: string + x-stream-index: "015" + apn_key_id: + type: string + x-stream-index: "009" + apn_p12_cert: + type: string + x-stream-index: "010" + apn_sandbox_certificate: + type: boolean + x-stream-index: "016" + apn_supports_remote_notifications: + type: boolean + x-stream-index: "018" + apn_supports_voip_notifications: + type: boolean + x-stream-index: "017" + apn_team_id: + type: string + x-stream-index: "011" + apn_topic: + type: string + x-stream-index: "012" + created_at: + format: date-time + type: string + x-stream-index: "004" + description: + type: string + x-stream-index: "003" + disabled_at: + format: date-time + type: string + x-stream-index: "006" + disabled_reason: + type: string + x-stream-index: "007" + firebase_apn_template: + type: string + x-stream-index: "023" + firebase_credentials: + type: string + x-stream-index: "020" + firebase_data_template: + type: string + x-stream-index: "021" + firebase_host: + type: string + x-stream-index: "024" + firebase_notification_template: + type: string + x-stream-index: "022" + firebase_server_key: + type: string + x-stream-index: "019" + huawei_app_id: + type: string + x-stream-index: "025" + huawei_app_secret: + type: string + x-stream-index: "026" + name: + type: string + x-stream-index: "001" + type: + type: string + x-stream-index: "002" + updated_at: + format: date-time + type: string + x-stream-index: "005" xiaomi_app_secret: type: string x-stream-index: "028" @@ -8243,6 +9015,85 @@ components: - flags - duration type: object + QueryPollVotesRequest: + nullable: true + properties: + filter: + type: object + x-stream-index: "003" + limit: + format: int32 + maximum: 25 + minimum: 0 + type: integer + x-stream-index: "005.001" + next: + type: string + x-stream-index: "005.002" + poll_id: + maxLength: 255 + type: string + x-stream-index: "002" + prev: + type: string + x-stream-index: "005.003" + sort: + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 + type: array + x-stream-index: "004" + required: + - poll_id + type: object + QueryPollsRequest: + nullable: true + properties: + filter: + type: object + x-stream-index: "002" + limit: + format: int32 + maximum: 25 + minimum: 0 + type: integer + x-stream-index: "005.001" + next: + type: string + x-stream-index: "005.002" + prev: + type: string + x-stream-index: "005.003" + sort: + items: + $ref: '#/components/schemas/SortParamRequest' + maximum: 5 + type: array + x-stream-index: "003" + type: object + QueryPollsResponse: + nullable: true + properties: + duration: + description: Duration of the request in human-readable format + title: Duration + type: string + x-stream-index: "003.001" + next: + type: string + x-stream-index: "002.001" + polls: + items: + $ref: '#/components/schemas/PollResponseData' + type: array + x-stream-index: "001" + prev: + type: string + x-stream-index: "002.002" + required: + - polls + - duration + type: object QueryThreadsRequest: nullable: true properties: @@ -8999,6 +9850,12 @@ components: pinned_by: $ref: '#/components/schemas/UserObject' x-stream-index: "001.047" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "001.051" + poll_id: + type: string + x-stream-index: "001.050" quoted_message: $ref: '#/components/schemas/Message' x-stream-index: "001.023" @@ -9068,6 +9925,7 @@ components: - mentioned_users - silent - pinned + - poll_id type: object SearchWarning: properties: @@ -9373,6 +10231,24 @@ components: required: - duration type: object + Subsession: + properties: + sfu_id: + type: string + x-stream-index: "003" + ts_ended_at: + format: int64 + type: integer + x-stream-index: "002" + ts_joined_at: + format: int64 + type: integer + x-stream-index: "001" + required: + - ts_joined_at + - ts_ended_at + - sfu_id + type: object TargetResolution: properties: bitrate: @@ -10737,39 +11613,39 @@ components: items: type: string type: array - x-stream-index: 007.001.023 + x-stream-index: 007.001.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 007.001.018 + x-stream-index: 007.001.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 007.001.019 + x-stream-index: 007.001.020 automod_thresholds: $ref: '#/components/schemas/ThresholdsRequest' - x-stream-index: 007.001.024 + x-stream-index: 007.001.025 blocklist: type: string - x-stream-index: 007.001.020 + x-stream-index: 007.001.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 007.001.021 + x-stream-index: 007.001.022 blocklists: items: $ref: '#/components/schemas/BlockListOptionsRequest' type: array - x-stream-index: 007.001.022 + x-stream-index: 007.001.023 commands: description: List of commands that channel supports items: @@ -10797,10 +11673,10 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 007.001.017 + x-stream-index: 007.001.018 message_retention: type: string - x-stream-index: 007.001.016 + x-stream-index: 007.001.017 mutes: type: boolean x-stream-index: 007.001.009 @@ -10809,6 +11685,9 @@ components: $ref: '#/components/schemas/PolicyRequest_1' type: array x-stream-index: "003" + polls: + type: boolean + x-stream-index: 007.001.016 push_notifications: type: boolean x-stream-index: 007.001.013 @@ -10849,39 +11728,39 @@ components: items: type: string type: array - x-stream-index: 003.001.023 + x-stream-index: 003.001.024 automod: enum: - disabled - simple - AI type: string - x-stream-index: 003.001.018 + x-stream-index: 003.001.019 automod_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 003.001.019 + x-stream-index: 003.001.020 automod_thresholds: $ref: '#/components/schemas/Thresholds' - x-stream-index: 003.001.024 + x-stream-index: 003.001.025 blocklist: type: string - x-stream-index: 003.001.020 + x-stream-index: 003.001.021 blocklist_behavior: enum: - flag - block - shadow_block type: string - x-stream-index: 003.001.021 + x-stream-index: 003.001.022 blocklists: items: $ref: '#/components/schemas/BlockListOptions' type: array - x-stream-index: 003.001.022 + x-stream-index: 003.001.023 commands: items: type: string @@ -10914,10 +11793,10 @@ components: format: int32 maximum: 20000 type: integer - x-stream-index: 003.001.017 + x-stream-index: 003.001.018 message_retention: type: string - x-stream-index: 003.001.016 + x-stream-index: 003.001.017 mutes: type: boolean x-stream-index: 003.001.009 @@ -10929,6 +11808,9 @@ components: $ref: '#/components/schemas/PolicyRequest' type: array x-stream-index: "001" + polls: + type: boolean + x-stream-index: 003.001.016 push_notifications: type: boolean x-stream-index: 003.001.013 @@ -10981,6 +11863,7 @@ components: - push_notifications - reminders - mark_messages_pending + - polls - message_retention - max_message_length - automod @@ -11168,21 +12051,58 @@ components: - message - duration type: object - UpdateThreadPartialRequest: + UpdatePollOptionRequest: nullable: true properties: - ID: - type: string + Custom: + type: object writeOnly: true + x-stream-index: "004" + id: + maxLength: 255 + type: string + x-stream-index: "002" + poll_id: + maxLength: 255 + type: string + x-stream-index: "001" + text: + type: string + x-stream-index: "003" + user: + $ref: '#/components/schemas/UserRequest_1' + x-stream-index: "005.002" + user_id: + type: string + x-stream-index: "005.001" + required: + - poll_id + - id + - text + type: object + UpdatePollPartialRequest: + nullable: true + properties: + poll_id: + maxLength: 255 + type: string x-stream-index: "001" set: + description: Sets new field values + title: Set type: object - x-stream-index: "004.001" + x-stream-index: "002.001" + x-stream-map: + description: New value to set + key: field + title: Value unset: + description: Array of field names to unset items: type: string + title: Unset type: array - x-stream-index: "004.002" + x-stream-index: "002.002" user: $ref: '#/components/schemas/UserRequest_1' x-stream-index: "003.002" @@ -11190,13 +12110,95 @@ components: type: string x-stream-index: "003.001" required: + - poll_id - set - unset type: object - UpdateThreadPartialResponse: + UpdatePollRequest: nullable: true properties: - duration: + Custom: + type: object + writeOnly: true + x-stream-index: "011" + allow_answers: + type: boolean + x-stream-index: "009" + allow_user_suggested_options: + type: boolean + x-stream-index: "008" + description: + type: string + x-stream-index: "003" + enforce_unique_vote: + type: boolean + x-stream-index: "005" + id: + maxLength: 255 + type: string + x-stream-index: "001" + is_closed: + type: boolean + x-stream-index: "010" + max_votes_allowed: + format: int32 + maximum: 10 + type: integer + x-stream-index: "007" + name: + type: string + x-stream-index: "002" + options: + items: + $ref: '#/components/schemas/PollOptionRequest' + maximum: 100 + type: array + x-stream-index: "004" + user: + $ref: '#/components/schemas/UserRequest_1' + x-stream-index: "012.002" + user_id: + type: string + x-stream-index: "012.001" + voting_visibility: + enum: + - anonymous + - public + type: string + x-stream-index: "006" + required: + - id + - name + type: object + UpdateThreadPartialRequest: + nullable: true + properties: + ID: + type: string + writeOnly: true + x-stream-index: "001" + set: + type: object + x-stream-index: "004.001" + unset: + items: + type: string + type: array + x-stream-index: "004.002" + user: + $ref: '#/components/schemas/UserRequest_1' + x-stream-index: "003.002" + user_id: + type: string + x-stream-index: "003.001" + required: + - set + - unset + type: object + UpdateThreadPartialResponse: + nullable: true + properties: + duration: type: string x-stream-index: "002.001" thread: @@ -11683,47 +12685,118 @@ components: type: object UserSessionStats: properties: + browser: + type: string + x-stream-index: "009" + browser_version: + type: string + x-stream-index: "010" + current_ip: + type: string + x-stream-index: "028" + current_sfu: + type: string + x-stream-index: "029" + device_model: + type: string + x-stream-index: "007" + device_version: + type: string + x-stream-index: "008" freeze_duration_seconds: format: float type: number - x-stream-index: "009" + x-stream-index: "023" + geolocation: + $ref: '#/components/schemas/GeolocationResult' + x-stream-index: "030" jitter: $ref: '#/components/schemas/Stats' - x-stream-index: "006" + x-stream-index: "011" latency: $ref: '#/components/schemas/Stats' - x-stream-index: "007" + x-stream-index: "012" + max_fir_per_minute: + format: float + type: number + x-stream-index: "019" + max_freezes_per_minute: + format: float + type: number + x-stream-index: "020" + max_nack_per_minute: + format: float + type: number + x-stream-index: "018" + max_pli_per_minute: + format: float + type: number + x-stream-index: "017" + max_publishing_video_quality: + $ref: '#/components/schemas/VideoQuality' + x-stream-index: "016" + max_receiving_video_quality: + $ref: '#/components/schemas/VideoQuality' + x-stream-index: "025" os: type: string x-stream-index: "002" + os_version: + type: string + x-stream-index: "003" packet_loss_fraction: format: float type: number - x-stream-index: "010" + x-stream-index: "021" + publishing_audio_codec: + type: string + x-stream-index: "015" + publishing_duration_seconds: + format: int32 + type: integer + x-stream-index: "014" quality_score: format: float type: number - x-stream-index: "008" + x-stream-index: "013" + receiving_audio_codec: + type: string + x-stream-index: "024" + receiving_duration_seconds: + format: int32 + type: integer + x-stream-index: "022" sdk: type: string - x-stream-index: "004" + x-stream-index: "005" sdk_version: type: string - x-stream-index: "005" + x-stream-index: "006" + subsessions: + items: + $ref: '#/components/schemas/Subsession' + type: array + x-stream-index: "031" timeline: $ref: '#/components/schemas/CallTimeline' x-stream-index: "001" + total_pixels_in: + type: integer + x-stream-index: "026" + total_pixels_out: + type: integer + x-stream-index: "027" webrtc_version: type: string - x-stream-index: "003" + x-stream-index: "004" required: - - os - - webrtc_version - - sdk - - sdk_version - quality_score - - freeze_duration_seconds + - publishing_duration_seconds - packet_loss_fraction + - receiving_duration_seconds + - freeze_duration_seconds + - total_pixels_in + - total_pixels_out type: object UserStats: properties: @@ -11756,6 +12829,28 @@ components: - users - duration type: object + VideoQuality: + properties: + resolution: + $ref: '#/components/schemas/VideoResolution' + x-stream-index: "001" + required: + - resolution + type: object + VideoResolution: + properties: + height: + format: int32 + type: integer + x-stream-index: "002" + width: + format: int32 + type: integer + x-stream-index: "001" + required: + - width + - height + type: object VideoSettings: properties: access_request_enabled: @@ -11806,19 +12901,32 @@ components: $ref: '#/components/schemas/TargetResolutionRequest' x-stream-index: "003" type: object + VoteDataRequest: + properties: + Option: + $ref: '#/components/schemas/PollOptionRequest' + x-stream-index: "003" + answer_text: + type: string + x-stream-index: "002" + option_id: + maxLength: 255 + type: string + x-stream-index: "001" + type: object WSEvent: description: Represents an BaseEvent that happened in Stream Chat properties: Custom: type: object writeOnly: true - x-stream-index: "022" + x-stream-index: "024" automoderation: type: boolean - x-stream-index: "018" + x-stream-index: "020" automoderation_scores: $ref: '#/components/schemas/ModerationResponse' - x-stream-index: "019" + x-stream-index: "021" channel: $ref: '#/components/schemas/ChannelResponse' x-stream-index: "009" @@ -11837,13 +12945,13 @@ components: created_at: format: date-time type: string - x-stream-index: "023" + x-stream-index: "025" created_by: $ref: '#/components/schemas/UserObject' - x-stream-index: "017" + x-stream-index: "019" me: $ref: '#/components/schemas/OwnUser' - x-stream-index: "014" + x-stream-index: "016" member: $ref: '#/components/schemas/ChannelMember' x-stream-index: "011" @@ -11855,16 +12963,22 @@ components: x-stream-index: "007" parent_id: type: string - x-stream-index: "020" + x-stream-index: "022" + poll: + $ref: '#/components/schemas/Poll' + x-stream-index: "012" + poll_vote: + $ref: '#/components/schemas/PollVote' + x-stream-index: "013" reaction: $ref: '#/components/schemas/Reaction' x-stream-index: "008" reason: type: string - x-stream-index: "016" + x-stream-index: "018" team: type: string - x-stream-index: "021" + x-stream-index: "023" thread: $ref: '#/components/schemas/Thread' x-stream-index: "010" @@ -11873,14 +12987,14 @@ components: x-stream-index: "001" user: $ref: '#/components/schemas/UserObject' - x-stream-index: "012" + x-stream-index: "014" user_id: type: string - x-stream-index: "013" + x-stream-index: "015" watcher_count: format: int32 type: integer - x-stream-index: "015" + x-stream-index: "017" required: - type - Custom @@ -11998,7 +13112,7 @@ components: type: apiKey info: title: Stream API - version: v104.0.1 + version: v105.1.0 openapi: 3.0.3 paths: /api/v2/app: @@ -12025,25 +13139,564 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get App Settings + summary: Get App Settings + tags: + - Settings + patch: + description: | + This Method updates one or more application settings + operationId: UpdateApp + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateAppRequest' + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Update App Settings + tags: + - Settings + /api/v2/chat/blocklists: + get: + description: | + Returns all available block lists + operationId: ListBlockLists + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/ListBlockListResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: List block lists + tags: + - Settings + - Moderation + post: + description: | + Creates a new application blocklist, once created the blocklist can be used by any channel type + operationId: CreateBlockList + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateBlockListRequest' + description: Block list + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Create block list + tags: + - Settings + - Moderation + /api/v2/chat/blocklists/{name}: + delete: + description: | + Deletes previously created application blocklist + operationId: DeleteBlockList + parameters: + - in: path + name: name + required: true + schema: + description: Block list name + title: Name + type: string + writeOnly: true + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete block list + tags: + - Settings + - Moderation + get: + description: | + Returns block list by given name + operationId: GetBlockList + parameters: + - in: path + name: name + required: true + schema: + description: Block list name + title: Name + type: string + writeOnly: true + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/GetBlockListResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get block list + tags: + - Settings + - Moderation + put: + description: | + Updates contents of the block list + operationId: UpdateBlockList + parameters: + - in: path + name: name + required: true + schema: + description: Block list name + title: Name + type: string + writeOnly: true + x-stream-index: "001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateBlockListRequest' + description: Update block list + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Update block list + tags: + - Settings + - Moderation + /api/v2/chat/blocklists/{type}/validate: + post: + description: | + Runs specific blocklist validation, returns an appropriate error if the blocklist is invalid + operationId: ValidateBlockList + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateBlockListRequest' + description: Block list + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Validate Blocklist + tags: + - Moderation + /api/v2/chat/channels: + post: + description: | + Query channels with filter query + + Required permissions: + - ReadChannel + operationId: QueryChannels + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryChannelsRequest' + description: Query Channels Request + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/ChannelsResponse' + description: Channels list + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Query channels + tags: + - Channels + /api/v2/chat/channels/{type}/{id}: + delete: + description: | + Deletes channel + + Sends events: + - channel.deleted + + Required permissions: + - DeleteChannel + operationId: DeleteChannel + parameters: + - in: path + name: type + required: true + schema: + description: Channel type to interact with + title: Channel type + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "001.002" + - in: query + name: hard_delete + schema: + type: boolean + x-stream-index: "002" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/DeleteChannelResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete channel + tags: + - Channels + patch: + description: | + Updates certain fields of the channel + + Sends events: + - channel.updated + + Required permissions: + - UpdateChannel + - UpdateChannelCooldown + - UpdateChannelFrozen + operationId: UpdateChannelPartial + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelPartialRequest' + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelPartialResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Partially update channel + tags: + - Channels + post: + description: | + Change channel data + + Sends events: + - channel.updated + - member.added + - member.removed + - member.updated + - message.new + + Required permissions: + - AddOwnChannelMembership + - RemoveOwnChannelMembership + - UpdateChannel + - UpdateChannelCooldown + - UpdateChannelFrozen + - UpdateChannelMembers + operationId: UpdateChannel + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: 013.002.001 + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: 013.002.002 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelRequest' + description: Channel update request + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Update channel + tags: + - Channels + /api/v2/chat/channels/{type}/{id}/event: + post: + description: | + Sends event to the channel + + Required permissions: + - SendCustomEvent + operationId: SendEvent + parameters: + - in: path + name: type + required: true + schema: + description: Channel type to interact with + title: Channel type + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "002.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SendEventRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/EventResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Send event tags: - - Settings - patch: + - Events + /api/v2/chat/channels/{type}/{id}/file: + delete: description: | - This Method updates one or more application settings - operationId: UpdateApp - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateAppRequest' + Deletes previously uploaded file + + Required permissions: + - DeleteAttachment + operationId: DeleteFile + parameters: + - in: path + name: type + required: true + schema: + description: The type of file + title: Type + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id required: true + schema: + description: File ID + title: ID + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: url + schema: + description: File URL to delete + title: URL + type: string + writeOnly: true + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/FileDeleteResponse' description: Successful response "400": content: @@ -12057,20 +13710,44 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update App Settings + summary: Delete file tags: - - Settings - /api/v2/chat/blocklists: - get: + - Messages + - Files + post: description: | - Returns all available block lists - operationId: ListBlockLists + Uploads file + + Required permissions: + - UploadAttachment + operationId: UploadFile + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001.002" + requestBody: + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/FileUploadRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/ListBlockListResponse' + $ref: '#/components/schemas/FileUploadResponse' description: Successful response "400": content: @@ -12084,27 +13761,48 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: List block lists + summary: Upload file tags: - - Settings - - Moderation + - Messages + - Files + /api/v2/chat/channels/{type}/{id}/hide: post: description: | - Creates a new application blocklist, once created the blocklist can be used by any channel type - operationId: CreateBlockList + Marks channel as hidden for current user + + Sends events: + - channel.hidden + + Required permissions: + - ReadChannel + operationId: HideChannel + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/CreateBlockListRequest' - description: Block list + $ref: '#/components/schemas/HideChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/HideChannelResponse' description: Successful response "400": content: @@ -12118,22 +13816,41 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create block list + summary: Hide channel tags: - - Settings - - Moderation - /api/v2/chat/blocklists/{name}: + - Channels + /api/v2/chat/channels/{type}/{id}/image: delete: description: | - Deletes previously created application blocklist - operationId: DeleteBlockList + Deletes previously uploaded image + + Required permissions: + - DeleteAttachment + operationId: DeleteImage parameters: - in: path - name: name + name: type required: true schema: - description: Block list name - title: Name + description: The type of file + title: Type + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id + required: true + schema: + description: File ID + title: ID + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: url + schema: + description: File URL to delete + title: URL type: string writeOnly: true x-stream-index: "001" @@ -12142,7 +13859,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/FileDeleteResponse' description: Successful response "400": content: @@ -12156,30 +13873,44 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete block list + summary: Delete image tags: - - Settings - - Moderation - get: + - Messages + - Files + post: description: | - Returns block list by given name - operationId: GetBlockList + Uploads image + + Required permissions: + - UploadAttachment + operationId: UploadImage parameters: - in: path - name: name + name: type required: true schema: - description: Block list name - title: Name type: string writeOnly: true - x-stream-index: "001" + x-stream-index: 001.001.001 + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: 001.001.002 + requestBody: + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/ImageUploadRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetBlockListResponse' + $ref: '#/components/schemas/ImageUploadResponse' description: Successful response "400": content: @@ -12193,37 +13924,58 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get block list + summary: Upload image tags: - - Settings - - Moderation - put: + - Messages + - Files + /api/v2/chat/channels/{type}/{id}/message: + post: description: | - Updates contents of the block list - operationId: UpdateBlockList + Sends new message to the specified channel + + Sends events: + - message.new + - message.updated + + Required permissions: + - AddLinks + - CreateMessage + - PinMessage + - SkipChannelCooldown + - SkipMessageModeration + - UseFrozenChannel + operationId: SendMessage parameters: - in: path - name: name + name: type required: true schema: - description: Block list name - title: Name + description: Channel type to interact with + title: Channel type type: string writeOnly: true - x-stream-index: "001" + x-stream-index: "009.001" + - in: path + name: id + required: true + schema: + description: Channel ID to interact with + title: Channel ID + type: string + writeOnly: true + x-stream-index: "009.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateBlockListRequest' - description: Update block list + $ref: '#/components/schemas/SendMessageRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/SendMessageResponse' description: Successful response "400": content: @@ -12237,28 +13989,49 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update block list + summary: Send new message tags: - - Settings - - Moderation - /api/v2/chat/blocklists/{type}/validate: - post: + - Messages + /api/v2/chat/channels/{type}/{id}/messages: + get: description: | - Runs specific blocklist validation, returns an appropriate error if the blocklist is invalid - operationId: ValidateBlockList - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateBlockListRequest' - description: Block list + Returns list messages found by IDs + + Required permissions: + - ReadChannel + operationId: GetManyMessages + parameters: + - in: path + name: type + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.001" + - in: path + name: id required: true + schema: + type: string + writeOnly: true + x-stream-index: "002.002" + - in: query + name: ids + schema: + description: List of comma-separated IDs + items: + type: string + maximum: 50 + minimum: 1 + title: IDs + type: array + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/GetManyMessagesResponse' description: Successful response "400": content: @@ -12272,31 +14045,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Validate Blocklist + summary: Get many messages tags: - - Moderation - /api/v2/chat/channels: + - Messages + /api/v2/chat/channels/{type}/{id}/query: post: description: | - Query channels with filter query + This Method creates a channel or returns an existing one with matching attributes - Required permissions: - - ReadChannel - operationId: QueryChannels + Sends events: + - channel.created + - member.added + - member.removed + - member.updated + - user.watching.start + operationId: GetOrCreateChannel + parameters: + - in: path + name: type + required: true + schema: + description: Channel type + maxLength: 64 + title: Type + type: string + writeOnly: true + x-stream-index: "002" + - in: path + name: id + required: true + schema: + description: Channel ID (maximum length of 64 characters) + title: ID + type: string + writeOnly: true + x-stream-index: "003" requestBody: content: application/json: schema: - $ref: '#/components/schemas/QueryChannelsRequest' - description: Query Channels Request + $ref: '#/components/schemas/ChannelGetOrCreateRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ChannelsResponse' - description: Channels list + $ref: '#/components/schemas/ChannelStateResponse' + description: Successful response "400": content: application/json: @@ -12309,50 +14105,47 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query channels + summary: Get or create channel tags: - Channels - /api/v2/chat/channels/{type}/{id}: - delete: + /api/v2/chat/channels/{type}/{id}/read: + post: description: | - Deletes channel + Marks channel as read up to the specific message Sends events: - - channel.deleted + - message.read Required permissions: - - DeleteChannel - operationId: DeleteChannel + - ReadChannel + operationId: MarkRead parameters: - in: path name: type required: true schema: - description: Channel type to interact with - title: Channel type type: string writeOnly: true - x-stream-index: "001.001" + x-stream-index: "002.001" - in: path name: id required: true schema: - description: Channel ID to interact with - title: Channel ID type: string writeOnly: true - x-stream-index: "001.002" - - in: query - name: hard_delete - schema: - type: boolean - x-stream-index: "002" + x-stream-index: "002.002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/MarkReadRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelResponse' + $ref: '#/components/schemas/MarkReadResponse' description: Successful response "400": content: @@ -12366,26 +14159,25 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete channel + summary: Mark read tags: - Channels - patch: + - Messages + /api/v2/chat/channels/{type}/{id}/show: + post: description: | - Updates certain fields of the channel + Shows previously hidden channel Sends events: - - channel.updated - - Required permissions: - - UpdateChannel - - UpdateChannelCooldown - - UpdateChannelFrozen - operationId: UpdateChannelPartial + - channel.visible + operationId: ShowChannel parameters: - in: path name: type required: true schema: + description: Channel type to interact with + title: Channel type type: string writeOnly: true x-stream-index: "001.001" @@ -12393,6 +14185,8 @@ paths: name: id required: true schema: + description: Channel ID to interact with + title: Channel ID type: string writeOnly: true x-stream-index: "001.002" @@ -12400,14 +14194,14 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelPartialRequest' + $ref: '#/components/schemas/ShowChannelRequest' required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelPartialResponse' + $ref: '#/components/schemas/ShowChannelResponse' description: Successful response "400": content: @@ -12421,28 +14215,21 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Partially update channel + summary: Show channel tags: - Channels + /api/v2/chat/channels/{type}/{id}/truncate: post: description: | - Change channel data + Truncates channel Sends events: - - channel.updated - - member.added - - member.removed - - member.updated - - message.new + - channel.truncated Required permissions: - - AddOwnChannelMembership - - RemoveOwnChannelMembership - - UpdateChannel - - UpdateChannelCooldown - - UpdateChannelFrozen - - UpdateChannelMembers - operationId: UpdateChannel + - DeleteChannel + - TruncateChannel + operationId: TruncateChannel parameters: - in: path name: type @@ -12450,27 +14237,26 @@ paths: schema: type: string writeOnly: true - x-stream-index: 013.002.001 + x-stream-index: "001.001" - in: path name: id required: true schema: type: string writeOnly: true - x-stream-index: 013.002.002 + x-stream-index: "001.002" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelRequest' - description: Channel update request + $ref: '#/components/schemas/TruncateChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelResponse' + $ref: '#/components/schemas/TruncateChannelResponse' description: Successful response "400": content: @@ -12484,24 +14270,22 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update channel + summary: Truncate channel tags: - Channels - /api/v2/chat/channels/{type}/{id}/event: + /api/v2/chat/channels/{type}/{id}/unread: post: description: | - Sends event to the channel + Marks channel as unread from a specific message Required permissions: - - SendCustomEvent - operationId: SendEvent + - ReadChannel + operationId: MarkUnread parameters: - in: path name: type required: true schema: - description: Channel type to interact with - title: Channel type type: string writeOnly: true x-stream-index: "002.001" @@ -12509,8 +14293,6 @@ paths: name: id required: true schema: - description: Channel ID to interact with - title: Channel ID type: string writeOnly: true x-stream-index: "002.002" @@ -12518,14 +14300,14 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/SendEventRequest' + $ref: '#/components/schemas/MarkUnreadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/EventResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -12539,50 +14321,45 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send event + summary: Mark unread tags: - - Events - /api/v2/chat/channels/{type}/{id}/file: - delete: + - Channels + - Messages + /api/v2/chat/channels/{type}/query: + post: description: | - Deletes previously uploaded file + This Method creates a channel or returns an existing one with matching attributes - Required permissions: - - DeleteAttachment - operationId: DeleteFile + Sends events: + - channel.created + - member.added + - member.removed + - member.updated + - user.watching.start + operationId: GetOrCreateChannel parameters: - in: path name: type required: true schema: - description: The type of file + description: Channel type + maxLength: 64 title: Type type: string writeOnly: true - x-stream-index: "002.001" - - in: path - name: id + x-stream-index: "002" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChannelGetOrCreateRequest' required: true - schema: - description: File ID - title: ID - type: string - writeOnly: true - x-stream-index: "002.002" - - in: query - name: url - schema: - description: File URL to delete - title: URL - type: string - writeOnly: true - x-stream-index: "001" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/FileDeleteResponse' + $ref: '#/components/schemas/ChannelStateResponse' description: Successful response "400": content: @@ -12596,44 +14373,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete file + summary: Get or create channel tags: - - Messages - - Files + - Channels + /api/v2/chat/channels/delete: post: description: | - Uploads file + Allows to delete several channels at once asynchronously + + Sends events: + - channel.deleted Required permissions: - - UploadAttachment - operationId: UploadFile - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "001.001" - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "001.002" + - DeleteChannel + operationId: DeleteChannels requestBody: content: - multipart/form-data: + application/json: schema: - $ref: '#/components/schemas/FileUploadRequest' + $ref: '#/components/schemas/DeleteChannelsRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/FileUploadResponse' + $ref: '#/components/schemas/DeleteChannelsResponse' description: Successful response "400": content: @@ -12647,48 +14412,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Upload file + summary: Deletes channels asynchronously tags: - - Messages - - Files - /api/v2/chat/channels/{type}/{id}/hide: + - Channels + - GDPR + /api/v2/chat/channels/read: post: description: | - Marks channel as hidden for current user + Marks channels as read up to the specific message. If no channels is given, mark all channel as read Sends events: - - channel.hidden + - message.read Required permissions: - ReadChannel - operationId: HideChannel - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.002" + operationId: MarkChannelsRead requestBody: content: application/json: schema: - $ref: '#/components/schemas/HideChannelRequest' + $ref: '#/components/schemas/MarkChannelsReadRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/HideChannelResponse' + $ref: '#/components/schemas/MarkReadResponse' description: Successful response "400": content: @@ -12702,50 +14452,21 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Hide channel + summary: Mark channels as read tags: - Channels - /api/v2/chat/channels/{type}/{id}/image: - delete: + - Messages + /api/v2/chat/channeltypes: + get: description: | - Deletes previously uploaded image - - Required permissions: - - DeleteAttachment - operationId: DeleteImage - parameters: - - in: path - name: type - required: true - schema: - description: The type of file - title: Type - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true - schema: - description: File ID - title: ID - type: string - writeOnly: true - x-stream-index: "002.002" - - in: query - name: url - schema: - description: File URL to delete - title: URL - type: string - writeOnly: true - x-stream-index: "001" + Lists all available channel types + operationId: ListChannelTypes responses: "200": content: application/json: schema: - $ref: '#/components/schemas/FileDeleteResponse' + $ref: '#/components/schemas/ListChannelTypesResponse' description: Successful response "400": content: @@ -12759,44 +14480,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete image + summary: List channel types tags: - - Messages - - Files + - Settings + - Channel types post: description: | - Uploads image - - Required permissions: - - UploadAttachment - operationId: UploadImage - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: 001.001.001 - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: 001.001.002 + Creates new channel type + operationId: CreateChannelType requestBody: content: - multipart/form-data: + application/json: schema: - $ref: '#/components/schemas/ImageUploadRequest' + $ref: '#/components/schemas/CreateChannelTypeRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ImageUploadResponse' + $ref: '#/components/schemas/CreateChannelTypeResponse' description: Successful response "400": content: @@ -12810,58 +14513,31 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Upload image + summary: Create channel type tags: - - Messages - - Files - /api/v2/chat/channels/{type}/{id}/message: - post: + - Settings + - Channel types + /api/v2/chat/channeltypes/{name}: + delete: description: | - Sends new message to the specified channel - - Sends events: - - message.new - - message.updated - - Required permissions: - - AddLinks - - CreateMessage - - PinMessage - - SkipChannelCooldown - - SkipMessageModeration - - UseFrozenChannel - operationId: SendMessage + Deletes channel type + operationId: DeleteChannelType parameters: - in: path - name: type - required: true - schema: - description: Channel type to interact with - title: Channel type - type: string - writeOnly: true - x-stream-index: "009.001" - - in: path - name: id + name: name required: true schema: - description: Channel ID to interact with - title: Channel ID + description: Channel type name + title: Name type: string writeOnly: true - x-stream-index: "009.002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SendMessageRequest' - required: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/SendMessageResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -12875,49 +14551,99 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send new message + summary: Delete channel type tags: - - Messages - /api/v2/chat/channels/{type}/{id}/messages: + - Settings + - Channel types get: description: | - Returns list messages found by IDs - - Required permissions: - - ReadChannel - operationId: GetManyMessages + Gets channel type + operationId: GetChannelType parameters: - in: path - name: type + name: name required: true schema: + description: Channel type name + title: Name type: string writeOnly: true - x-stream-index: "002.001" + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Get channel type + tags: + - Settings + - Channel types + put: + description: | + Updates channel type + operationId: UpdateChannelType + parameters: - in: path - name: id + name: name required: true schema: type: string writeOnly: true - x-stream-index: "002.002" - - in: query - name: ids - schema: - description: List of comma-separated IDs - items: - type: string - maximum: 50 - minimum: 1 - title: IDs - type: array x-stream-index: "001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelTypeRequest' + required: true + responses: + "201": + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateChannelTypeResponse' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Update channel type + tags: + - Settings + - Channel types + /api/v2/chat/commands: + get: + description: | + Returns all custom commands + operationId: ListCommands responses: "200": content: application/json: schema: - $ref: '#/components/schemas/GetManyMessagesResponse' + $ref: '#/components/schemas/ListCommandsResponse' description: Successful response "400": content: @@ -12931,53 +14657,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get many messages + summary: List commands tags: - - Messages - /api/v2/chat/channels/{type}/{id}/query: + - Custom commands post: description: | - This Method creates a channel or returns an existing one with matching attributes - - Sends events: - - channel.created - - member.added - - member.removed - - member.updated - - user.watching.start - operationId: GetOrCreateChannel - parameters: - - in: path - name: type - required: true - schema: - description: Channel type - maxLength: 64 - title: Type - type: string - writeOnly: true - x-stream-index: "002" - - in: path - name: id - required: true - schema: - description: Channel ID (maximum length of 64 characters) - title: ID - type: string - writeOnly: true - x-stream-index: "003" + Creates custom chat command + operationId: CreateCommand requestBody: content: application/json: schema: - $ref: '#/components/schemas/ChannelGetOrCreateRequest' + $ref: '#/components/schemas/CreateCommandRequest' + description: Command required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ChannelStateResponse' + $ref: '#/components/schemas/CreateCommandResponse' description: Successful response "400": content: @@ -12991,47 +14690,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get or create channel + summary: Create command tags: - - Channels - /api/v2/chat/channels/{type}/{id}/read: - post: + - Custom commands + /api/v2/chat/commands/{name}: + delete: description: | - Marks channel as read up to the specific message - - Sends events: - - message.read - - Required permissions: - - ReadChannel - operationId: MarkRead + Deletes custom chat command + operationId: DeleteCommand parameters: - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id + name: name required: true schema: type: string - writeOnly: true - x-stream-index: "002.002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MarkReadRequest' - required: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MarkReadResponse' + $ref: '#/components/schemas/DeleteCommandResponse' description: Successful response "400": content: @@ -13045,49 +14724,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark read + summary: Delete command tags: - - Channels - - Messages - /api/v2/chat/channels/{type}/{id}/show: - post: + - Custom commands + get: description: | - Shows previously hidden channel - - Sends events: - - channel.visible - operationId: ShowChannel + Returns custom command by its name + operationId: GetCommand parameters: - in: path - name: type - required: true - schema: - description: Channel type to interact with - title: Channel type - type: string - writeOnly: true - x-stream-index: "001.001" - - in: path - name: id + name: name required: true schema: - description: Channel ID to interact with - title: Channel ID type: string - writeOnly: true - x-stream-index: "001.002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ShowChannelRequest' - required: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/ShowChannelResponse' + $ref: '#/components/schemas/GetCommandResponse' description: Successful response "400": content: @@ -13101,48 +14757,36 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Show channel + summary: Get command tags: - - Channels - /api/v2/chat/channels/{type}/{id}/truncate: - post: + - Custom commands + put: description: | - Truncates channel - - Sends events: - - channel.truncated - - Required permissions: - - DeleteChannel - - TruncateChannel - operationId: TruncateChannel + Updates custom chat command + operationId: UpdateCommand parameters: - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "001.001" - - in: path - name: id + name: name required: true schema: + description: Unique command name + title: Name type: string writeOnly: true - x-stream-index: "001.002" + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/TruncateChannelRequest' + $ref: '#/components/schemas/UpdateCommandRequest' + description: Command required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/TruncateChannelResponse' + $ref: '#/components/schemas/UpdateCommandResponse' description: Successful response "400": content: @@ -13156,44 +14800,26 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Truncate channel + summary: Update command tags: - - Channels - /api/v2/chat/channels/{type}/{id}/unread: + - Custom commands + /api/v2/chat/export_channels: post: description: | - Marks channel as unread from a specific message - - Required permissions: - - ReadChannel - operationId: MarkUnread - parameters: - - in: path - name: type - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.001" - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "002.002" + Exports channel data to JSON file + operationId: ExportChannels requestBody: content: application/json: schema: - $ref: '#/components/schemas/MarkUnreadRequest' + $ref: '#/components/schemas/ExportChannelsRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/ExportChannelsResponse' description: Successful response "400": content: @@ -13207,45 +14833,30 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark unread + summary: Export channels tags: - Channels - - Messages - /api/v2/chat/channels/{type}/query: - post: - description: | - This Method creates a channel or returns an existing one with matching attributes + /api/v2/chat/export_channels/{id}: + get: + description: |2+ - Sends events: - - channel.created - - member.added - - member.removed - - member.updated - - user.watching.start - operationId: GetOrCreateChannel + operationId: GetExportChannelsStatus parameters: - in: path - name: type + name: id required: true schema: - description: Channel type - maxLength: 64 - title: Type + description: Task ID + title: ID type: string writeOnly: true - x-stream-index: "002" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelGetOrCreateRequest' - required: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/ChannelStateResponse' + $ref: '#/components/schemas/GetExportChannelsStatusResponse' description: Successful response "400": content: @@ -13259,32 +14870,31 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get or create channel + summary: Export channels status tags: - Channels - /api/v2/chat/channels/delete: - post: + /api/v2/chat/members: + get: description: | - Allows to delete several channels at once asynchronously - - Sends events: - - channel.deleted + Find and filter channel members Required permissions: - - DeleteChannel - operationId: DeleteChannels - requestBody: - content: + - ReadChannel + operationId: QueryMembers + parameters: + - content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelsRequest' - required: true + $ref: '#/components/schemas/QueryMembersRequest' + x-stream-index: "001" + in: query + name: payload responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/DeleteChannelsResponse' + $ref: '#/components/schemas/MembersResponse' description: Successful response "400": content: @@ -13298,33 +14908,50 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Deletes channels asynchronously + summary: Query members tags: - Channels - - GDPR - /api/v2/chat/channels/read: - post: + /api/v2/chat/messages/{id}: + delete: description: | - Marks channels as read up to the specific message. If no channels is given, mark all channel as read + Deletes message Sends events: - - message.read + - message.deleted Required permissions: - - ReadChannel - operationId: MarkChannelsRead - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MarkChannelsReadRequest' + - DeleteMessage + operationId: DeleteMessage + parameters: + - in: path + name: id required: true + schema: + description: Message ID to delete + title: ID + type: string + writeOnly: true + x-stream-index: "001" + - in: query + name: hard + schema: + description: Delete all message reactions and replies as well + title: Hard + type: boolean + writeOnly: true + x-stream-index: "002" + - in: query + name: deleted_by + schema: + type: string + writeOnly: true + x-stream-index: "003" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MarkReadResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -13338,21 +14965,38 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mark channels as read + summary: Delete message tags: - - Channels - Messages - /api/v2/chat/channeltypes: get: description: | - Lists all available channel types - operationId: ListChannelTypes + Returns message by ID + + Required permissions: + - ReadChannel + operationId: GetMessage + parameters: + - in: path + name: id + required: true + schema: + description: Message ID + title: ID + type: string + writeOnly: true + x-stream-index: "002" + - in: query + name: show_deleted_message + schema: + type: boolean + writeOnly: true + x-stream-index: "003" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/ListChannelTypesResponse' + $ref: '#/components/schemas/MessageWithPendingMetadataResponse' description: Successful response "400": content: @@ -13366,26 +15010,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: List channel types + summary: Get message tags: - - Settings - - Channel types + - Messages post: description: | - Creates new channel type - operationId: CreateChannelType + Updates message with new data + + Sends events: + - message.updated + + Required permissions: + - AddLinks + - PinMessage + - SkipMessageModeration + - UpdateMessage + operationId: UpdateMessage + parameters: + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "003.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/CreateChannelTypeRequest' + $ref: '#/components/schemas/UpdateMessageRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/CreateChannelTypeResponse' + $ref: '#/components/schemas/UpdateMessageResponse' description: Successful response "400": content: @@ -13399,68 +15059,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create channel type + summary: Update message tags: - - Settings - - Channel types - /api/v2/chat/channeltypes/{name}: - delete: + - Messages + put: description: | - Deletes channel type - operationId: DeleteChannelType + Updates certain fields of the message + + Sends events: + - message.updated + + Required permissions: + - AddLinks + - PinMessage + - SkipMessageModeration + - UpdateMessage + operationId: UpdateMessagePartial parameters: - in: path - name: name + name: id required: true schema: - description: Channel type name - title: Name type: string writeOnly: true - x-stream-index: "001" - responses: - "200": - content: - application/json: - schema: - $ref: '#/components/schemas/Response' - description: Successful response - "400": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Bad request - "429": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Too many requests - summary: Delete channel type - tags: - - Settings - - Channel types - get: - description: | - Gets channel type - operationId: GetChannelType - parameters: - - in: path - name: name + x-stream-index: "003.001" + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateMessagePartialRequest' required: true - schema: - description: Channel type name - title: Name - type: string - writeOnly: true - x-stream-index: "001" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/UpdateMessagePartialResponse' description: Successful response "400": content: @@ -13474,19 +15108,27 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get channel type + summary: Partially message update tags: - - Settings - - Channel types - put: + - Messages + /api/v2/chat/messages/{id}/action: + post: description: | - Updates channel type - operationId: UpdateChannelType + Executes message command action with given parameters + + Sends events: + - message.new + + Required permissions: + - RunMessageAction + operationId: RunMessageAction parameters: - in: path - name: name + name: id required: true schema: + description: Message ID + title: ID type: string writeOnly: true x-stream-index: "001" @@ -13494,14 +15136,14 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelTypeRequest' + $ref: '#/components/schemas/MessageActionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateChannelTypeResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -13515,21 +15157,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update channel type + summary: Run message command action tags: - - Settings - - Channel types - /api/v2/chat/commands: - get: + - Messages + /api/v2/chat/messages/{id}/commit: + post: description: | - Returns all custom commands - operationId: ListCommands + Commits a pending message, which will make it visible in the channel + + Sends events: + - message.new + - message.updated + operationId: CommitMessage + parameters: + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/ListCommandsResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -13543,26 +15196,42 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: List commands - tags: - - Custom commands + summary: Commit message + /api/v2/chat/messages/{id}/reaction: post: description: | - Creates custom chat command - operationId: CreateCommand + Sends reaction to specified message + + Sends events: + - reaction.new + - reaction.updated + + Required permissions: + - CreateReaction + - UseFrozenChannel + operationId: SendReaction + parameters: + - in: path + name: id + required: true + schema: + description: Message ID to send reaction for + title: ID + type: string + writeOnly: true + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/CreateCommandRequest' - description: Command + $ref: '#/components/schemas/SendReactionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/CreateCommandResponse' + $ref: '#/components/schemas/ReactionResponse' description: Successful response "400": content: @@ -13576,27 +15245,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Create command + summary: Send reaction tags: - - Custom commands - /api/v2/chat/commands/{name}: + - Messages + - Reactions + /api/v2/chat/messages/{id}/reaction/{type}: delete: description: | - Deletes custom chat command - operationId: DeleteCommand + Removes user reaction from the message + + Sends events: + - reaction.deleted + + Required permissions: + - DeleteReaction + operationId: DeleteReaction parameters: - in: path - name: name + name: id required: true schema: + description: Message ID to remove reaction from + title: ID type: string + writeOnly: true x-stream-index: "001" + - in: path + name: type + required: true + schema: + description: Reaction type to remove + title: Type + type: string + writeOnly: true + x-stream-index: "002" + - in: query + name: user_id + schema: + description: '**Server-side only**. User ID which server acts upon' + title: User ID + type: string + writeOnly: true + x-stream-index: "003" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/DeleteCommandResponse' + $ref: '#/components/schemas/ReactionRemovalResponse' description: Successful response "400": content: @@ -13610,26 +15306,52 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete command + summary: Delete reaction tags: - - Custom commands + - Messages + - Reactions + /api/v2/chat/messages/{id}/reactions: get: description: | - Returns custom command by its name - operationId: GetCommand + Returns list of reactions of specific message + + Required permissions: + - ReadChannel + operationId: GetReactions parameters: - in: path - name: name + name: id required: true schema: + description: Message ID + title: ID type: string + writeOnly: true x-stream-index: "001" + - in: query + name: limit + schema: + description: Number of records to return + format: int32 + title: Limit + type: integer + writeOnly: true + x-stream-index: "002" + - in: query + name: offset + schema: + description: Number of records to offset + format: int32 + title: Offset + type: integer + writeOnly: true + x-stream-index: "003" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/GetCommandResponse' + $ref: '#/components/schemas/GetReactionsResponse' description: Successful response "400": content: @@ -13643,36 +15365,43 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get command + summary: Get reactions tags: - - Custom commands - put: + - Messages + - Reactions + /api/v2/chat/messages/{id}/translate: + post: description: | - Updates custom chat command - operationId: UpdateCommand + Translates message to a given language using automated translation software + + Sends events: + - message.updated + + Required permissions: + - ReadChannel + operationId: TranslateMessage parameters: - in: path - name: name + name: id required: true schema: - description: Unique command name - title: Name + description: Message ID + title: ID type: string writeOnly: true - x-stream-index: "001" + x-stream-index: "001.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateCommandRequest' - description: Command + $ref: '#/components/schemas/TranslateMessageRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateCommandResponse' + $ref: '#/components/schemas/MessageResponse' description: Successful response "400": content: @@ -13686,26 +15415,37 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update command + summary: Translate message tags: - - Custom commands - /api/v2/chat/export_channels: + - Messages + /api/v2/chat/messages/{id}/undelete: post: description: | - Exports channel data to JSON file - operationId: ExportChannels + Undelete a message that was previously soft-deleted + + Sends events: + - message.undeleted + operationId: UndeleteMessage + parameters: + - in: path + name: id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "003.001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/ExportChannelsRequest' + $ref: '#/components/schemas/UpdateMessageRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ExportChannelsResponse' + $ref: '#/components/schemas/UpdateMessageResponse' description: Successful response "400": content: @@ -13719,68 +15459,47 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Export channels + summary: Undelete message tags: - - Channels - /api/v2/chat/export_channels/{id}: - get: - description: |2+ + - Messages + /api/v2/chat/messages/{message_id}/polls/{poll_id}/vote: + post: + description: | + Cast a vote on a poll - operationId: GetExportChannelsStatus + Sends events: + - poll.vote_casted + + Required permissions: + - CastVote + operationId: CastPollVote parameters: - in: path - name: id + name: message_id required: true schema: - description: Task ID - title: ID type: string writeOnly: true x-stream-index: "001" - responses: - "200": - content: - application/json: - schema: - $ref: '#/components/schemas/GetExportChannelsStatusResponse' - description: Successful response - "400": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Bad request - "429": - content: - application/json: - schema: - $ref: '#/components/schemas/APIError' - description: Too many requests - summary: Export channels status - tags: - - Channels - /api/v2/chat/members: - get: - description: | - Find and filter channel members - - Required permissions: - - ReadChannel - operationId: QueryMembers - parameters: - - content: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + requestBody: + content: application/json: schema: - $ref: '#/components/schemas/QueryMembersRequest' - x-stream-index: "001" - in: query - name: payload + $ref: '#/components/schemas/CastPollVoteRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/MembersResponse' + $ref: '#/components/schemas/PollVoteResponse' description: Successful response "400": content: @@ -13794,50 +15513,54 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query members + summary: Cast vote tags: - - Channels - /api/v2/chat/messages/{id}: + - Polls + /api/v2/chat/messages/{message_id}/polls/{poll_id}/vote/{vote_id}: delete: description: | - Deletes message + Delete a vote from a poll Sends events: - - message.deleted + - poll.vote_removed Required permissions: - - DeleteMessage - operationId: DeleteMessage + - CastVote + operationId: RemovePollVote parameters: - in: path - name: id + name: message_id + required: true + schema: + type: string + writeOnly: true + x-stream-index: "002" + - in: path + name: poll_id required: true schema: - description: Message ID to delete - title: ID + maxLength: 255 type: string - writeOnly: true - x-stream-index: "001" - - in: query - name: hard + x-stream-index: "003" + - in: path + name: vote_id + required: true schema: - description: Delete all message reactions and replies as well - title: Hard - type: boolean - writeOnly: true - x-stream-index: "002" + maxLength: 255 + type: string + x-stream-index: "004" - in: query - name: deleted_by + name: user_id schema: type: string writeOnly: true - x-stream-index: "003" + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/PollVoteResponse' description: Successful response "400": content: @@ -13851,38 +15574,88 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete message + summary: Delete vote tags: - - Messages + - Polls + /api/v2/chat/messages/{parent_id}/replies: get: description: | - Returns message by ID + Returns replies (thread) of the message Required permissions: - ReadChannel - operationId: GetMessage + operationId: GetReplies parameters: - in: path - name: id + name: parent_id required: true schema: - description: Message ID - title: ID + description: ID of a message which replies to return + title: Parent ID type: string writeOnly: true - x-stream-index: "002" + x-stream-index: "001" - in: query - name: show_deleted_message + name: id_gte schema: - type: boolean - writeOnly: true - x-stream-index: "003" + type: string + x-stream-index: 002.001.003 + - in: query + name: id_gt + schema: + type: string + x-stream-index: 002.001.004 + - in: query + name: id_lte + schema: + type: string + x-stream-index: 002.001.005 + - in: query + name: id_lt + schema: + type: string + x-stream-index: 002.001.006 + - in: query + name: created_at_after_or_equal + schema: + format: date-time + type: string + x-stream-index: 002.001.007 + - in: query + name: created_at_after + schema: + format: date-time + type: string + x-stream-index: 002.001.008 + - in: query + name: created_at_before_or_equal + schema: + format: date-time + type: string + x-stream-index: 002.001.009 + - in: query + name: created_at_before + schema: + format: date-time + type: string + x-stream-index: 002.001.010 + - in: query + name: id_around + schema: + type: string + x-stream-index: 002.001.011 + - in: query + name: created_at_around + schema: + format: date-time + type: string + x-stream-index: 002.001.012 responses: "200": content: application/json: schema: - $ref: '#/components/schemas/MessageWithPendingMetadataResponse' + $ref: '#/components/schemas/GetRepliesResponse' description: Successful response "400": content: @@ -13896,42 +15669,48 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get message + summary: Get replies tags: - Messages - post: + /api/v2/chat/moderation/ban: + delete: description: | - Updates message with new data + Removes previously applied ban Sends events: - - message.updated + - user.unbanned Required permissions: - - AddLinks - - PinMessage - - SkipMessageModeration - - UpdateMessage - operationId: UpdateMessage + - BanChannelMember + - BanUser + operationId: Unban parameters: - - in: path + - in: query + name: target_user_id + schema: + type: string + x-stream-index: "001" + - in: query + name: type + schema: + type: string + x-stream-index: "002" + - in: query name: id - required: true schema: type: string - writeOnly: true - x-stream-index: "003.001" - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateMessageRequest' - required: true + x-stream-index: "003" + - in: query + name: created_by + schema: + type: string + x-stream-index: "004" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -13945,42 +15724,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Update message + summary: Unban user tags: - - Messages - put: + - Users + - Moderation + post: description: | - Updates certain fields of the message + Restricts user activity either in specific channel or globally Sends events: - - message.updated + - user.banned Required permissions: - - AddLinks - - PinMessage - - SkipMessageModeration - - UpdateMessage - operationId: UpdateMessagePartial - parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "003.001" + - BanChannelMember + - BanUser + operationId: Ban requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateMessagePartialRequest' + $ref: '#/components/schemas/BanRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessagePartialResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -13994,42 +15764,35 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Partially message update + summary: Ban user tags: - - Messages - /api/v2/chat/messages/{id}/action: + - Users + - Moderation + /api/v2/chat/moderation/flag: post: description: | - Executes message command action with given parameters + Reports message or user for review by moderators Sends events: - - message.new + - message.flagged + - user.flagged Required permissions: - - RunMessageAction - operationId: RunMessageAction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001" + - FlagMessage + - FlagUser + operationId: Flag requestBody: content: application/json: schema: - $ref: '#/components/schemas/MessageActionRequest' + $ref: '#/components/schemas/FlagRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/FlagResponse' description: Successful response "400": content: @@ -14043,32 +15806,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Run message command action + summary: Flag tags: + - Moderation - Messages - /api/v2/chat/messages/{id}/commit: - post: + - Users + /api/v2/chat/moderation/flags/message: + get: description: | - Commits a pending message, which will make it visible in the channel + Find and filter message flags - Sends events: - - message.new - - message.updated - operationId: CommitMessage + Required permissions: + - ReadMessageFlags + operationId: QueryMessageFlags parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "001" + - content: + application/json: + schema: + $ref: '#/components/schemas/QueryMessageFlagsRequest' + x-stream-index: "001" + in: query + name: payload responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/QueryMessageFlagsResponse' description: Successful response "400": content: @@ -14082,42 +15846,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Commit message - /api/v2/chat/messages/{id}/reaction: + summary: Query Message Flags + tags: + - Messages + - Moderation + /api/v2/chat/moderation/mute: post: description: | - Sends reaction to specified message + Mutes one or several users - Sends events: - - reaction.new - - reaction.updated + Sends events: + - user.muted Required permissions: - - CreateReaction - - UseFrozenChannel - operationId: SendReaction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID to send reaction for - title: ID - type: string - writeOnly: true - x-stream-index: "001" + - MuteUser + operationId: MuteUser requestBody: content: application/json: schema: - $ref: '#/components/schemas/SendReactionRequest' + $ref: '#/components/schemas/MuteUserRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/ReactionResponse' + $ref: '#/components/schemas/MuteUserResponse' description: Successful response "400": content: @@ -14131,54 +15886,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Send reaction + summary: Mute user tags: - - Messages - - Reactions - /api/v2/chat/messages/{id}/reaction/{type}: - delete: + - Users + - Moderation + /api/v2/chat/moderation/mute/channel: + post: description: | - Removes user reaction from the message + Mutes channel for user Sends events: - - reaction.deleted + - channel.muted Required permissions: - - DeleteReaction - operationId: DeleteReaction - parameters: - - in: path - name: id - required: true - schema: - description: Message ID to remove reaction from - title: ID - type: string - writeOnly: true - x-stream-index: "001" - - in: path - name: type + - MuteChannel + operationId: MuteChannel + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/MuteChannelRequest' required: true - schema: - description: Reaction type to remove - title: Type - type: string - writeOnly: true - x-stream-index: "002" - - in: query - name: user_id - schema: - description: '**Server-side only**. User ID which server acts upon' - title: User ID - type: string - writeOnly: true - x-stream-index: "003" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/ReactionRemovalResponse' + $ref: '#/components/schemas/MuteChannelResponse' description: Successful response "400": content: @@ -14192,52 +15926,32 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Delete reaction + summary: Mute channel tags: - - Messages - - Reactions - /api/v2/chat/messages/{id}/reactions: - get: + - Channels + /api/v2/chat/moderation/unmute: + post: description: | - Returns list of reactions of specific message + Unmutes previously muted user + + Sends events: + - user.unmuted Required permissions: - - ReadChannel - operationId: GetReactions - parameters: - - in: path - name: id + - MuteUser + operationId: UnmuteUser + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UnmuteUserRequest' required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001" - - in: query - name: limit - schema: - description: Number of records to return - format: int32 - title: Limit - type: integer - writeOnly: true - x-stream-index: "002" - - in: query - name: offset - schema: - description: Number of records to offset - format: int32 - title: Offset - type: integer - writeOnly: true - x-stream-index: "003" responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetReactionsResponse' + $ref: '#/components/schemas/UnmuteResponse' description: Successful response "400": content: @@ -14251,43 +15965,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get reactions + summary: Unmute user tags: - - Messages - - Reactions - /api/v2/chat/messages/{id}/translate: + - Users + - Moderation + /api/v2/chat/moderation/unmute/channel: post: description: | - Translates message to a given language using automated translation software + Unmutes channel for user Sends events: - - message.updated + - channel.unmuted Required permissions: - - ReadChannel - operationId: TranslateMessage - parameters: - - in: path - name: id - required: true - schema: - description: Message ID - title: ID - type: string - writeOnly: true - x-stream-index: "001.001" + - MuteChannel + operationId: UnmuteChannel requestBody: content: application/json: schema: - $ref: '#/components/schemas/TranslateMessageRequest' + $ref: '#/components/schemas/UnmuteChannelRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/MessageResponse' + $ref: '#/components/schemas/UnmuteResponse' description: Successful response "400": content: @@ -14301,37 +16005,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Translate message + summary: Unmute channel tags: - - Messages - /api/v2/chat/messages/{id}/undelete: + - Channels + /api/v2/chat/polls: post: description: | - Undelete a message that was previously soft-deleted + Creates a new poll Sends events: - - message.undeleted - operationId: UndeleteMessage - parameters: - - in: path - name: id - required: true - schema: - type: string - writeOnly: true - x-stream-index: "003.001" + - poll.created + + Required permissions: + - CreatePoll + operationId: CreatePoll requestBody: content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageRequest' + $ref: '#/components/schemas/CreatePollRequest' + description: Create Poll Request required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UpdateMessageResponse' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -14345,88 +16045,31 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Undelete message + summary: Create poll tags: - - Messages - /api/v2/chat/messages/{parent_id}/replies: - get: + - Polls + put: description: | - Returns replies (thread) of the message + Updates a poll + + Sends events: + - poll.updated Required permissions: - - ReadChannel - operationId: GetReplies - parameters: - - in: path - name: parent_id - required: true - schema: - description: ID of a message which replies to return - title: Parent ID - type: string - writeOnly: true - x-stream-index: "001" - - in: query - name: id_gte - schema: - type: string - x-stream-index: 002.001.003 - - in: query - name: id_gt - schema: - type: string - x-stream-index: 002.001.004 - - in: query - name: id_lte - schema: - type: string - x-stream-index: 002.001.005 - - in: query - name: id_lt - schema: - type: string - x-stream-index: 002.001.006 - - in: query - name: created_at_after_or_equal - schema: - format: date-time - type: string - x-stream-index: 002.001.007 - - in: query - name: created_at_after - schema: - format: date-time - type: string - x-stream-index: 002.001.008 - - in: query - name: created_at_before_or_equal - schema: - format: date-time - type: string - x-stream-index: 002.001.009 - - in: query - name: created_at_before - schema: - format: date-time - type: string - x-stream-index: 002.001.010 - - in: query - name: id_around - schema: - type: string - x-stream-index: 002.001.011 - - in: query - name: created_at_around - schema: - format: date-time - type: string - x-stream-index: 002.001.012 + - UpdatePoll + operationId: UpdatePoll + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdatePollRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/GetRepliesResponse' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -14440,48 +16083,80 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Get replies + summary: Update poll tags: - - Messages - /api/v2/chat/moderation/ban: + - Polls + /api/v2/chat/polls/{poll_id}: delete: description: | - Removes previously applied ban + Deletes a poll Sends events: - - user.unbanned + - poll.deleted Required permissions: - - BanChannelMember - - BanUser - operationId: Unban + - DeletePoll + operationId: DeletePoll parameters: - - in: query - name: target_user_id + - in: path + name: poll_id + required: true schema: + maxLength: 255 type: string - x-stream-index: "001" + x-stream-index: "002" - in: query - name: type + name: user_id schema: type: string - x-stream-index: "002" - - in: query - name: id + writeOnly: true + x-stream-index: "001" + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + description: Successful response + "400": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Bad request + "429": + content: + application/json: + schema: + $ref: '#/components/schemas/APIError' + description: Too many requests + summary: Delete poll + tags: + - Polls + get: + description: | + Retrieves a poll + operationId: GetPoll + parameters: + - in: path + name: poll_id + required: true schema: + maxLength: 255 type: string - x-stream-index: "003" + x-stream-index: "002" - in: query - name: created_by + name: user_id schema: type: string - x-stream-index: "004" + writeOnly: true + x-stream-index: "001" responses: "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -14495,33 +16170,39 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unban user + summary: Get poll tags: - - Users - - Moderation - post: + - Polls + patch: description: | - Restricts user activity either in specific channel or globally + Updates a poll partially Sends events: - - user.banned + - poll.updated Required permissions: - - BanChannelMember - - BanUser - operationId: Ban + - UpdatePoll + operationId: UpdatePollPartial + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/BanRequest' + $ref: '#/components/schemas/UpdatePollPartialRequest' required: true responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/Response' + $ref: '#/components/schemas/PollResponse' description: Successful response "400": content: @@ -14535,35 +16216,41 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Ban user + summary: Partial update poll tags: - - Users - - Moderation - /api/v2/chat/moderation/flag: + - Polls + /api/v2/chat/polls/{poll_id}/options: post: description: | - Reports message or user for review by moderators + Creates a poll option Sends events: - - message.flagged - - user.flagged + - poll.updated Required permissions: - - FlagMessage - - FlagUser - operationId: Flag + - CastVote + - UpdatePoll + operationId: CreatePollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/FlagRequest' + $ref: '#/components/schemas/CreatePollOptionRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/FlagResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -14577,33 +16264,39 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Flag + summary: Create poll option tags: - - Moderation - - Messages - - Users - /api/v2/chat/moderation/flags/message: - get: + - Polls + put: description: | - Find and filter message flags + Updates a poll option + + Sends events: + - poll.updated Required permissions: - - ReadMessageFlags - operationId: QueryMessageFlags + - UpdatePoll + operationId: UpdatePollOption parameters: - - content: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "001" + requestBody: + content: application/json: schema: - $ref: '#/components/schemas/QueryMessageFlagsRequest' - x-stream-index: "001" - in: query - name: payload + $ref: '#/components/schemas/UpdatePollOptionRequest' + required: true responses: - "200": + "201": content: application/json: schema: - $ref: '#/components/schemas/QueryMessageFlagsResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -14617,33 +16310,47 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Query Message Flags + summary: Update poll option tags: - - Messages - - Moderation - /api/v2/chat/moderation/mute: - post: + - Polls + /api/v2/chat/polls/{poll_id}/options/{option_id}: + delete: description: | - Mutes one or several users + Deletes a poll option Sends events: - - user.muted + - poll.updated Required permissions: - - MuteUser - operationId: MuteUser - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MuteUserRequest' + - UpdatePoll + operationId: DeletePollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: path + name: option_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MuteUserResponse' + $ref: '#/components/schemas/Response' description: Successful response "400": content: @@ -14657,33 +16364,40 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mute user + summary: Delete poll option tags: - - Users - - Moderation - /api/v2/chat/moderation/mute/channel: - post: + - Polls + get: description: | - Mutes channel for user - - Sends events: - - channel.muted - - Required permissions: - - MuteChannel - operationId: MuteChannel - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MuteChannelRequest' + Retrieves a poll option + operationId: GetPollOption + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: path + name: option_id required: true + schema: + maxLength: 255 + type: string + x-stream-index: "003" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" responses: - "201": + "200": content: application/json: schema: - $ref: '#/components/schemas/MuteChannelResponse' + $ref: '#/components/schemas/PollOptionResponse' description: Successful response "400": content: @@ -14697,32 +16411,40 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Mute channel + summary: Get poll option tags: - - Channels - /api/v2/chat/moderation/unmute: + - Polls + /api/v2/chat/polls/{poll_id}/votes: post: description: | - Unmutes previously muted user - - Sends events: - - user.unmuted - - Required permissions: - - MuteUser - operationId: UnmuteUser + Queries votes + operationId: QueryPollVotes + parameters: + - in: path + name: poll_id + required: true + schema: + maxLength: 255 + type: string + x-stream-index: "002" + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UnmuteUserRequest' + $ref: '#/components/schemas/QueryPollVotesRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UnmuteResponse' + $ref: '#/components/schemas/PollVotesResponse' description: Successful response "400": content: @@ -14736,33 +16458,33 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unmute user + summary: Query votes tags: - - Users - - Moderation - /api/v2/chat/moderation/unmute/channel: + - Polls + /api/v2/chat/polls/query: post: description: | - Unmutes channel for user - - Sends events: - - channel.unmuted - - Required permissions: - - MuteChannel - operationId: UnmuteChannel + Queries polls + operationId: QueryPolls + parameters: + - in: query + name: user_id + schema: + type: string + writeOnly: true + x-stream-index: "001" requestBody: content: application/json: schema: - $ref: '#/components/schemas/UnmuteChannelRequest' + $ref: '#/components/schemas/QueryPollsRequest' required: true responses: "201": content: application/json: schema: - $ref: '#/components/schemas/UnmuteResponse' + $ref: '#/components/schemas/QueryPollsResponse' description: Successful response "400": content: @@ -14776,9 +16498,9 @@ paths: schema: $ref: '#/components/schemas/APIError' description: Too many requests - summary: Unmute channel + summary: Query polls tags: - - Channels + - Polls /api/v2/chat/query_banned_users: get: description: | diff --git a/openapi/video-openapi-clientside.json b/openapi/video-openapi-clientside.json index e5d3761a..07b24515 100644 --- a/openapi/video-openapi-clientside.json +++ b/openapi/video-openapi-clientside.json @@ -1 +1 @@ -{"components":{"schemas":{"APIError":{"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"AcceptCallRequest":{"nullable":true,"type":"object"},"AcceptCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AudioSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["default_device"],"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BackstageSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"BlockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to block","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"BlockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"BlockedUserEvent":{"description":"This event is sent to call participants to notify when a user is blocked on a call, clients can use this event to show a notification. \nIf the user is the current user, the client should leave the call screen as well","properties":{"blocked_by_user":{"$ref":"#/components/schemas/UserResponse","description":"The user that blocked the user, null if the user was blocked by server-side","title":"Blocked by","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.blocked_user","description":"The type of event: \"call.blocked_user\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that was blocked","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user"],"title":"BlockedUserEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"BroadcastSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsRequest","x-stream-index":"002"}},"type":"object"},"BroadcastSettingsResponse":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsResponse","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"CallAcceptedEvent":{"description":"This event is sent when a user accepts a notification to join a call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.accepted","description":"The type of event: \"call.accepted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who accepted the call","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call","user"],"title":"CallAcceptedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallClosedCaption":{"description":"CallClosedCaption represents a closed caption of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the closed caption.","type":"string","x-stream-index":"003"},"speaker_id":{"title":"The speaker ID of the closed caption.","type":"string","x-stream-index":"004"},"start_time":{"format":"date-time","title":"The start time of the closed caption.","type":"string","x-stream-index":"002"},"text":{"title":"The text of the closed caption.","type":"string","x-stream-index":"001"}},"required":["text","start_time","end_time","speaker_id"],"type":"object"},"CallCreatedEvent":{"description":"This event is sent when a call is created. Clients receiving this event should check if the ringing \nfield is set to true and if so, show the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the members added to this call","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.created","description":"The type of event: \"call.created\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallCreatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallDeletedEvent":{"description":"This event is sent when a call is deleted. Clients receiving this event should leave the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.deleted","description":"The type of event: \"call.deleted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call"],"title":"CallDeletedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallEndedEvent":{"description":"This event is sent when a call is mark as ended for all its participants. Clients receiving this event should leave the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.ended","description":"The type of event: \"call.ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who ended the call, null if the call was ended by the server","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call"],"title":"CallEndedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallEvent":{"nullable":true,"properties":{"description":{"type":"string","x-stream-index":"003"},"severity":{"format":"int32","type":"integer","x-stream-index":"002"},"timestamp":{"format":"int32","type":"integer","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"004"}},"required":["timestamp","severity","description","type"],"type":"object"},"CallHLSBroadcastingFailedEvent":{"description":"This event is sent when HLS broadcasting has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.hls_broadcasting_failed","description":"The type of event: \"call.hls_broadcasting_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallHLSBroadcastingFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallHLSBroadcastingStartedEvent":{"description":"This event is sent when HLS broadcasting has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"hls_playlist_url":{"type":"string","x-stream-index":"003"},"type":{"default":"call.hls_broadcasting_started","description":"The type of event: \"call.hls_broadcasting_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","hls_playlist_url"],"title":"CallHLSBroadcastingStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallHLSBroadcastingStoppedEvent":{"description":"This event is sent when HLS broadcasting has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.hls_broadcasting_stopped","description":"The type of event: \"call.hls_broadcasting_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallHLSBroadcastingStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallIngressResponse":{"properties":{"rtmp":{"$ref":"#/components/schemas/RTMPIngress","x-stream-index":"001"}},"required":["rtmp"],"title":"Call inputs","type":"object"},"CallLiveStartedEvent":{"description":"This event is sent when a call is started. Clients receiving this event should start the call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.live_started","description":"The type of event: \"call.live_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call"],"title":"CallLiveStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberAddedEvent":{"description":"This event is sent when one or more members are added to a call","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the members added to this call","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_added","description":"The type of event: \"call.member_added\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberAddedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberRemovedEvent":{"description":"This event is sent when one or more members are removed from a call","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the list of member IDs removed from the call","items":{"type":"string"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_removed","description":"The type of event: \"call.member_removed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberRemovedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberUpdatedEvent":{"description":"This event is sent when one or more members are updated","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"The list of members that were updated","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_updated","description":"The type of event: \"call.member_updated\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberUpdatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberUpdatedPermissionEvent":{"description":"This event is sent when one or more members get its role updated","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"capabilities_by_role":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"The capabilities by role for this call","title":"CapabilitiesByRole","type":"object","x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"The list of members that were updated","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"005"},"type":{"default":"call.member_updated_permission","description":"The type of event: \"call.member_added\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","capabilities_by_role","members"],"title":"CallMemberUpdatedPermissionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallNotificationEvent":{"description":"This event is sent to all call members to notify they are getting called","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"Call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"005"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.notification","description":"The type of event: \"call.notification\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that sent the call notification","title":"User","x-stream-index":"006"}},"required":["type","created_at","call_cid","session_id","call","members","user"],"title":"CallNotificationEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallParticipantResponse":{"properties":{"joined_at":{"format":"date-time","type":"string","x-stream-index":"004"},"role":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_session_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_session_id","role","joined_at"],"type":"object"},"CallReactionEvent":{"description":"This event is sent when a reaction is sent in a call, clients should use this to show the reaction in the call screen","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"reaction":{"$ref":"#/components/schemas/ReactionResponse","description":"the reaction object sent by the user on the call","title":"reaction","x-stream-index":"003"},"type":{"default":"call.reaction_new","description":"The type of event: \"call.reaction_new\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","reaction"],"title":"CallReactionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecording":{"description":"CallRecording represents a recording of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the recording.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the recording.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the recording.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the recording.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallRecordingFailedEvent":{"description":"This event is sent when call recording has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_failed","description":"The type of event: \"call.recording_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingReadyEvent":{"description":"This event is sent when call recording is ready","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"call_recording":{"$ref":"#/components/schemas/CallRecording","description":"The call recording object","title":"CallRecording","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_ready","description":"The type of event: \"call.recording_ready\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call_recording"],"title":"CallRecordingReadyEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingStartedEvent":{"description":"This event is sent when call recording has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_started","description":"The type of event: \"call.recording_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingStoppedEvent":{"description":"This event is sent when call recording has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_stopped","description":"The type of event: \"call.recording_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRejectedEvent":{"description":"This event is sent when a user rejects a notification to join a call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.rejected","description":"The type of event: \"call.rejected\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who rejected the call","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call","user"],"title":"CallRejectedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRequest":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"members":{"items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"type":"array","x-stream-index":"005"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"006"},"starts_at":{"format":"date-time","type":"string","x-stream-index":"007"},"team":{"type":"string","x-stream-index":"001"}},"type":"object"},"CallResponse":{"description":"Represents a call","properties":{"backstage":{"type":"boolean","x-stream-index":"015"},"blocked_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"017"},"cid":{"description":"The unique identifier for a call (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"004"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserResponse","description":"The user that created the call","title":"Created By","x-stream-index":"007"},"current_session_id":{"type":"string","x-stream-index":"005"},"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"008"},"egress":{"$ref":"#/components/schemas/EgressResponse","x-stream-index":"020"},"ended_at":{"description":"Date/time when the call ended","format":"date-time","title":"Ended At","type":"string","x-stream-index":"013"},"id":{"description":"Call ID","title":"ID","type":"string","x-stream-index":"003"},"ingress":{"$ref":"#/components/schemas/CallIngressResponse","x-stream-index":"018"},"recording":{"type":"boolean","x-stream-index":"011"},"session":{"$ref":"#/components/schemas/CallSessionResponse","x-stream-index":"019"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"016"},"starts_at":{"description":"Date/time when the call will start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"014"},"team":{"type":"string","x-stream-index":"006"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailResponse","x-stream-index":"021"},"transcribing":{"type":"boolean","x-stream-index":"012"},"type":{"description":"The type of call","title":"Type","type":"string","x-stream-index":"002"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"}},"required":["type","id","cid","current_session_id","created_by","custom","created_at","updated_at","recording","transcribing","backstage","settings","blocked_user_ids","ingress","egress"],"title":"Call","type":"object"},"CallRingEvent":{"description":"This event is sent to all call members to notify they are getting called","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"005"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"Call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"006"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.ring","description":"The type of event: \"call.notification\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that sent the call notification","title":"User","x-stream-index":"007"}},"required":["type","created_at","call_cid","session_id","call","members","user"],"title":"CallRingEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionEndedEvent":{"description":"This event is sent when a call session ends","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_ended","description":"The type of event: \"call.session_ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","call"],"title":"CallSessionEndedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionParticipantJoinedEvent":{"description":"This event is sent when a participant joins a call session","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"participant":{"$ref":"#/components/schemas/CallParticipantResponse","description":"The participant that joined the session","title":"Participant","x-stream-index":"004"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_participant_joined","description":"The type of event: \"call.session_participant_joined\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","participant"],"title":"CallSessionParticipantJoinedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionParticipantLeftEvent":{"description":"This event is sent when a participant leaves a call session","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"participant":{"$ref":"#/components/schemas/CallParticipantResponse","description":"The participant that left the session","title":"Participant","x-stream-index":"004"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_participant_left","description":"The type of event: \"call.session_participant_left\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","participant"],"title":"CallSessionParticipantLeftEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionResponse":{"properties":{"accepted_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"007"},"ended_at":{"format":"date-time","type":"string","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"live_ended_at":{"format":"date-time","type":"string","x-stream-index":"009"},"live_started_at":{"format":"date-time","type":"string","x-stream-index":"008"},"participants":{"items":{"$ref":"#/components/schemas/CallParticipantResponse"},"type":"array","x-stream-index":"004"},"participants_count_by_role":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"005"},"rejected_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"006"},"started_at":{"format":"date-time","type":"string","x-stream-index":"002"}},"required":["id","participants","participants_count_by_role","rejected_by","accepted_by"],"type":"object"},"CallSessionStartedEvent":{"description":"This event is sent when a call session starts","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_started","description":"The type of event: \"call.session_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","call"],"title":"CallSessionStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSettingsRequest":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettingsRequest","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettingsRequest","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsRequest","x-stream-index":"009"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettingsRequest","x-stream-index":"003"},"recording":{"$ref":"#/components/schemas/RecordSettingsRequest","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettingsRequest","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettingsRequest","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettingsRequest","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettingsRequest","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettingsRequest","x-stream-index":"004"}},"type":"object"},"CallSettingsResponse":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsResponse","x-stream-index":"003"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"004"},"recording":{"$ref":"#/components/schemas/RecordSettingsResponse","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"009"}},"required":["audio","backstage","broadcasting","geofencing","recording","ring","screensharing","transcription","video","thumbnails"],"type":"object"},"CallStateResponseFields":{"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"members":{"description":"List of call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"002"},"membership":{"$ref":"#/components/schemas/MemberResponse","description":"Current user membership object","title":"Membership","x-stream-index":"003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"004"}},"required":["call","members","own_capabilities"],"type":"object"},"CallStatsReportSummaryResponse":{"properties":{"call_cid":{"type":"string","x-stream-index":"001"},"call_session_id":{"type":"string","x-stream-index":"002"},"call_status":{"type":"string","x-stream-index":"004"},"first_stats_time":{"format":"date-time","type":"string","x-stream-index":"003"}},"required":["call_cid","call_session_id","first_stats_time","call_status"],"type":"object"},"CallTimeline":{"properties":{"events":{"items":{"$ref":"#/components/schemas/CallEvent"},"type":"array","x-stream-index":"001"}},"required":["events"],"type":"object"},"CallTranscription":{"description":"CallTranscription represents a transcription of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the transcription.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the transcription.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the transcription.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the transcription.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallTranscriptionFailedEvent":{"description":"This event is sent when call transcription has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_failed","description":"The type of event: \"call.transcription_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionReadyEvent":{"description":"This event is sent when call transcription is ready","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"call_transcription":{"$ref":"#/components/schemas/CallTranscription","description":"The call transcription object","title":"CallTranscription","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_ready","description":"The type of event: \"call.transcription_ready\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call_transcription"],"title":"CallTranscriptionReadyEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionStartedEvent":{"description":"This event is sent when call transcription has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_started","description":"The type of event: \"call.transcription_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionStoppedEvent":{"description":"This event is sent when call transcription has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_stopped","description":"The type of event: \"call.transcription_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallUpdatedEvent":{"description":"This event is sent when a call is updated, clients should use this update the local state of the call. \nThis event also contains the capabilities by role for the call, clients should update the own_capability for the current.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"capabilities_by_role":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"The capabilities by role for this call","title":"CapabilitiesByRole","type":"object","x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.updated","description":"The type of event: \"call.ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","capabilities_by_role"],"title":"CallUpdatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallUserMuted":{"description":"This event is sent when a call member is muted","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"from_user_id":{"type":"string","x-stream-index":"003"},"muted_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"type":{"default":"call.user_muted","description":"The type of event: \"call.user_muted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","from_user_id","muted_user_ids"],"title":"CallUserMuted","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ClosedCaptionEvent":{"description":"This event is sent when closed captions are being sent in a call, clients should use this to show the closed captions in the call screen","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"closed_caption":{"$ref":"#/components/schemas/CallClosedCaption","description":"The closed caption object","title":"CallClosedCaption","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.closed_caption","description":"The type of event: \"call.closed_caption\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","closed_caption"],"title":"ClosedCaptionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CollectUserFeedbackRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"009"},"rating":{"format":"int32","maximum":5,"minimum":1,"type":"integer","x-stream-index":"007"},"reason":{"maxLength":1000,"type":"string","x-stream-index":"008"},"sdk":{"maxLength":50,"type":"string","x-stream-index":"005"},"sdk_version":{"maxLength":50,"type":"string","x-stream-index":"006"},"user_session_id":{"maxLength":50,"type":"string","x-stream-index":"004"}},"required":["user_session_id","sdk","sdk_version"],"type":"object"},"CollectUserFeedbackResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ConnectUserDetailsRequest":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"id":{"type":"string","x-stream-index":"001"},"image":{"type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"ConnectedEvent":{"description":"This event is sent when the WS connection is established and authenticated, this event contains the full user object as it is stored on the server","properties":{"connection_id":{"description":"The connection_id for this client","title":"Connection ID","type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"me":{"$ref":"#/components/schemas/OwnUserResponse","description":"The full user object as it is stored on the server","title":"OwnUserResponse","x-stream-index":"003"},"type":{"default":"connection.ok","description":"The type of event: \"connection.ok\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","connection_id","me"],"title":"ConnectedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ConnectionErrorEvent":{"description":"This event is sent when the WS connection fails","properties":{"connection_id":{"type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"error":{"$ref":"#/components/schemas/APIError","description":"The error that caused the connection to fail","title":"Error","x-stream-index":"003"},"type":{"default":"connection.error","description":"The type of event: \"connection.ok\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","connection_id","error"],"title":"ConnectionErrorEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Coordinates":{"properties":{"latitude":{"format":"float","type":"number","x-stream-index":"001"},"longitude":{"format":"float","type":"number","x-stream-index":"002"}},"required":["latitude","longitude"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreateGuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"CreateGuestResponse":{"nullable":true,"properties":{"access_token":{"description":"the access token to authenticate the user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserResponse","title":"User","x-stream-index":"001"}},"required":["user","access_token","duration"],"type":"object"},"Credentials":{"properties":{"ice_servers":{"items":{"$ref":"#/components/schemas/ICEServer"},"type":"array","x-stream-index":"003"},"server":{"$ref":"#/components/schemas/SFUResponse","x-stream-index":"001"},"token":{"type":"string","x-stream-index":"002"}},"required":["server","token","ice_servers"],"type":"object"},"Device":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"disabled":{"description":"Whether device is disabled or not","title":"Disabled","type":"boolean","x-stream-index":"005"},"disabled_reason":{"description":"Reason explaining why device had been disabled","title":"Reason","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"003"},"push_provider":{"type":"string","x-stream-index":"001"},"push_provider_name":{"type":"string","x-stream-index":"002"},"voip":{"description":"When true the token is for Apple VoIP push notifications","title":"Voip","type":"boolean","x-stream-index":"007"}},"required":["push_provider","id","created_at"],"title":"Device","type":"object"},"EdgeResponse":{"properties":{"continent_code":{"type":"string","x-stream-index":"007.003"},"country_iso_code":{"type":"string","x-stream-index":"007.002"},"green":{"format":"int32","type":"integer","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"latency_test_url":{"type":"string","x-stream-index":"002"},"latitude":{"format":"float","type":"number","x-stream-index":"006.001"},"longitude":{"format":"float","type":"number","x-stream-index":"006.002"},"red":{"format":"int32","type":"integer","x-stream-index":"005"},"subdivision_iso_code":{"type":"string","x-stream-index":"007.001"},"yellow":{"format":"int32","type":"integer","x-stream-index":"004"}},"required":["id","latency_test_url","green","yellow","red","latitude","longitude","subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"EgressHLSResponse":{"properties":{"playlist_url":{"type":"string","x-stream-index":"001"}},"required":["playlist_url"],"type":"object"},"EgressRTMPResponse":{"properties":{"name":{"type":"string","x-stream-index":"001"},"stream_key":{"type":"string","x-stream-index":"003"},"url":{"type":"string","x-stream-index":"002"}},"required":["name","url","stream_key"],"type":"object"},"EgressResponse":{"properties":{"broadcasting":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/EgressHLSResponse","x-stream-index":"002"},"rtmps":{"items":{"$ref":"#/components/schemas/EgressRTMPResponse"},"type":"array","x-stream-index":"003"}},"required":["broadcasting","rtmps"],"type":"object"},"EndCallRequest":{"nullable":true,"type":"object"},"EndCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GeofenceSettingsRequest":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"type":"object"},"GetCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"type":"object"},"GetCallStatsResponse":{"nullable":true,"properties":{"average_jitter":{"format":"float","type":"number","x-stream-index":"005"},"average_latency":{"format":"float","type":"number","x-stream-index":"004"},"call_duration_seconds":{"format":"int64","type":"integer","x-stream-index":"002"},"call_timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"012"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"max_participants":{"format":"int32","type":"integer","x-stream-index":"006"},"participant_report":{"additionalProperties":{"$ref":"#/components/schemas/UserStats"},"type":"object","x-stream-index":"013"},"publishing_participants":{"format":"int32","type":"integer","x-stream-index":"007"},"quality_score":{"format":"int32","type":"integer","x-stream-index":"003"},"sfu_count":{"format":"int32","type":"integer","x-stream-index":"008"},"sfus":{"items":{"$ref":"#/components/schemas/SFULocationResponse"},"type":"array","x-stream-index":"011"},"total_freezes_duration":{"format":"float","type":"number","x-stream-index":"010"},"total_quality_limitation_duration":{"format":"float","type":"number","x-stream-index":"009"}},"required":["duration","call_duration_seconds","quality_score","average_latency","average_jitter","max_participants","publishing_participants","sfu_count","total_quality_limitation_duration","total_freezes_duration","sfus","participant_report"],"type":"object"},"GetEdgesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"edges":{"items":{"$ref":"#/components/schemas/EdgeResponse"},"type":"array","x-stream-index":"001"}},"required":["edges","duration"],"type":"object"},"GetOrCreateCallRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/CallRequest","title":"ReadOnlyData","x-stream-index":"003"},"members_limit":{"format":"int32","maximum":100,"type":"integer","x-stream-index":"006"},"notify":{"description":"if provided it sends a notification event to the members for this call","title":"Notify","type":"boolean","x-stream-index":"005"},"ring":{"description":"if provided it sends a ring event to the members for this call","title":"Ring","type":"boolean","x-stream-index":"004"}},"type":"object"},"GetOrCreateCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"type":"boolean","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","created","duration"],"type":"object"},"GoLiveRequest":{"nullable":true,"properties":{"recording_storage_name":{"type":"string","x-stream-index":"005"},"start_hls":{"type":"boolean","x-stream-index":"003"},"start_recording":{"type":"boolean","x-stream-index":"004"},"start_transcription":{"type":"boolean","x-stream-index":"007"},"transcription_storage_name":{"type":"string","x-stream-index":"006"}},"type":"object"},"GoLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"HLSSettingsRequest":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"quality_tracks":{"items":{"type":"string"},"maximum":3,"minimum":1,"type":"array","x-stream-index":"003"}},"type":"object"},"HLSSettingsResponse":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks","layout"],"type":"object"},"ICEServer":{"properties":{"password":{"type":"string","x-stream-index":"003"},"urls":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"username":{"type":"string","x-stream-index":"002"}},"required":["urls","username","password"],"type":"object"},"JoinCallRequest":{"nullable":true,"properties":{"create":{"description":"if true the call will be created if it doesn't exist","title":"Create","type":"boolean","x-stream-index":"002"},"data":{"$ref":"#/components/schemas/CallRequest","x-stream-index":"003"},"location":{"title":"Location","type":"string","x-stream-index":"008"},"members_limit":{"format":"int32","maximum":100,"title":"The amount of members that should be returned","type":"integer","x-stream-index":"006"},"migrating_from":{"description":"If the participant is migrating from another SFU, then this is the ID of the previous SFU","title":"MigratingFrom","type":"string","x-stream-index":"009"},"notify":{"type":"boolean","x-stream-index":"005"},"ring":{"description":"if true and the call is created, the notification will include ring=true","title":"Ring","type":"boolean","x-stream-index":"004"}},"required":["location"],"type":"object"},"JoinCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"title":"Created","type":"boolean","x-stream-index":"002"},"credentials":{"$ref":"#/components/schemas/Credentials","title":"Credentials","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"005.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"},"stats_options":{"$ref":"#/components/schemas/StatsOptions","x-stream-index":"004"}},"required":["call","members","own_capabilities","created","credentials","stats_options","duration"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListRecordingsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"recordings":{"items":{"$ref":"#/components/schemas/CallRecording"},"type":"array","x-stream-index":"002"}},"required":["duration","recordings"],"type":"object"},"ListTranscriptionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"transcriptions":{"items":{"$ref":"#/components/schemas/CallTranscription"},"type":"array","x-stream-index":"002"}},"required":["duration","transcriptions"],"type":"object"},"Location":{"properties":{"continent_code":{"type":"string","x-stream-index":"003"},"country_iso_code":{"type":"string","x-stream-index":"002"},"subdivision_iso_code":{"type":"string","x-stream-index":"001"}},"required":["subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"MemberRequest":{"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"role":{"title":"Role","type":"string","x-stream-index":"002"},"user_id":{"minLength":1,"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"MemberResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"005"},"custom":{"description":"Custom member response data","title":"Custom","type":"object","x-stream-index":"004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"007"},"role":{"title":"Role","type":"string","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_id","custom","created_at","updated_at"],"type":"object"},"MuteUsersRequest":{"nullable":true,"properties":{"audio":{"title":"Audio","type":"boolean","x-stream-index":"005"},"mute_all_users":{"type":"boolean","x-stream-index":"003"},"screenshare":{"title":"Screenshare","type":"boolean","x-stream-index":"007"},"screenshare_audio":{"title":"ScreenshareAudio","type":"boolean","x-stream-index":"008"},"user_ids":{"items":{"type":"string"},"title":"UserIDs","type":"array","x-stream-index":"004"},"video":{"title":"Video","type":"boolean","x-stream-index":"006"}},"type":"object"},"MuteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"OwnCapability":{"description":"All possibility of string to use","enum":["block-users","create-call","create-reaction","end-call","join-backstage","join-call","join-ended-call","mute-users","pin-for-everyone","read-call","remove-call-member","screenshare","send-audio","send-video","start-broadcast-call","start-record-call","start-transcription-call","stop-broadcast-call","stop-record-call","stop-transcription-call","update-call","update-call-member","update-call-permissions","update-call-settings"],"title":"OwnCapability","type":"string"},"OwnUserResponse":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.004"},"custom":{"type":"object","x-stream-index":"001.001.004"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.006"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001.001.001"},"image":{"type":"string","x-stream-index":"001.001.003"},"language":{"type":"string","x-stream-index":"001.001.005"},"name":{"type":"string","x-stream-index":"001.001.002"},"role":{"type":"string","x-stream-index":"001.002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.005"}},"required":["id","custom","language","role","teams","created_at","updated_at","devices"],"type":"object"},"PermissionRequestEvent":{"description":"This event is sent when a user requests access to a feature on a call,\nclients receiving this event should display a permission request to the user","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"permissions":{"description":"The list of permissions requested by the user","items":{"type":"string"},"title":"Permissions","type":"array","x-stream-index":"004"},"type":{"default":"call.permission_request","description":"The type of event: \"call.permission_request\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who sent the permission request","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user","permissions"],"title":"PermissionRequestEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"PinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"QueryCallStatsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"002"}},"type":"object"},"QueryCallStatsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"next":{"type":"string","x-stream-index":"003.001"},"prev":{"type":"string","x-stream-index":"003.002"},"reports":{"items":{"$ref":"#/components/schemas/CallStatsReportSummaryResponse"},"type":"array","x-stream-index":"001"}},"required":["reports","duration"],"type":"object"},"QueryCallsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"006.001"},"next":{"type":"string","x-stream-index":"006.002"},"prev":{"type":"string","x-stream-index":"006.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"004"},"watch":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryCallsResponse":{"nullable":true,"properties":{"calls":{"items":{"$ref":"#/components/schemas/CallStateResponseFields"},"title":"Calls","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["calls","duration"],"type":"object"},"QueryMembersRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"002"},"id":{"maxLength":64,"type":"string","x-stream-index":"001.002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":1,"type":"array","x-stream-index":"003"},"type":{"maxLength":64,"type":"string","x-stream-index":"001.001"}},"required":["type","id"],"type":"object"},"QueryMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["members","duration"],"type":"object"},"RTMPIngress":{"description":"RTMP input settings","properties":{"address":{"type":"string","x-stream-index":"001"}},"required":["address"],"title":"RTMP Ingress","type":"object"},"ReactionResponse":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"emoji_code":{"type":"string","x-stream-index":"003"},"type":{"type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"}},"required":["user","type"],"type":"object"},"RecordSettingsRequest":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"002"},"quality":{"enum":["360p","480p","720p","1080p","1440p"],"type":"string","x-stream-index":"003"}},"required":["mode"],"type":"object"},"RecordSettingsResponse":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality","layout"],"type":"object"},"RejectCallRequest":{"nullable":true,"type":"object"},"RejectCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"RequestPermissionRequest":{"nullable":true,"properties":{"permissions":{"items":{"type":"string"},"title":"Permissions","type":"array","x-stream-index":"003"}},"required":["permissions"],"type":"object"},"RequestPermissionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"RingSettingsRequest":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"001"}},"type":"object"},"SFULocationResponse":{"properties":{"coordinates":{"$ref":"#/components/schemas/Coordinates","x-stream-index":"004"},"datacenter":{"type":"string","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001"},"location":{"$ref":"#/components/schemas/Location","x-stream-index":"003"}},"required":["id","datacenter","location","coordinates"],"type":"object"},"SFUResponse":{"properties":{"edge_name":{"type":"string","x-stream-index":"001"},"url":{"type":"string","x-stream-index":"002"},"ws_endpoint":{"type":"string","x-stream-index":"003"}},"required":["edge_name","url","ws_endpoint"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"ScreensharingSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"}},"type":"object"},"SendEventResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003.003"},"emoji_code":{"type":"string","x-stream-index":"003.002"},"type":{"maxLength":64,"type":"string","x-stream-index":"003.001"}},"required":["type"],"type":"object"},"SendReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"reaction":{"$ref":"#/components/schemas/ReactionResponse","x-stream-index":"001"}},"required":["reaction","duration"],"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StartHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StartHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"playlist_url":{"type":"string","x-stream-index":"002"}},"required":["duration","playlist_url"],"type":"object"},"StartRecordingRequest":{"nullable":true,"properties":{"recording_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartRecordingResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StartTranscriptionRequest":{"nullable":true,"properties":{"transcription_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartTranscriptionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Stats":{"properties":{"average_seconds":{"format":"float","type":"number","x-stream-index":"001"},"max_seconds":{"format":"float","type":"number","x-stream-index":"002"}},"required":["average_seconds","max_seconds"],"type":"object"},"StatsOptions":{"properties":{"reporting_interval_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["reporting_interval_ms"],"type":"object"},"StopHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StopHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopLiveRequest":{"nullable":true,"type":"object"},"StopLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"StopRecordingRequest":{"nullable":true,"type":"object"},"StopRecordingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopTranscriptionRequest":{"nullable":true,"type":"object"},"StopTranscriptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"TargetResolutionRequest":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"type":"object"},"ThumbnailResponse":{"properties":{"image_url":{"type":"string","x-stream-index":"001"}},"required":["image_url"],"type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"ThumbnailsSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranscriptionSettingsRequest":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"UnblockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to unblock","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"UnblockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnblockedUserEvent":{"description":"This event is sent when a user is unblocked on a call, \nthis can be useful to notify the user that they can now join the call again","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.unblocked_user","description":"The type of event: \"call.unblocked_user\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that was unblocked","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user"],"title":"UnblockedUserEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UnpinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"UnpinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdateCallMembersRequest":{"nullable":true,"properties":{"remove_members":{"description":"List of userID to remove","items":{"type":"string"},"maximum":100,"title":"Remove Members","type":"array","x-stream-index":"003"},"update_members":{"description":"List of members to update or insert","items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"title":"Update Members","type":"array","x-stream-index":"004"}},"type":"object"},"UpdateCallMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"002"}},"required":["duration","members"],"type":"object"},"UpdateCallRequest":{"nullable":true,"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","description":"the settings to change for this call","title":"Settings Override","x-stream-index":"004"},"starts_at":{"description":"the time the call is scheduled to start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"005"}},"type":"object"},"UpdateCallResponse":{"description":"Represents a call","nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"title":"Call","type":"object"},"UpdateUserPermissionsRequest":{"nullable":true,"properties":{"grant_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"revoke_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"UpdateUserPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdatedCallPermissionsEvent":{"description":"This event is sent to notify about permission changes for a user, clients receiving this event should update their UI accordingly","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"own_capabilities":{"description":"The capabilities of the current user","items":{"$ref":"#/components/schemas/OwnCapability"},"title":"Own capabilities","type":"array","x-stream-index":"004"},"type":{"default":"call.permissions_updated","description":"The type of event: \"call.permissions_updated\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who received the new permissions","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user","own_capabilities"],"title":"UpdatedCallPermissionsEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserInfoResponse":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"image":{"type":"string","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"004"}},"required":["name","image","custom","roles"],"type":"object"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"UserResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"001.004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"001.001"},"image":{"type":"string","x-stream-index":"001.003"},"language":{"type":"string","x-stream-index":"001.005"},"name":{"type":"string","x-stream-index":"001.002"},"role":{"type":"string","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"}},"required":["id","custom","language","role","teams","created_at","updated_at"],"type":"object"},"UserSessionStats":{"properties":{"freeze_duration_seconds":{"format":"float","type":"number","x-stream-index":"009"},"jitter":{"$ref":"#/components/schemas/Stats","x-stream-index":"006"},"latency":{"$ref":"#/components/schemas/Stats","x-stream-index":"007"},"os":{"type":"string","x-stream-index":"002"},"packet_loss_fraction":{"format":"float","type":"number","x-stream-index":"010"},"quality_score":{"format":"float","type":"number","x-stream-index":"008"},"sdk":{"type":"string","x-stream-index":"004"},"sdk_version":{"type":"string","x-stream-index":"005"},"timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"001"},"webrtc_version":{"type":"string","x-stream-index":"003"}},"required":["os","webrtc_version","sdk","sdk_version","quality_score","freeze_duration_seconds","packet_loss_fraction"],"type":"object"},"UserStats":{"properties":{"info":{"$ref":"#/components/schemas/UserInfoResponse","x-stream-index":"001"},"session_stats":{"additionalProperties":{"$ref":"#/components/schemas/UserSessionStats"},"type":"object","x-stream-index":"002"}},"required":["info","session_stats"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VideoSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolutionRequest","x-stream-index":"003"}},"type":"object"},"WSAuthMessageRequest":{"nullable":true,"properties":{"token":{"title":"Token","type":"string","x-stream-index":"002"},"user_details":{"$ref":"#/components/schemas/ConnectUserDetailsRequest","x-stream-index":"001"}},"required":["user_details","token"],"type":"object"},"WSEvent":{"description":"The discriminator object for all websocket events, it maps events' payload to the final type","discriminator":{"mapping":{"call.accepted":"#/components/schemas/CallAcceptedEvent","call.blocked_user":"#/components/schemas/BlockedUserEvent","call.closed_caption":"#/components/schemas/ClosedCaptionEvent","call.created":"#/components/schemas/CallCreatedEvent","call.deleted":"#/components/schemas/CallDeletedEvent","call.ended":"#/components/schemas/CallEndedEvent","call.hls_broadcasting_failed":"#/components/schemas/CallHLSBroadcastingFailedEvent","call.hls_broadcasting_started":"#/components/schemas/CallHLSBroadcastingStartedEvent","call.hls_broadcasting_stopped":"#/components/schemas/CallHLSBroadcastingStoppedEvent","call.live_started":"#/components/schemas/CallLiveStartedEvent","call.member_added":"#/components/schemas/CallMemberAddedEvent","call.member_removed":"#/components/schemas/CallMemberRemovedEvent","call.member_updated":"#/components/schemas/CallMemberUpdatedEvent","call.member_updated_permission":"#/components/schemas/CallMemberUpdatedPermissionEvent","call.notification":"#/components/schemas/CallNotificationEvent","call.permission_request":"#/components/schemas/PermissionRequestEvent","call.permissions_updated":"#/components/schemas/UpdatedCallPermissionsEvent","call.reaction_new":"#/components/schemas/CallReactionEvent","call.recording_failed":"#/components/schemas/CallRecordingFailedEvent","call.recording_ready":"#/components/schemas/CallRecordingReadyEvent","call.recording_started":"#/components/schemas/CallRecordingStartedEvent","call.recording_stopped":"#/components/schemas/CallRecordingStoppedEvent","call.rejected":"#/components/schemas/CallRejectedEvent","call.ring":"#/components/schemas/CallRingEvent","call.session_ended":"#/components/schemas/CallSessionEndedEvent","call.session_participant_joined":"#/components/schemas/CallSessionParticipantJoinedEvent","call.session_participant_left":"#/components/schemas/CallSessionParticipantLeftEvent","call.session_started":"#/components/schemas/CallSessionStartedEvent","call.transcription_failed":"#/components/schemas/CallTranscriptionFailedEvent","call.transcription_ready":"#/components/schemas/CallTranscriptionReadyEvent","call.transcription_started":"#/components/schemas/CallTranscriptionStartedEvent","call.transcription_stopped":"#/components/schemas/CallTranscriptionStoppedEvent","call.unblocked_user":"#/components/schemas/UnblockedUserEvent","call.updated":"#/components/schemas/CallUpdatedEvent","call.user_muted":"#/components/schemas/CallUserMuted","connection.error":"#/components/schemas/ConnectionErrorEvent","connection.ok":"#/components/schemas/ConnectedEvent"},"propertyName":"type"},"oneOf":[{"$ref":"#/components/schemas/BlockedUserEvent"},{"$ref":"#/components/schemas/CallAcceptedEvent"},{"$ref":"#/components/schemas/CallCreatedEvent"},{"$ref":"#/components/schemas/CallDeletedEvent"},{"$ref":"#/components/schemas/CallEndedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingFailedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingStartedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingStoppedEvent"},{"$ref":"#/components/schemas/CallLiveStartedEvent"},{"$ref":"#/components/schemas/CallMemberAddedEvent"},{"$ref":"#/components/schemas/CallMemberRemovedEvent"},{"$ref":"#/components/schemas/CallMemberUpdatedEvent"},{"$ref":"#/components/schemas/CallMemberUpdatedPermissionEvent"},{"$ref":"#/components/schemas/CallNotificationEvent"},{"$ref":"#/components/schemas/CallReactionEvent"},{"$ref":"#/components/schemas/CallRecordingFailedEvent"},{"$ref":"#/components/schemas/CallRecordingReadyEvent"},{"$ref":"#/components/schemas/CallRecordingStartedEvent"},{"$ref":"#/components/schemas/CallRecordingStoppedEvent"},{"$ref":"#/components/schemas/CallRejectedEvent"},{"$ref":"#/components/schemas/CallRingEvent"},{"$ref":"#/components/schemas/CallSessionEndedEvent"},{"$ref":"#/components/schemas/CallSessionParticipantJoinedEvent"},{"$ref":"#/components/schemas/CallSessionParticipantLeftEvent"},{"$ref":"#/components/schemas/CallSessionStartedEvent"},{"$ref":"#/components/schemas/CallTranscriptionFailedEvent"},{"$ref":"#/components/schemas/CallTranscriptionReadyEvent"},{"$ref":"#/components/schemas/CallTranscriptionStartedEvent"},{"$ref":"#/components/schemas/CallTranscriptionStoppedEvent"},{"$ref":"#/components/schemas/CallUpdatedEvent"},{"$ref":"#/components/schemas/CallUserMuted"},{"$ref":"#/components/schemas/ClosedCaptionEvent"},{"$ref":"#/components/schemas/ConnectedEvent"},{"$ref":"#/components/schemas/ConnectionErrorEvent"},{"$ref":"#/components/schemas/PermissionRequestEvent"},{"$ref":"#/components/schemas/UnblockedUserEvent"},{"$ref":"#/components/schemas/UpdatedCallPermissionsEvent"}]}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v104.0.1"},"openapi":"3.0.3","paths":{"/video/call/members":{"post":{"description":"Query call members with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryMembers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call members"}},"/video/call/stats":{"post":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"QueryCallStats","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Call Stats"}},"/video/call/{type}/{id}":{"get":{"description":"\n\nRequired permissions:\n- ReadCall\n","operationId":"GetCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"members_limit","schema":{"format":"int32","maximum":100,"minimum":0,"type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"ring","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"005"}},{"in":"query","name":"notify","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"006"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call"},"patch":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"UpdateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallResponse"}}},"description":"Call"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call"},"post":{"description":"Gets or creates a new call\n\nSends events:\n- call.created\n- call.notification\n- call.ring\n\nRequired permissions:\n- CreateCall\n- ReadCall\n- UpdateCallSettings\n","operationId":"GetOrCreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create a call"}},"/video/call/{type}/{id}/accept":{"post":{"description":"\n\nSends events:\n- call.accepted\n\nRequired permissions:\n- JoinCall\n","operationId":"AcceptCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AcceptCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Accept Call"}},"/video/call/{type}/{id}/block":{"post":{"description":"Block a user, preventing them from joining the call until they are unblocked.\n\nSends events:\n- call.blocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"BlockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Block user on a call"}},"/video/call/{type}/{id}/event":{"post":{"description":"Sends custom event to the call\n\nSends events:\n- custom\n\nRequired permissions:\n- SendEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send custom event"}},"/video/call/{type}/{id}/feedback/{session}":{"post":{"description":"\n\nRequired permissions:\n- JoinCall\n","operationId":"CollectUserFeedback","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Collect user feedback"}},"/video/call/{type}/{id}/go_live":{"post":{"description":"\n\nSends events:\n- call.live_started\n\nRequired permissions:\n- UpdateCall\n","operationId":"GoLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as live"}},"/video/call/{type}/{id}/join":{"post":{"description":"Request to join a call\n\nRequired permissions:\n- CreateCall\n- JoinCall\n","operationId":"JoinCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"title":"ConnectionID","type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Join call"}},"/video/call/{type}/{id}/mark_ended":{"post":{"description":"\n\nSends events:\n- call.ended\n\nRequired permissions:\n- EndCall\n","operationId":"EndCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"End call"}},"/video/call/{type}/{id}/members":{"post":{"description":"\n\nSends events:\n- call.member_added\n- call.member_removed\n- call.member_updated\n\nRequired permissions:\n- RemoveCallMember\n- UpdateCallMember\n- UpdateCallMemberRole\n","operationId":"UpdateCallMembers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Member"}},"/video/call/{type}/{id}/mute_users":{"post":{"description":"Mutes users in a call\n\nRequired permissions:\n- MuteUsers\n","operationId":"MuteUsers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute users"}},"/video/call/{type}/{id}/pin":{"post":{"description":"Pins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoPin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Pin"}},"/video/call/{type}/{id}/reaction":{"post":{"description":"Sends reaction to the call\n\nSends events:\n- call.reaction_new\n\nRequired permissions:\n- CreateCallReaction\n","operationId":"SendVideoReaction","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction to the call"}},"/video/call/{type}/{id}/recordings":{"get":{"description":"Lists recordings\n\nRequired permissions:\n- ListRecordings\n","operationId":"ListRecordings","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRecordingsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List recordings"}},"/video/call/{type}/{id}/reject":{"post":{"description":"\n\nSends events:\n- call.rejected\n\nRequired permissions:\n- JoinCall\n","operationId":"RejectCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RejectCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reject Call"}},"/video/call/{type}/{id}/request_permission":{"post":{"description":"Request permission to perform an action\n\nSends events:\n- call.permission_request\n","operationId":"RequestPermission","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestPermissionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestPermissionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Request permission"}},"/video/call/{type}/{id}/start_broadcasting":{"post":{"description":"Starts HLS broadcasting\n\nRequired permissions:\n- StartBroadcasting\n","operationId":"StartHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start HLS broadcasting"}},"/video/call/{type}/{id}/start_recording":{"post":{"description":"Starts recording\n\nSends events:\n- call.recording_started\n\nRequired permissions:\n- StartRecording\n","operationId":"StartRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start recording"}},"/video/call/{type}/{id}/start_transcription":{"post":{"description":"Starts transcription\n\nRequired permissions:\n- StartTranscription\n","operationId":"StartTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start transcription"}},"/video/call/{type}/{id}/stats/{session}":{"get":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"GetCallStats","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Stats"}},"/video/call/{type}/{id}/stop_broadcasting":{"post":{"description":"Stops HLS broadcasting\n\nRequired permissions:\n- StopBroadcasting\n","operationId":"StopHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop HLS broadcasting"}},"/video/call/{type}/{id}/stop_live":{"post":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"StopLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as not live"}},"/video/call/{type}/{id}/stop_recording":{"post":{"description":"Stops recording\n\nSends events:\n- call.recording_stopped\n\nRequired permissions:\n- StopRecording\n","operationId":"StopRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop recording"}},"/video/call/{type}/{id}/stop_transcription":{"post":{"description":"Stops transcription\n\nSends events:\n- call.transcription_stopped\n\nRequired permissions:\n- StopTranscription\n","operationId":"StopTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop transcription"}},"/video/call/{type}/{id}/transcriptions":{"get":{"description":"Lists transcriptions\n\nRequired permissions:\n- ListTranscriptions\n","operationId":"ListTranscriptions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTranscriptionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List transcriptions"}},"/video/call/{type}/{id}/unblock":{"post":{"description":"Removes the block for a user on a call. The user will be able to join the call again.\n\nSends events:\n- call.unblocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"UnblockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unblocks user on a call"}},"/video/call/{type}/{id}/unpin":{"post":{"description":"Unpins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoUnpin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unpin"}},"/video/call/{type}/{id}/user_permissions":{"post":{"description":"Updates user permissions\n\nSends events:\n- call.permissions_updated\n\nRequired permissions:\n- UpdateCallPermissions\n","operationId":"UpdateUserPermissions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update user permissions"}},"/video/calls":{"post":{"description":"Query calls with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryCalls","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call"}},"/video/connect":{"get":{"description":"Establishes WebSocket connection for user to video\n\nSends events:\n- connection.ok\n- health.check\n","operationId":"VideoConnect","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WSAuthMessageRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Video Connect (WebSocket)"}},"/video/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device"},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices"},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device"}},"/video/edges":{"get":{"description":"Returns the list of all edges available for video calls.\n","operationId":"GetEdges","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEdgesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Edges"}},"/video/guest":{"post":{"description":"\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create Guest"}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file +{"components":{"schemas":{"APIError":{"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"AcceptCallRequest":{"nullable":true,"type":"object"},"AcceptCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettings","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AudioSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettingsRequest","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["default_device"],"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BackstageSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"BlockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to block","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"BlockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"BlockedUserEvent":{"description":"This event is sent to call participants to notify when a user is blocked on a call, clients can use this event to show a notification. \nIf the user is the current user, the client should leave the call screen as well","properties":{"blocked_by_user":{"$ref":"#/components/schemas/UserResponse","description":"The user that blocked the user, null if the user was blocked by server-side","title":"Blocked by","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.blocked_user","description":"The type of event: \"call.blocked_user\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that was blocked","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user"],"title":"BlockedUserEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"BroadcastSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsRequest","x-stream-index":"002"}},"type":"object"},"BroadcastSettingsResponse":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsResponse","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"CallAcceptedEvent":{"description":"This event is sent when a user accepts a notification to join a call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.accepted","description":"The type of event: \"call.accepted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who accepted the call","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call","user"],"title":"CallAcceptedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallClosedCaption":{"description":"CallClosedCaption represents a closed caption of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the closed caption.","type":"string","x-stream-index":"003"},"speaker_id":{"title":"The speaker ID of the closed caption.","type":"string","x-stream-index":"004"},"start_time":{"format":"date-time","title":"The start time of the closed caption.","type":"string","x-stream-index":"002"},"text":{"title":"The text of the closed caption.","type":"string","x-stream-index":"001"}},"required":["text","start_time","end_time","speaker_id"],"type":"object"},"CallCreatedEvent":{"description":"This event is sent when a call is created. Clients receiving this event should check if the ringing \nfield is set to true and if so, show the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the members added to this call","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.created","description":"The type of event: \"call.created\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallCreatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallDeletedEvent":{"description":"This event is sent when a call is deleted. Clients receiving this event should leave the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.deleted","description":"The type of event: \"call.deleted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call"],"title":"CallDeletedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallEndedEvent":{"description":"This event is sent when a call is mark as ended for all its participants. Clients receiving this event should leave the call screen","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.ended","description":"The type of event: \"call.ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who ended the call, null if the call was ended by the server","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call"],"title":"CallEndedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallEvent":{"nullable":true,"properties":{"description":{"type":"string","x-stream-index":"004"},"end_timestamp":{"format":"int64","type":"integer","x-stream-index":"002"},"severity":{"format":"int32","type":"integer","x-stream-index":"003"},"timestamp":{"format":"int32","type":"integer","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"005"}},"required":["timestamp","end_timestamp","severity","description","type"],"type":"object"},"CallHLSBroadcastingFailedEvent":{"description":"This event is sent when HLS broadcasting has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.hls_broadcasting_failed","description":"The type of event: \"call.hls_broadcasting_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallHLSBroadcastingFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallHLSBroadcastingStartedEvent":{"description":"This event is sent when HLS broadcasting has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"hls_playlist_url":{"type":"string","x-stream-index":"003"},"type":{"default":"call.hls_broadcasting_started","description":"The type of event: \"call.hls_broadcasting_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","hls_playlist_url"],"title":"CallHLSBroadcastingStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallHLSBroadcastingStoppedEvent":{"description":"This event is sent when HLS broadcasting has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.hls_broadcasting_stopped","description":"The type of event: \"call.hls_broadcasting_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallHLSBroadcastingStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallIngressResponse":{"properties":{"rtmp":{"$ref":"#/components/schemas/RTMPIngress","x-stream-index":"001"}},"required":["rtmp"],"title":"Call inputs","type":"object"},"CallLiveStartedEvent":{"description":"This event is sent when a call is started. Clients receiving this event should start the call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.live_started","description":"The type of event: \"call.live_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call"],"title":"CallLiveStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberAddedEvent":{"description":"This event is sent when one or more members are added to a call","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the members added to this call","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_added","description":"The type of event: \"call.member_added\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberAddedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberRemovedEvent":{"description":"This event is sent when one or more members are removed from a call","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"the list of member IDs removed from the call","items":{"type":"string"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_removed","description":"The type of event: \"call.member_removed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberRemovedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberUpdatedEvent":{"description":"This event is sent when one or more members are updated","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"The list of members that were updated","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"004"},"type":{"default":"call.member_updated","description":"The type of event: \"call.member_updated\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","members"],"title":"CallMemberUpdatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallMemberUpdatedPermissionEvent":{"description":"This event is sent when one or more members get its role updated","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"capabilities_by_role":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"The capabilities by role for this call","title":"CapabilitiesByRole","type":"object","x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"The list of members that were updated","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"005"},"type":{"default":"call.member_updated_permission","description":"The type of event: \"call.member_added\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","capabilities_by_role","members"],"title":"CallMemberUpdatedPermissionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallNotificationEvent":{"description":"This event is sent to all call members to notify they are getting called","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"Call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"005"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.notification","description":"The type of event: \"call.notification\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that sent the call notification","title":"User","x-stream-index":"006"}},"required":["type","created_at","call_cid","session_id","call","members","user"],"title":"CallNotificationEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallParticipantResponse":{"properties":{"joined_at":{"format":"date-time","type":"string","x-stream-index":"004"},"role":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_session_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_session_id","role","joined_at"],"type":"object"},"CallReactionEvent":{"description":"This event is sent when a reaction is sent in a call, clients should use this to show the reaction in the call screen","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"reaction":{"$ref":"#/components/schemas/ReactionResponse","description":"the reaction object sent by the user on the call","title":"reaction","x-stream-index":"003"},"type":{"default":"call.reaction_new","description":"The type of event: \"call.reaction_new\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","reaction"],"title":"CallReactionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecording":{"description":"CallRecording represents a recording of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the recording.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the recording.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the recording.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the recording.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallRecordingFailedEvent":{"description":"This event is sent when call recording has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_failed","description":"The type of event: \"call.recording_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingReadyEvent":{"description":"This event is sent when call recording is ready","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"call_recording":{"$ref":"#/components/schemas/CallRecording","description":"The call recording object","title":"CallRecording","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_ready","description":"The type of event: \"call.recording_ready\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call_recording"],"title":"CallRecordingReadyEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingStartedEvent":{"description":"This event is sent when call recording has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_started","description":"The type of event: \"call.recording_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRecordingStoppedEvent":{"description":"This event is sent when call recording has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.recording_stopped","description":"The type of event: \"call.recording_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallRecordingStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRejectedEvent":{"description":"This event is sent when a user rejects a notification to join a call.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.rejected","description":"The type of event: \"call.rejected\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who rejected the call","title":"User","x-stream-index":"004"}},"required":["type","created_at","call_cid","call","user"],"title":"CallRejectedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallRequest":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"members":{"items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"type":"array","x-stream-index":"005"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"006"},"starts_at":{"format":"date-time","type":"string","x-stream-index":"007"},"team":{"type":"string","x-stream-index":"001"}},"type":"object"},"CallResponse":{"description":"Represents a call","properties":{"backstage":{"type":"boolean","x-stream-index":"015"},"blocked_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"017"},"cid":{"description":"The unique identifier for a call (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"004"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserResponse","description":"The user that created the call","title":"Created By","x-stream-index":"007"},"current_session_id":{"type":"string","x-stream-index":"005"},"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"008"},"egress":{"$ref":"#/components/schemas/EgressResponse","x-stream-index":"020"},"ended_at":{"description":"Date/time when the call ended","format":"date-time","title":"Ended At","type":"string","x-stream-index":"013"},"id":{"description":"Call ID","title":"ID","type":"string","x-stream-index":"003"},"ingress":{"$ref":"#/components/schemas/CallIngressResponse","x-stream-index":"018"},"recording":{"type":"boolean","x-stream-index":"011"},"session":{"$ref":"#/components/schemas/CallSessionResponse","x-stream-index":"019"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"016"},"starts_at":{"description":"Date/time when the call will start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"014"},"team":{"type":"string","x-stream-index":"006"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailResponse","x-stream-index":"021"},"transcribing":{"type":"boolean","x-stream-index":"012"},"type":{"description":"The type of call","title":"Type","type":"string","x-stream-index":"002"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"}},"required":["type","id","cid","current_session_id","created_by","custom","created_at","updated_at","recording","transcribing","backstage","settings","blocked_user_ids","ingress","egress"],"title":"Call","type":"object"},"CallRingEvent":{"description":"This event is sent to all call members to notify they are getting called","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"005"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"members":{"description":"Call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"006"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.ring","description":"The type of event: \"call.notification\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that sent the call notification","title":"User","x-stream-index":"007"}},"required":["type","created_at","call_cid","session_id","call","members","user"],"title":"CallRingEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionEndedEvent":{"description":"This event is sent when a call session ends","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_ended","description":"The type of event: \"call.session_ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","call"],"title":"CallSessionEndedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionParticipantJoinedEvent":{"description":"This event is sent when a participant joins a call session","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"participant":{"$ref":"#/components/schemas/CallParticipantResponse","description":"The participant that joined the session","title":"Participant","x-stream-index":"004"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_participant_joined","description":"The type of event: \"call.session_participant_joined\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","participant"],"title":"CallSessionParticipantJoinedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionParticipantLeftEvent":{"description":"This event is sent when a participant leaves a call session","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"participant":{"$ref":"#/components/schemas/CallParticipantResponse","description":"The participant that left the session","title":"Participant","x-stream-index":"004"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_participant_left","description":"The type of event: \"call.session_participant_left\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","participant"],"title":"CallSessionParticipantLeftEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSessionResponse":{"properties":{"accepted_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"007"},"ended_at":{"format":"date-time","type":"string","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"live_ended_at":{"format":"date-time","type":"string","x-stream-index":"009"},"live_started_at":{"format":"date-time","type":"string","x-stream-index":"008"},"participants":{"items":{"$ref":"#/components/schemas/CallParticipantResponse"},"type":"array","x-stream-index":"004"},"participants_count_by_role":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"005"},"rejected_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"006"},"started_at":{"format":"date-time","type":"string","x-stream-index":"002"}},"required":["id","participants","participants_count_by_role","rejected_by","accepted_by"],"type":"object"},"CallSessionStartedEvent":{"description":"This event is sent when a call session starts","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"004"},"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"session_id":{"description":"Call session ID","title":"Session ID","type":"string","x-stream-index":"003.001"},"type":{"default":"call.session_started","description":"The type of event: \"call.session_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","session_id","call"],"title":"CallSessionStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallSettingsRequest":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettingsRequest","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettingsRequest","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsRequest","x-stream-index":"009"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettingsRequest","x-stream-index":"003"},"recording":{"$ref":"#/components/schemas/RecordSettingsRequest","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettingsRequest","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettingsRequest","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettingsRequest","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettingsRequest","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettingsRequest","x-stream-index":"004"}},"type":"object"},"CallSettingsResponse":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsResponse","x-stream-index":"003"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"004"},"recording":{"$ref":"#/components/schemas/RecordSettingsResponse","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"009"}},"required":["audio","backstage","broadcasting","geofencing","recording","ring","screensharing","transcription","video","thumbnails"],"type":"object"},"CallStateResponseFields":{"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"members":{"description":"List of call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"002"},"membership":{"$ref":"#/components/schemas/MemberResponse","description":"Current user membership object","title":"Membership","x-stream-index":"003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"004"}},"required":["call","members","own_capabilities"],"type":"object"},"CallStatsReportSummaryResponse":{"properties":{"call_cid":{"type":"string","x-stream-index":"001"},"call_session_id":{"type":"string","x-stream-index":"002"},"call_status":{"type":"string","x-stream-index":"004"},"first_stats_time":{"format":"date-time","type":"string","x-stream-index":"003"}},"required":["call_cid","call_session_id","first_stats_time","call_status"],"type":"object"},"CallTimeline":{"properties":{"events":{"items":{"$ref":"#/components/schemas/CallEvent"},"type":"array","x-stream-index":"001"}},"required":["events"],"type":"object"},"CallTranscription":{"description":"CallTranscription represents a transcription of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the transcription.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the transcription.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the transcription.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the transcription.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallTranscriptionFailedEvent":{"description":"This event is sent when call transcription has failed","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_failed","description":"The type of event: \"call.transcription_failed\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionFailedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionReadyEvent":{"description":"This event is sent when call transcription is ready","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"call_transcription":{"$ref":"#/components/schemas/CallTranscription","description":"The call transcription object","title":"CallTranscription","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_ready","description":"The type of event: \"call.transcription_ready\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call_transcription"],"title":"CallTranscriptionReadyEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionStartedEvent":{"description":"This event is sent when call transcription has started","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_started","description":"The type of event: \"call.transcription_started\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionStartedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallTranscriptionStoppedEvent":{"description":"This event is sent when call transcription has stopped","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.transcription_stopped","description":"The type of event: \"call.transcription_stopped\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid"],"title":"CallTranscriptionStoppedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallUpdatedEvent":{"description":"This event is sent when a call is updated, clients should use this update the local state of the call. \nThis event also contains the capabilities by role for the call, clients should update the own_capability for the current.","properties":{"call":{"$ref":"#/components/schemas/CallResponse","description":"Call object","title":"Call","x-stream-index":"003"},"call_cid":{"type":"string","x-stream-index":"002.001"},"capabilities_by_role":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"The capabilities by role for this call","title":"CapabilitiesByRole","type":"object","x-stream-index":"004"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.updated","description":"The type of event: \"call.ended\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","call","capabilities_by_role"],"title":"CallUpdatedEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CallUserMuted":{"description":"This event is sent when a call member is muted","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"from_user_id":{"type":"string","x-stream-index":"003"},"muted_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"004"},"type":{"default":"call.user_muted","description":"The type of event: \"call.user_muted\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","from_user_id","muted_user_ids"],"title":"CallUserMuted","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ClosedCaptionEvent":{"description":"This event is sent when closed captions are being sent in a call, clients should use this to show the closed captions in the call screen","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"closed_caption":{"$ref":"#/components/schemas/CallClosedCaption","description":"The closed caption object","title":"CallClosedCaption","x-stream-index":"003"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.closed_caption","description":"The type of event: \"call.closed_caption\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","call_cid","closed_caption"],"title":"ClosedCaptionEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"CollectUserFeedbackRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"009"},"rating":{"format":"int32","maximum":5,"minimum":1,"type":"integer","x-stream-index":"007"},"reason":{"maxLength":1000,"type":"string","x-stream-index":"008"},"sdk":{"maxLength":50,"type":"string","x-stream-index":"005"},"sdk_version":{"maxLength":50,"type":"string","x-stream-index":"006"},"user_session_id":{"maxLength":50,"type":"string","x-stream-index":"004"}},"required":["user_session_id","sdk","sdk_version"],"type":"object"},"CollectUserFeedbackResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ConnectUserDetailsRequest":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"id":{"type":"string","x-stream-index":"001"},"image":{"type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"ConnectedEvent":{"description":"This event is sent when the WS connection is established and authenticated, this event contains the full user object as it is stored on the server","properties":{"connection_id":{"description":"The connection_id for this client","title":"Connection ID","type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"me":{"$ref":"#/components/schemas/OwnUserResponse","description":"The full user object as it is stored on the server","title":"OwnUserResponse","x-stream-index":"003"},"type":{"default":"connection.ok","description":"The type of event: \"connection.ok\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","connection_id","me"],"title":"ConnectedEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"ConnectionErrorEvent":{"description":"This event is sent when the WS connection fails","properties":{"connection_id":{"type":"string","x-stream-index":"002"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"error":{"$ref":"#/components/schemas/APIError","description":"The error that caused the connection to fail","title":"Error","x-stream-index":"003"},"type":{"default":"connection.error","description":"The type of event: \"connection.ok\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"}},"required":["type","created_at","connection_id","error"],"title":"ConnectionErrorEvent","type":"object","x-stream-event-client-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"Coordinates":{"properties":{"latitude":{"format":"float","type":"number","x-stream-index":"001"},"longitude":{"format":"float","type":"number","x-stream-index":"002"}},"required":["latitude","longitude"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreateGuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"CreateGuestResponse":{"nullable":true,"properties":{"access_token":{"description":"the access token to authenticate the user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserResponse","title":"User","x-stream-index":"001"}},"required":["user","access_token","duration"],"type":"object"},"Credentials":{"properties":{"ice_servers":{"items":{"$ref":"#/components/schemas/ICEServer"},"type":"array","x-stream-index":"003"},"server":{"$ref":"#/components/schemas/SFUResponse","x-stream-index":"001"},"token":{"type":"string","x-stream-index":"002"}},"required":["server","token","ice_servers"],"type":"object"},"Device":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"disabled":{"description":"Whether device is disabled or not","title":"Disabled","type":"boolean","x-stream-index":"005"},"disabled_reason":{"description":"Reason explaining why device had been disabled","title":"Reason","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"003"},"push_provider":{"type":"string","x-stream-index":"001"},"push_provider_name":{"type":"string","x-stream-index":"002"},"voip":{"description":"When true the token is for Apple VoIP push notifications","title":"Voip","type":"boolean","x-stream-index":"007"}},"required":["push_provider","id","created_at"],"title":"Device","type":"object"},"EdgeResponse":{"properties":{"continent_code":{"type":"string","x-stream-index":"007.003"},"country_iso_code":{"type":"string","x-stream-index":"007.002"},"green":{"format":"int32","type":"integer","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"latency_test_url":{"type":"string","x-stream-index":"002"},"latitude":{"format":"float","type":"number","x-stream-index":"006.001"},"longitude":{"format":"float","type":"number","x-stream-index":"006.002"},"red":{"format":"int32","type":"integer","x-stream-index":"005"},"subdivision_iso_code":{"type":"string","x-stream-index":"007.001"},"yellow":{"format":"int32","type":"integer","x-stream-index":"004"}},"required":["id","latency_test_url","green","yellow","red","latitude","longitude","subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"EgressHLSResponse":{"properties":{"playlist_url":{"type":"string","x-stream-index":"001"}},"required":["playlist_url"],"type":"object"},"EgressRTMPResponse":{"properties":{"name":{"type":"string","x-stream-index":"001"},"stream_key":{"type":"string","x-stream-index":"003"},"url":{"type":"string","x-stream-index":"002"}},"required":["name","url","stream_key"],"type":"object"},"EgressResponse":{"properties":{"broadcasting":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/EgressHLSResponse","x-stream-index":"002"},"rtmps":{"items":{"$ref":"#/components/schemas/EgressRTMPResponse"},"type":"array","x-stream-index":"003"}},"required":["broadcasting","rtmps"],"type":"object"},"EndCallRequest":{"nullable":true,"type":"object"},"EndCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GeofenceSettingsRequest":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"type":"object"},"GeolocationResult":{"properties":{"AccuracyRadius":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"continent_code":{"type":"string","x-stream-index":"002.003"},"country_iso_code":{"type":"string","x-stream-index":"002.002"},"latitude":{"format":"float","type":"number","x-stream-index":"001.001"},"longitude":{"format":"float","type":"number","x-stream-index":"001.002"},"subdivision_iso_code":{"type":"string","x-stream-index":"002.001"}},"required":["latitude","longitude","subdivision_iso_code","country_iso_code","continent_code","AccuracyRadius"],"type":"object"},"GetCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"type":"object"},"GetCallStatsResponse":{"nullable":true,"properties":{"average_jitter":{"format":"float","type":"number","x-stream-index":"005"},"average_latency":{"format":"float","type":"number","x-stream-index":"004"},"call_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"002"},"call_timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"014"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"max_jitter":{"format":"float","type":"number","x-stream-index":"007"},"max_latency":{"format":"float","type":"number","x-stream-index":"006"},"max_participants":{"format":"int32","type":"integer","x-stream-index":"008"},"participant_report":{"additionalProperties":{"$ref":"#/components/schemas/UserStats"},"type":"object","x-stream-index":"015"},"publishing_participants":{"format":"int32","type":"integer","x-stream-index":"009"},"quality_score":{"format":"int32","type":"integer","x-stream-index":"003"},"sfu_count":{"format":"int32","type":"integer","x-stream-index":"010"},"sfus":{"items":{"$ref":"#/components/schemas/SFULocationResponse"},"type":"array","x-stream-index":"013"},"total_freezes_duration":{"format":"float","type":"number","x-stream-index":"012"},"total_quality_limitation_duration":{"format":"float","type":"number","x-stream-index":"011"}},"required":["duration","call_duration_seconds","quality_score","average_latency","average_jitter","max_latency","max_jitter","max_participants","publishing_participants","sfu_count","total_quality_limitation_duration","total_freezes_duration","sfus","participant_report"],"type":"object"},"GetEdgesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"edges":{"items":{"$ref":"#/components/schemas/EdgeResponse"},"type":"array","x-stream-index":"001"}},"required":["edges","duration"],"type":"object"},"GetOrCreateCallRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/CallRequest","title":"ReadOnlyData","x-stream-index":"003"},"members_limit":{"format":"int32","maximum":100,"type":"integer","x-stream-index":"006"},"notify":{"description":"if provided it sends a notification event to the members for this call","title":"Notify","type":"boolean","x-stream-index":"005"},"ring":{"description":"if provided it sends a ring event to the members for this call","title":"Ring","type":"boolean","x-stream-index":"004"}},"type":"object"},"GetOrCreateCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"type":"boolean","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","created","duration"],"type":"object"},"GoLiveRequest":{"nullable":true,"properties":{"recording_storage_name":{"type":"string","x-stream-index":"005"},"start_hls":{"type":"boolean","x-stream-index":"003"},"start_recording":{"type":"boolean","x-stream-index":"004"},"start_transcription":{"type":"boolean","x-stream-index":"007"},"transcription_storage_name":{"type":"string","x-stream-index":"006"}},"type":"object"},"GoLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"HLSSettingsRequest":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"quality_tracks":{"items":{"type":"string"},"maximum":3,"minimum":1,"type":"array","x-stream-index":"003"}},"type":"object"},"HLSSettingsResponse":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks","layout"],"type":"object"},"ICEServer":{"properties":{"password":{"type":"string","x-stream-index":"003"},"urls":{"items":{"type":"string"},"type":"array","x-stream-index":"001"},"username":{"type":"string","x-stream-index":"002"}},"required":["urls","username","password"],"type":"object"},"JoinCallRequest":{"nullable":true,"properties":{"create":{"description":"if true the call will be created if it doesn't exist","title":"Create","type":"boolean","x-stream-index":"002"},"data":{"$ref":"#/components/schemas/CallRequest","x-stream-index":"003"},"location":{"title":"Location","type":"string","x-stream-index":"008"},"members_limit":{"format":"int32","maximum":100,"title":"The amount of members that should be returned","type":"integer","x-stream-index":"006"},"migrating_from":{"description":"If the participant is migrating from another SFU, then this is the ID of the previous SFU","title":"MigratingFrom","type":"string","x-stream-index":"009"},"notify":{"type":"boolean","x-stream-index":"005"},"ring":{"description":"if true and the call is created, the notification will include ring=true","title":"Ring","type":"boolean","x-stream-index":"004"}},"required":["location"],"type":"object"},"JoinCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"title":"Created","type":"boolean","x-stream-index":"002"},"credentials":{"$ref":"#/components/schemas/Credentials","title":"Credentials","x-stream-index":"003"},"duration":{"type":"string","x-stream-index":"005.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"},"stats_options":{"$ref":"#/components/schemas/StatsOptions","x-stream-index":"004"}},"required":["call","members","own_capabilities","created","credentials","stats_options","duration"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListRecordingsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"recordings":{"items":{"$ref":"#/components/schemas/CallRecording"},"type":"array","x-stream-index":"002"}},"required":["duration","recordings"],"type":"object"},"ListTranscriptionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"transcriptions":{"items":{"$ref":"#/components/schemas/CallTranscription"},"type":"array","x-stream-index":"002"}},"required":["duration","transcriptions"],"type":"object"},"Location":{"properties":{"continent_code":{"type":"string","x-stream-index":"003"},"country_iso_code":{"type":"string","x-stream-index":"002"},"subdivision_iso_code":{"type":"string","x-stream-index":"001"}},"required":["subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"MemberRequest":{"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"role":{"title":"Role","type":"string","x-stream-index":"002"},"user_id":{"minLength":1,"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"MemberResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"005"},"custom":{"description":"Custom member response data","title":"Custom","type":"object","x-stream-index":"004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"007"},"role":{"title":"Role","type":"string","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_id","custom","created_at","updated_at"],"type":"object"},"MuteUsersRequest":{"nullable":true,"properties":{"audio":{"title":"Audio","type":"boolean","x-stream-index":"005"},"mute_all_users":{"type":"boolean","x-stream-index":"003"},"screenshare":{"title":"Screenshare","type":"boolean","x-stream-index":"007"},"screenshare_audio":{"title":"ScreenshareAudio","type":"boolean","x-stream-index":"008"},"user_ids":{"items":{"type":"string"},"title":"UserIDs","type":"array","x-stream-index":"004"},"video":{"title":"Video","type":"boolean","x-stream-index":"006"}},"type":"object"},"MuteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"NoiseCancellationSettings":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode"],"type":"object"},"NoiseCancellationSettingsRequest":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"OwnCapability":{"description":"All possibility of string to use","enum":["block-users","create-call","create-reaction","enable-noise-cancellation","end-call","join-backstage","join-call","join-ended-call","mute-users","pin-for-everyone","read-call","remove-call-member","screenshare","send-audio","send-video","start-broadcast-call","start-record-call","start-transcription-call","stop-broadcast-call","stop-record-call","stop-transcription-call","update-call","update-call-member","update-call-permissions","update-call-settings"],"title":"OwnCapability","type":"string"},"OwnUserResponse":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.004"},"custom":{"type":"object","x-stream-index":"001.001.004"},"deleted_at":{"format":"date-time","type":"string","x-stream-index":"001.006"},"devices":{"items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001.001.001"},"image":{"type":"string","x-stream-index":"001.001.003"},"language":{"type":"string","x-stream-index":"001.001.005"},"name":{"type":"string","x-stream-index":"001.001.002"},"role":{"type":"string","x-stream-index":"001.002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.005"}},"required":["id","custom","language","role","teams","created_at","updated_at","devices"],"type":"object"},"PermissionRequestEvent":{"description":"This event is sent when a user requests access to a feature on a call,\nclients receiving this event should display a permission request to the user","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"permissions":{"description":"The list of permissions requested by the user","items":{"type":"string"},"title":"Permissions","type":"array","x-stream-index":"004"},"type":{"default":"call.permission_request","description":"The type of event: \"call.permission_request\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who sent the permission request","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user","permissions"],"title":"PermissionRequestEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"PinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"PinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"QueryCallStatsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"002"}},"type":"object"},"QueryCallStatsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"next":{"type":"string","x-stream-index":"003.001"},"prev":{"type":"string","x-stream-index":"003.002"},"reports":{"items":{"$ref":"#/components/schemas/CallStatsReportSummaryResponse"},"type":"array","x-stream-index":"001"}},"required":["reports","duration"],"type":"object"},"QueryCallsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"006.001"},"next":{"type":"string","x-stream-index":"006.002"},"prev":{"type":"string","x-stream-index":"006.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"004"},"watch":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryCallsResponse":{"nullable":true,"properties":{"calls":{"items":{"$ref":"#/components/schemas/CallStateResponseFields"},"title":"Calls","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["calls","duration"],"type":"object"},"QueryMembersRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"002"},"id":{"maxLength":64,"type":"string","x-stream-index":"001.002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":1,"type":"array","x-stream-index":"003"},"type":{"maxLength":64,"type":"string","x-stream-index":"001.001"}},"required":["type","id"],"type":"object"},"QueryMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["members","duration"],"type":"object"},"RTMPIngress":{"description":"RTMP input settings","properties":{"address":{"type":"string","x-stream-index":"001"}},"required":["address"],"title":"RTMP Ingress","type":"object"},"ReactionResponse":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"emoji_code":{"type":"string","x-stream-index":"003"},"type":{"type":"string","x-stream-index":"002"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"}},"required":["user","type"],"type":"object"},"RecordSettingsRequest":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"002"},"quality":{"enum":["360p","480p","720p","1080p","1440p"],"type":"string","x-stream-index":"003"}},"required":["mode"],"type":"object"},"RecordSettingsResponse":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality","layout"],"type":"object"},"RejectCallRequest":{"nullable":true,"type":"object"},"RejectCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"RequestPermissionRequest":{"nullable":true,"properties":{"permissions":{"items":{"type":"string"},"title":"Permissions","type":"array","x-stream-index":"003"}},"required":["permissions"],"type":"object"},"RequestPermissionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"RingSettingsRequest":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"001"}},"type":"object"},"SFULocationResponse":{"properties":{"coordinates":{"$ref":"#/components/schemas/Coordinates","x-stream-index":"004"},"datacenter":{"type":"string","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001"},"location":{"$ref":"#/components/schemas/Location","x-stream-index":"003"}},"required":["id","datacenter","location","coordinates"],"type":"object"},"SFUResponse":{"properties":{"edge_name":{"type":"string","x-stream-index":"001"},"url":{"type":"string","x-stream-index":"002"},"ws_endpoint":{"type":"string","x-stream-index":"003"}},"required":["edge_name","url","ws_endpoint"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"ScreensharingSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"}},"type":"object"},"SendEventResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SendReactionRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"003.003"},"emoji_code":{"type":"string","x-stream-index":"003.002"},"type":{"maxLength":64,"type":"string","x-stream-index":"003.001"}},"required":["type"],"type":"object"},"SendReactionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"reaction":{"$ref":"#/components/schemas/ReactionResponse","x-stream-index":"001"}},"required":["reaction","duration"],"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StartHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StartHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"playlist_url":{"type":"string","x-stream-index":"002"}},"required":["duration","playlist_url"],"type":"object"},"StartRecordingRequest":{"nullable":true,"properties":{"recording_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartRecordingResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StartTranscriptionRequest":{"nullable":true,"properties":{"transcription_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartTranscriptionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Stats":{"properties":{"average_seconds":{"format":"float","type":"number","x-stream-index":"001"},"max_seconds":{"format":"float","type":"number","x-stream-index":"002"}},"required":["average_seconds","max_seconds"],"type":"object"},"StatsOptions":{"properties":{"reporting_interval_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["reporting_interval_ms"],"type":"object"},"StopHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StopHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopLiveRequest":{"nullable":true,"type":"object"},"StopLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"StopRecordingRequest":{"nullable":true,"type":"object"},"StopRecordingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopTranscriptionRequest":{"nullable":true,"type":"object"},"StopTranscriptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Subsession":{"properties":{"sfu_id":{"type":"string","x-stream-index":"003"},"ts_ended_at":{"format":"int64","type":"integer","x-stream-index":"002"},"ts_joined_at":{"format":"int64","type":"integer","x-stream-index":"001"}},"required":["ts_joined_at","ts_ended_at","sfu_id"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"TargetResolutionRequest":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"type":"object"},"ThumbnailResponse":{"properties":{"image_url":{"type":"string","x-stream-index":"001"}},"required":["image_url"],"type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"ThumbnailsSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranscriptionSettingsRequest":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"UnblockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to unblock","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"UnblockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnblockedUserEvent":{"description":"This event is sent when a user is unblocked on a call, \nthis can be useful to notify the user that they can now join the call again","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"type":{"default":"call.unblocked_user","description":"The type of event: \"call.unblocked_user\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user that was unblocked","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user"],"title":"UnblockedUserEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UnpinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"UnpinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdateCallMembersRequest":{"nullable":true,"properties":{"remove_members":{"description":"List of userID to remove","items":{"type":"string"},"maximum":100,"title":"Remove Members","type":"array","x-stream-index":"003"},"update_members":{"description":"List of members to update or insert","items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"title":"Update Members","type":"array","x-stream-index":"004"}},"type":"object"},"UpdateCallMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"002"}},"required":["duration","members"],"type":"object"},"UpdateCallRequest":{"nullable":true,"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","description":"the settings to change for this call","title":"Settings Override","x-stream-index":"004"},"starts_at":{"description":"the time the call is scheduled to start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"005"}},"type":"object"},"UpdateCallResponse":{"description":"Represents a call","nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"title":"Call","type":"object"},"UpdateUserPermissionsRequest":{"nullable":true,"properties":{"grant_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"revoke_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"UpdateUserPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdatedCallPermissionsEvent":{"description":"This event is sent to notify about permission changes for a user, clients receiving this event should update their UI accordingly","properties":{"call_cid":{"type":"string","x-stream-index":"002.001"},"created_at":{"format":"date-time","type":"string","x-stream-index":"001.002"},"own_capabilities":{"description":"The capabilities of the current user","items":{"$ref":"#/components/schemas/OwnCapability"},"title":"Own capabilities","type":"array","x-stream-index":"004"},"type":{"default":"call.permissions_updated","description":"The type of event: \"call.permissions_updated\" in this case","title":"Event Type","type":"string","x-stream-index":"001.001"},"user":{"$ref":"#/components/schemas/UserResponse","description":"The user who received the new permissions","title":"User","x-stream-index":"003"}},"required":["type","created_at","call_cid","user","own_capabilities"],"title":"UpdatedCallPermissionsEvent","type":"object","x-stream-event-call-type":true,"x-stream-is-event":true,"x-stream-ws-base-event-name":"VideoEvent"},"UserInfoResponse":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"image":{"type":"string","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"004"}},"required":["name","image","custom","roles"],"type":"object"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"UserResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"001.004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"001.001"},"image":{"type":"string","x-stream-index":"001.003"},"language":{"type":"string","x-stream-index":"001.005"},"name":{"type":"string","x-stream-index":"001.002"},"role":{"type":"string","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"}},"required":["id","custom","language","role","teams","created_at","updated_at"],"type":"object"},"UserSessionStats":{"properties":{"browser":{"type":"string","x-stream-index":"009"},"browser_version":{"type":"string","x-stream-index":"010"},"current_ip":{"type":"string","x-stream-index":"028"},"current_sfu":{"type":"string","x-stream-index":"029"},"device_model":{"type":"string","x-stream-index":"007"},"device_version":{"type":"string","x-stream-index":"008"},"freeze_duration_seconds":{"format":"float","type":"number","x-stream-index":"023"},"geolocation":{"$ref":"#/components/schemas/GeolocationResult","x-stream-index":"030"},"jitter":{"$ref":"#/components/schemas/Stats","x-stream-index":"011"},"latency":{"$ref":"#/components/schemas/Stats","x-stream-index":"012"},"max_fir_per_minute":{"format":"float","type":"number","x-stream-index":"019"},"max_freezes_per_minute":{"format":"float","type":"number","x-stream-index":"020"},"max_nack_per_minute":{"format":"float","type":"number","x-stream-index":"018"},"max_pli_per_minute":{"format":"float","type":"number","x-stream-index":"017"},"max_publishing_video_quality":{"$ref":"#/components/schemas/VideoQuality","x-stream-index":"016"},"max_receiving_video_quality":{"$ref":"#/components/schemas/VideoQuality","x-stream-index":"025"},"os":{"type":"string","x-stream-index":"002"},"os_version":{"type":"string","x-stream-index":"003"},"packet_loss_fraction":{"format":"float","type":"number","x-stream-index":"021"},"publishing_audio_codec":{"type":"string","x-stream-index":"015"},"publishing_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"014"},"quality_score":{"format":"float","type":"number","x-stream-index":"013"},"receiving_audio_codec":{"type":"string","x-stream-index":"024"},"receiving_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"022"},"sdk":{"type":"string","x-stream-index":"005"},"sdk_version":{"type":"string","x-stream-index":"006"},"subsessions":{"items":{"$ref":"#/components/schemas/Subsession"},"type":"array","x-stream-index":"031"},"timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"001"},"total_pixels_in":{"type":"integer","x-stream-index":"026"},"total_pixels_out":{"type":"integer","x-stream-index":"027"},"webrtc_version":{"type":"string","x-stream-index":"004"}},"required":["quality_score","publishing_duration_seconds","packet_loss_fraction","receiving_duration_seconds","freeze_duration_seconds","total_pixels_in","total_pixels_out"],"type":"object"},"UserStats":{"properties":{"info":{"$ref":"#/components/schemas/UserInfoResponse","x-stream-index":"001"},"session_stats":{"additionalProperties":{"$ref":"#/components/schemas/UserSessionStats"},"type":"object","x-stream-index":"002"}},"required":["info","session_stats"],"type":"object"},"VideoQuality":{"properties":{"resolution":{"$ref":"#/components/schemas/VideoResolution","x-stream-index":"001"}},"required":["resolution"],"type":"object"},"VideoResolution":{"properties":{"height":{"format":"int32","type":"integer","x-stream-index":"002"},"width":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["width","height"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VideoSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolutionRequest","x-stream-index":"003"}},"type":"object"},"WSAuthMessageRequest":{"nullable":true,"properties":{"token":{"title":"Token","type":"string","x-stream-index":"002"},"user_details":{"$ref":"#/components/schemas/ConnectUserDetailsRequest","x-stream-index":"001"}},"required":["user_details","token"],"type":"object"},"WSEvent":{"description":"The discriminator object for all websocket events, it maps events' payload to the final type","discriminator":{"mapping":{"call.accepted":"#/components/schemas/CallAcceptedEvent","call.blocked_user":"#/components/schemas/BlockedUserEvent","call.closed_caption":"#/components/schemas/ClosedCaptionEvent","call.created":"#/components/schemas/CallCreatedEvent","call.deleted":"#/components/schemas/CallDeletedEvent","call.ended":"#/components/schemas/CallEndedEvent","call.hls_broadcasting_failed":"#/components/schemas/CallHLSBroadcastingFailedEvent","call.hls_broadcasting_started":"#/components/schemas/CallHLSBroadcastingStartedEvent","call.hls_broadcasting_stopped":"#/components/schemas/CallHLSBroadcastingStoppedEvent","call.live_started":"#/components/schemas/CallLiveStartedEvent","call.member_added":"#/components/schemas/CallMemberAddedEvent","call.member_removed":"#/components/schemas/CallMemberRemovedEvent","call.member_updated":"#/components/schemas/CallMemberUpdatedEvent","call.member_updated_permission":"#/components/schemas/CallMemberUpdatedPermissionEvent","call.notification":"#/components/schemas/CallNotificationEvent","call.permission_request":"#/components/schemas/PermissionRequestEvent","call.permissions_updated":"#/components/schemas/UpdatedCallPermissionsEvent","call.reaction_new":"#/components/schemas/CallReactionEvent","call.recording_failed":"#/components/schemas/CallRecordingFailedEvent","call.recording_ready":"#/components/schemas/CallRecordingReadyEvent","call.recording_started":"#/components/schemas/CallRecordingStartedEvent","call.recording_stopped":"#/components/schemas/CallRecordingStoppedEvent","call.rejected":"#/components/schemas/CallRejectedEvent","call.ring":"#/components/schemas/CallRingEvent","call.session_ended":"#/components/schemas/CallSessionEndedEvent","call.session_participant_joined":"#/components/schemas/CallSessionParticipantJoinedEvent","call.session_participant_left":"#/components/schemas/CallSessionParticipantLeftEvent","call.session_started":"#/components/schemas/CallSessionStartedEvent","call.transcription_failed":"#/components/schemas/CallTranscriptionFailedEvent","call.transcription_ready":"#/components/schemas/CallTranscriptionReadyEvent","call.transcription_started":"#/components/schemas/CallTranscriptionStartedEvent","call.transcription_stopped":"#/components/schemas/CallTranscriptionStoppedEvent","call.unblocked_user":"#/components/schemas/UnblockedUserEvent","call.updated":"#/components/schemas/CallUpdatedEvent","call.user_muted":"#/components/schemas/CallUserMuted","connection.error":"#/components/schemas/ConnectionErrorEvent","connection.ok":"#/components/schemas/ConnectedEvent"},"propertyName":"type"},"oneOf":[{"$ref":"#/components/schemas/BlockedUserEvent"},{"$ref":"#/components/schemas/CallAcceptedEvent"},{"$ref":"#/components/schemas/CallCreatedEvent"},{"$ref":"#/components/schemas/CallDeletedEvent"},{"$ref":"#/components/schemas/CallEndedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingFailedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingStartedEvent"},{"$ref":"#/components/schemas/CallHLSBroadcastingStoppedEvent"},{"$ref":"#/components/schemas/CallLiveStartedEvent"},{"$ref":"#/components/schemas/CallMemberAddedEvent"},{"$ref":"#/components/schemas/CallMemberRemovedEvent"},{"$ref":"#/components/schemas/CallMemberUpdatedEvent"},{"$ref":"#/components/schemas/CallMemberUpdatedPermissionEvent"},{"$ref":"#/components/schemas/CallNotificationEvent"},{"$ref":"#/components/schemas/CallReactionEvent"},{"$ref":"#/components/schemas/CallRecordingFailedEvent"},{"$ref":"#/components/schemas/CallRecordingReadyEvent"},{"$ref":"#/components/schemas/CallRecordingStartedEvent"},{"$ref":"#/components/schemas/CallRecordingStoppedEvent"},{"$ref":"#/components/schemas/CallRejectedEvent"},{"$ref":"#/components/schemas/CallRingEvent"},{"$ref":"#/components/schemas/CallSessionEndedEvent"},{"$ref":"#/components/schemas/CallSessionParticipantJoinedEvent"},{"$ref":"#/components/schemas/CallSessionParticipantLeftEvent"},{"$ref":"#/components/schemas/CallSessionStartedEvent"},{"$ref":"#/components/schemas/CallTranscriptionFailedEvent"},{"$ref":"#/components/schemas/CallTranscriptionReadyEvent"},{"$ref":"#/components/schemas/CallTranscriptionStartedEvent"},{"$ref":"#/components/schemas/CallTranscriptionStoppedEvent"},{"$ref":"#/components/schemas/CallUpdatedEvent"},{"$ref":"#/components/schemas/CallUserMuted"},{"$ref":"#/components/schemas/ClosedCaptionEvent"},{"$ref":"#/components/schemas/ConnectedEvent"},{"$ref":"#/components/schemas/ConnectionErrorEvent"},{"$ref":"#/components/schemas/PermissionRequestEvent"},{"$ref":"#/components/schemas/UnblockedUserEvent"},{"$ref":"#/components/schemas/UpdatedCallPermissionsEvent"}]}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v105.1.0"},"openapi":"3.0.3","paths":{"/video/call/members":{"post":{"description":"Query call members with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryMembers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call members"}},"/video/call/stats":{"post":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"QueryCallStats","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Call Stats"}},"/video/call/{type}/{id}":{"get":{"description":"\n\nRequired permissions:\n- ReadCall\n","operationId":"GetCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"members_limit","schema":{"format":"int32","maximum":100,"minimum":0,"type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"ring","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"005"}},{"in":"query","name":"notify","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"006"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call"},"patch":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"UpdateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallResponse"}}},"description":"Call"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call"},"post":{"description":"Gets or creates a new call\n\nSends events:\n- call.created\n- call.notification\n- call.ring\n\nRequired permissions:\n- CreateCall\n- ReadCall\n- UpdateCallSettings\n","operationId":"GetOrCreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create a call"}},"/video/call/{type}/{id}/accept":{"post":{"description":"\n\nSends events:\n- call.accepted\n\nRequired permissions:\n- JoinCall\n","operationId":"AcceptCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AcceptCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Accept Call"}},"/video/call/{type}/{id}/block":{"post":{"description":"Block a user, preventing them from joining the call until they are unblocked.\n\nSends events:\n- call.blocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"BlockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Block user on a call"}},"/video/call/{type}/{id}/event":{"post":{"description":"Sends custom event to the call\n\nSends events:\n- custom\n\nRequired permissions:\n- SendEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send custom event"}},"/video/call/{type}/{id}/feedback/{session}":{"post":{"description":"\n\nRequired permissions:\n- JoinCall\n","operationId":"CollectUserFeedback","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Collect user feedback"}},"/video/call/{type}/{id}/go_live":{"post":{"description":"\n\nSends events:\n- call.live_started\n\nRequired permissions:\n- UpdateCall\n","operationId":"GoLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as live"}},"/video/call/{type}/{id}/join":{"post":{"description":"Request to join a call\n\nRequired permissions:\n- CreateCall\n- JoinCall\n","operationId":"JoinCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"title":"ConnectionID","type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Join call"}},"/video/call/{type}/{id}/mark_ended":{"post":{"description":"\n\nSends events:\n- call.ended\n\nRequired permissions:\n- EndCall\n","operationId":"EndCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"End call"}},"/video/call/{type}/{id}/members":{"post":{"description":"\n\nSends events:\n- call.member_added\n- call.member_removed\n- call.member_updated\n\nRequired permissions:\n- RemoveCallMember\n- UpdateCallMember\n- UpdateCallMemberRole\n","operationId":"UpdateCallMembers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Member"}},"/video/call/{type}/{id}/mute_users":{"post":{"description":"Mutes users in a call\n\nRequired permissions:\n- MuteUsers\n","operationId":"MuteUsers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute users"}},"/video/call/{type}/{id}/pin":{"post":{"description":"Pins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoPin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Pin"}},"/video/call/{type}/{id}/reaction":{"post":{"description":"Sends reaction to the call\n\nSends events:\n- call.reaction_new\n\nRequired permissions:\n- CreateCallReaction\n","operationId":"SendVideoReaction","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReactionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send reaction to the call"}},"/video/call/{type}/{id}/recordings":{"get":{"description":"Lists recordings\n\nRequired permissions:\n- ListRecordings\n","operationId":"ListRecordings","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRecordingsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List recordings"}},"/video/call/{type}/{id}/reject":{"post":{"description":"\n\nSends events:\n- call.rejected\n\nRequired permissions:\n- JoinCall\n","operationId":"RejectCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RejectCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Reject Call"}},"/video/call/{type}/{id}/request_permission":{"post":{"description":"Request permission to perform an action\n\nSends events:\n- call.permission_request\n","operationId":"RequestPermission","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestPermissionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestPermissionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Request permission"}},"/video/call/{type}/{id}/start_broadcasting":{"post":{"description":"Starts HLS broadcasting\n\nRequired permissions:\n- StartBroadcasting\n","operationId":"StartHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start HLS broadcasting"}},"/video/call/{type}/{id}/start_recording":{"post":{"description":"Starts recording\n\nSends events:\n- call.recording_started\n\nRequired permissions:\n- StartRecording\n","operationId":"StartRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start recording"}},"/video/call/{type}/{id}/start_transcription":{"post":{"description":"Starts transcription\n\nRequired permissions:\n- StartTranscription\n","operationId":"StartTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start transcription"}},"/video/call/{type}/{id}/stats/{session}":{"get":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"GetCallStats","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Stats"}},"/video/call/{type}/{id}/stop_broadcasting":{"post":{"description":"Stops HLS broadcasting\n\nRequired permissions:\n- StopBroadcasting\n","operationId":"StopHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop HLS broadcasting"}},"/video/call/{type}/{id}/stop_live":{"post":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"StopLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as not live"}},"/video/call/{type}/{id}/stop_recording":{"post":{"description":"Stops recording\n\nSends events:\n- call.recording_stopped\n\nRequired permissions:\n- StopRecording\n","operationId":"StopRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop recording"}},"/video/call/{type}/{id}/stop_transcription":{"post":{"description":"Stops transcription\n\nSends events:\n- call.transcription_stopped\n\nRequired permissions:\n- StopTranscription\n","operationId":"StopTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop transcription"}},"/video/call/{type}/{id}/transcriptions":{"get":{"description":"Lists transcriptions\n\nRequired permissions:\n- ListTranscriptions\n","operationId":"ListTranscriptions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTranscriptionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List transcriptions"}},"/video/call/{type}/{id}/unblock":{"post":{"description":"Removes the block for a user on a call. The user will be able to join the call again.\n\nSends events:\n- call.unblocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"UnblockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unblocks user on a call"}},"/video/call/{type}/{id}/unpin":{"post":{"description":"Unpins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoUnpin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unpin"}},"/video/call/{type}/{id}/user_permissions":{"post":{"description":"Updates user permissions\n\nSends events:\n- call.permissions_updated\n\nRequired permissions:\n- UpdateCallPermissions\n","operationId":"UpdateUserPermissions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update user permissions"}},"/video/calls":{"post":{"description":"Query calls with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryCalls","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call"}},"/video/connect":{"get":{"description":"Establishes WebSocket connection for user to video\n\nSends events:\n- connection.ok\n- health.check\n","operationId":"VideoConnect","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WSAuthMessageRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Video Connect (WebSocket)"}},"/video/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device"},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices"},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device"}},"/video/edges":{"get":{"description":"Returns the list of all edges available for video calls.\n","operationId":"GetEdges","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEdgesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Edges"}},"/video/guest":{"post":{"description":"\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create Guest"}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file diff --git a/openapi/video-openapi-clientside.yaml b/openapi/video-openapi-clientside.yaml index f7a960b2..fa4ceb24 100644 --- a/openapi/video-openapi-clientside.yaml +++ b/openapi/video-openapi-clientside.yaml @@ -78,6 +78,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettings' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -109,6 +112,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettingsRequest' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -394,20 +400,25 @@ components: properties: description: type: string - x-stream-index: "003" + x-stream-index: "004" + end_timestamp: + format: int64 + type: integer + x-stream-index: "002" severity: format: int32 type: integer - x-stream-index: "002" + x-stream-index: "003" timestamp: format: int32 type: integer x-stream-index: "001" type: type: string - x-stream-index: "004" + x-stream-index: "005" required: - timestamp + - end_timestamp - severity - description - type @@ -2105,6 +2116,38 @@ components: type: array x-stream-index: "001" type: object + GeolocationResult: + properties: + AccuracyRadius: + format: int32 + type: integer + writeOnly: true + x-stream-index: "003" + continent_code: + type: string + x-stream-index: "002.003" + country_iso_code: + type: string + x-stream-index: "002.002" + latitude: + format: float + type: number + x-stream-index: "001.001" + longitude: + format: float + type: number + x-stream-index: "001.002" + subdivision_iso_code: + type: string + x-stream-index: "002.001" + required: + - latitude + - longitude + - subdivision_iso_code + - country_iso_code + - continent_code + - AccuracyRadius + type: object GetCallResponse: nullable: true properties: @@ -2145,30 +2188,38 @@ components: type: number x-stream-index: "004" call_duration_seconds: - format: int64 + format: int32 type: integer x-stream-index: "002" call_timeline: $ref: '#/components/schemas/CallTimeline' - x-stream-index: "012" + x-stream-index: "014" duration: description: Duration of the request in human-readable format title: Duration type: string x-stream-index: "001.001" + max_jitter: + format: float + type: number + x-stream-index: "007" + max_latency: + format: float + type: number + x-stream-index: "006" max_participants: format: int32 type: integer - x-stream-index: "006" + x-stream-index: "008" participant_report: additionalProperties: $ref: '#/components/schemas/UserStats' type: object - x-stream-index: "013" + x-stream-index: "015" publishing_participants: format: int32 type: integer - x-stream-index: "007" + x-stream-index: "009" quality_score: format: int32 type: integer @@ -2176,26 +2227,28 @@ components: sfu_count: format: int32 type: integer - x-stream-index: "008" + x-stream-index: "010" sfus: items: $ref: '#/components/schemas/SFULocationResponse' type: array - x-stream-index: "011" + x-stream-index: "013" total_freezes_duration: format: float type: number - x-stream-index: "010" + x-stream-index: "012" total_quality_limitation_duration: format: float type: number - x-stream-index: "009" + x-stream-index: "011" required: - duration - call_duration_seconds - quality_score - average_latency - average_jitter + - max_latency + - max_jitter - max_participants - publishing_participants - sfu_count @@ -2609,12 +2662,35 @@ components: required: - duration type: object + NoiseCancellationSettings: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + required: + - mode + type: object + NoiseCancellationSettingsRequest: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + type: object OwnCapability: description: All possibility of string to use enum: - block-users - create-call - create-reaction + - enable-noise-cancellation - end-call - join-backstage - join-call @@ -3308,6 +3384,24 @@ components: required: - duration type: object + Subsession: + properties: + sfu_id: + type: string + x-stream-index: "003" + ts_ended_at: + format: int64 + type: integer + x-stream-index: "002" + ts_joined_at: + format: int64 + type: integer + x-stream-index: "001" + required: + - ts_joined_at + - ts_ended_at + - sfu_id + type: object TargetResolution: properties: bitrate: @@ -3740,47 +3834,118 @@ components: type: object UserSessionStats: properties: + browser: + type: string + x-stream-index: "009" + browser_version: + type: string + x-stream-index: "010" + current_ip: + type: string + x-stream-index: "028" + current_sfu: + type: string + x-stream-index: "029" + device_model: + type: string + x-stream-index: "007" + device_version: + type: string + x-stream-index: "008" freeze_duration_seconds: format: float type: number - x-stream-index: "009" + x-stream-index: "023" + geolocation: + $ref: '#/components/schemas/GeolocationResult' + x-stream-index: "030" jitter: $ref: '#/components/schemas/Stats' - x-stream-index: "006" + x-stream-index: "011" latency: $ref: '#/components/schemas/Stats' - x-stream-index: "007" + x-stream-index: "012" + max_fir_per_minute: + format: float + type: number + x-stream-index: "019" + max_freezes_per_minute: + format: float + type: number + x-stream-index: "020" + max_nack_per_minute: + format: float + type: number + x-stream-index: "018" + max_pli_per_minute: + format: float + type: number + x-stream-index: "017" + max_publishing_video_quality: + $ref: '#/components/schemas/VideoQuality' + x-stream-index: "016" + max_receiving_video_quality: + $ref: '#/components/schemas/VideoQuality' + x-stream-index: "025" os: type: string x-stream-index: "002" + os_version: + type: string + x-stream-index: "003" packet_loss_fraction: format: float type: number - x-stream-index: "010" + x-stream-index: "021" + publishing_audio_codec: + type: string + x-stream-index: "015" + publishing_duration_seconds: + format: int32 + type: integer + x-stream-index: "014" quality_score: format: float type: number - x-stream-index: "008" + x-stream-index: "013" + receiving_audio_codec: + type: string + x-stream-index: "024" + receiving_duration_seconds: + format: int32 + type: integer + x-stream-index: "022" sdk: type: string - x-stream-index: "004" + x-stream-index: "005" sdk_version: type: string - x-stream-index: "005" + x-stream-index: "006" + subsessions: + items: + $ref: '#/components/schemas/Subsession' + type: array + x-stream-index: "031" timeline: $ref: '#/components/schemas/CallTimeline' x-stream-index: "001" + total_pixels_in: + type: integer + x-stream-index: "026" + total_pixels_out: + type: integer + x-stream-index: "027" webrtc_version: type: string - x-stream-index: "003" + x-stream-index: "004" required: - - os - - webrtc_version - - sdk - - sdk_version - quality_score - - freeze_duration_seconds + - publishing_duration_seconds - packet_loss_fraction + - receiving_duration_seconds + - freeze_duration_seconds + - total_pixels_in + - total_pixels_out type: object UserStats: properties: @@ -3796,6 +3961,28 @@ components: - info - session_stats type: object + VideoQuality: + properties: + resolution: + $ref: '#/components/schemas/VideoResolution' + x-stream-index: "001" + required: + - resolution + type: object + VideoResolution: + properties: + height: + format: int32 + type: integer + x-stream-index: "002" + width: + format: int32 + type: integer + x-stream-index: "001" + required: + - width + - height + type: object VideoSettings: properties: access_request_enabled: @@ -3982,7 +4169,7 @@ components: type: apiKey info: title: Stream API - version: v104.0.1 + version: v105.1.0 openapi: 3.0.3 paths: /video/call/{type}/{id}: diff --git a/openapi/video-openapi.json b/openapi/video-openapi.json index f4c4946f..ae6a0925 100644 --- a/openapi/video-openapi.json +++ b/openapi/video-openapi.json @@ -1 +1 @@ -{"components":{"schemas":{"APIError":{"nullable":true,"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"APNSRequest":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"type":"object"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AudioSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["default_device"],"type":"object"},"AzureRequest":{"properties":{"abs_account_name":{"type":"string","x-stream-index":"001"},"abs_client_id":{"type":"string","x-stream-index":"003"},"abs_client_secret":{"type":"string","x-stream-index":"004"},"abs_tenant_id":{"type":"string","x-stream-index":"002"}},"required":["abs_account_name","abs_tenant_id","abs_client_id","abs_client_secret"],"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BackstageSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"BlockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to block","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"BlockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"BroadcastSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsRequest","x-stream-index":"002"}},"type":"object"},"BroadcastSettingsResponse":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsResponse","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"CallEvent":{"nullable":true,"properties":{"description":{"type":"string","x-stream-index":"003"},"severity":{"format":"int32","type":"integer","x-stream-index":"002"},"timestamp":{"format":"int32","type":"integer","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"004"}},"required":["timestamp","severity","description","type"],"type":"object"},"CallIngressResponse":{"properties":{"rtmp":{"$ref":"#/components/schemas/RTMPIngress","x-stream-index":"001"}},"required":["rtmp"],"title":"Call inputs","type":"object"},"CallParticipantResponse":{"properties":{"joined_at":{"format":"date-time","type":"string","x-stream-index":"004"},"role":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_session_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_session_id","role","joined_at"],"type":"object"},"CallRecording":{"description":"CallRecording represents a recording of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the recording.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the recording.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the recording.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the recording.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallRequest":{"properties":{"created_by":{"$ref":"#/components/schemas/UserRequest","title":"The user that create this call","x-stream-index":"002"},"created_by_id":{"title":"The id of the user that create this call","type":"string","x-stream-index":"003"},"custom":{"type":"object","x-stream-index":"004"},"members":{"items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"type":"array","x-stream-index":"005"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"006"},"starts_at":{"format":"date-time","type":"string","x-stream-index":"007"},"team":{"type":"string","x-stream-index":"001"}},"type":"object"},"CallResponse":{"description":"Represents a call","properties":{"backstage":{"type":"boolean","x-stream-index":"015"},"blocked_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"017"},"cid":{"description":"The unique identifier for a call (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"004"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserResponse","description":"The user that created the call","title":"Created By","x-stream-index":"007"},"current_session_id":{"type":"string","x-stream-index":"005"},"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"008"},"egress":{"$ref":"#/components/schemas/EgressResponse","x-stream-index":"020"},"ended_at":{"description":"Date/time when the call ended","format":"date-time","title":"Ended At","type":"string","x-stream-index":"013"},"id":{"description":"Call ID","title":"ID","type":"string","x-stream-index":"003"},"ingress":{"$ref":"#/components/schemas/CallIngressResponse","x-stream-index":"018"},"recording":{"type":"boolean","x-stream-index":"011"},"session":{"$ref":"#/components/schemas/CallSessionResponse","x-stream-index":"019"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"016"},"starts_at":{"description":"Date/time when the call will start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"014"},"team":{"type":"string","x-stream-index":"006"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailResponse","x-stream-index":"021"},"transcribing":{"type":"boolean","x-stream-index":"012"},"type":{"description":"The type of call","title":"Type","type":"string","x-stream-index":"002"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"}},"required":["type","id","cid","current_session_id","created_by","custom","created_at","updated_at","recording","transcribing","backstage","settings","blocked_user_ids","ingress","egress"],"title":"Call","type":"object"},"CallSessionResponse":{"properties":{"accepted_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"007"},"ended_at":{"format":"date-time","type":"string","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"live_ended_at":{"format":"date-time","type":"string","x-stream-index":"009"},"live_started_at":{"format":"date-time","type":"string","x-stream-index":"008"},"participants":{"items":{"$ref":"#/components/schemas/CallParticipantResponse"},"type":"array","x-stream-index":"004"},"participants_count_by_role":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"005"},"rejected_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"006"},"started_at":{"format":"date-time","type":"string","x-stream-index":"002"}},"required":["id","participants","participants_count_by_role","rejected_by","accepted_by"],"type":"object"},"CallSettingsRequest":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettingsRequest","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettingsRequest","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsRequest","x-stream-index":"009"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettingsRequest","x-stream-index":"003"},"recording":{"$ref":"#/components/schemas/RecordSettingsRequest","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettingsRequest","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettingsRequest","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettingsRequest","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettingsRequest","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettingsRequest","x-stream-index":"004"}},"type":"object"},"CallSettingsResponse":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsResponse","x-stream-index":"003"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"004"},"recording":{"$ref":"#/components/schemas/RecordSettingsResponse","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"009"}},"required":["audio","backstage","broadcasting","geofencing","recording","ring","screensharing","transcription","video","thumbnails"],"type":"object"},"CallStateResponseFields":{"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"members":{"description":"List of call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"002"},"membership":{"$ref":"#/components/schemas/MemberResponse","description":"Current user membership object","title":"Membership","x-stream-index":"003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"004"}},"required":["call","members","own_capabilities"],"type":"object"},"CallStatsReportSummaryResponse":{"properties":{"call_cid":{"type":"string","x-stream-index":"001"},"call_session_id":{"type":"string","x-stream-index":"002"},"call_status":{"type":"string","x-stream-index":"004"},"first_stats_time":{"format":"date-time","type":"string","x-stream-index":"003"}},"required":["call_cid","call_session_id","first_stats_time","call_status"],"type":"object"},"CallTimeline":{"properties":{"events":{"items":{"$ref":"#/components/schemas/CallEvent"},"type":"array","x-stream-index":"001"}},"required":["events"],"type":"object"},"CallTranscription":{"description":"CallTranscription represents a transcription of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the transcription.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the transcription.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the transcription.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the transcription.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallTypeResponse":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"external_storage":{"type":"string","x-stream-index":"007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at"],"type":"object"},"CheckExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"CollectUserFeedbackRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"009"},"rating":{"format":"int32","maximum":5,"minimum":1,"type":"integer","x-stream-index":"007"},"reason":{"maxLength":1000,"type":"string","x-stream-index":"008"},"sdk":{"maxLength":50,"type":"string","x-stream-index":"005"},"sdk_version":{"maxLength":50,"type":"string","x-stream-index":"006"},"user_session_id":{"maxLength":50,"type":"string","x-stream-index":"004"}},"required":["user_session_id","sdk","sdk_version"],"type":"object"},"CollectUserFeedbackResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ConnectUserDetailsRequest":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"id":{"type":"string","x-stream-index":"001"},"image":{"type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"Coordinates":{"properties":{"latitude":{"format":"float","type":"number","x-stream-index":"001"},"longitude":{"format":"float","type":"number","x-stream-index":"002"}},"required":["latitude","longitude"],"type":"object"},"CreateCallTypeRequest":{"nullable":true,"properties":{"external_storage":{"type":"string","x-stream-index":"002.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettingsRequest","x-stream-index":"002.002"},"settings":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"002.003"}},"required":["name"],"type":"object"},"CreateCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreateExternalStorageRequest":{"nullable":true,"properties":{"aws_s3":{"$ref":"#/components/schemas/S3Request","x-stream-index":"003.004"},"azure_blob":{"$ref":"#/components/schemas/AzureRequest","x-stream-index":"003.006"},"bucket":{"type":"string","x-stream-index":"003.002"},"gcs_credentials":{"type":"string","x-stream-index":"003.005"},"name":{"type":"string","x-stream-index":"001"},"path":{"type":"string","x-stream-index":"003.003"},"storage_type":{"type":"string","x-stream-index":"003.001"}},"required":["name","storage_type","bucket"],"type":"object"},"CreateExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"CreateGuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"CreateGuestResponse":{"nullable":true,"properties":{"access_token":{"description":"the access token to authenticate the user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserResponse","title":"User","x-stream-index":"001"}},"required":["user","access_token","duration"],"type":"object"},"DeleteExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Device":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"disabled":{"description":"Whether device is disabled or not","title":"Disabled","type":"boolean","x-stream-index":"005"},"disabled_reason":{"description":"Reason explaining why device had been disabled","title":"Reason","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"003"},"push_provider":{"type":"string","x-stream-index":"001"},"push_provider_name":{"type":"string","x-stream-index":"002"},"voip":{"description":"When true the token is for Apple VoIP push notifications","title":"Voip","type":"boolean","x-stream-index":"007"}},"required":["push_provider","id","created_at"],"title":"Device","type":"object"},"EdgeResponse":{"properties":{"continent_code":{"type":"string","x-stream-index":"007.003"},"country_iso_code":{"type":"string","x-stream-index":"007.002"},"green":{"format":"int32","type":"integer","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"latency_test_url":{"type":"string","x-stream-index":"002"},"latitude":{"format":"float","type":"number","x-stream-index":"006.001"},"longitude":{"format":"float","type":"number","x-stream-index":"006.002"},"red":{"format":"int32","type":"integer","x-stream-index":"005"},"subdivision_iso_code":{"type":"string","x-stream-index":"007.001"},"yellow":{"format":"int32","type":"integer","x-stream-index":"004"}},"required":["id","latency_test_url","green","yellow","red","latitude","longitude","subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"EgressHLSResponse":{"properties":{"playlist_url":{"type":"string","x-stream-index":"001"}},"required":["playlist_url"],"type":"object"},"EgressRTMPResponse":{"properties":{"name":{"type":"string","x-stream-index":"001"},"stream_key":{"type":"string","x-stream-index":"003"},"url":{"type":"string","x-stream-index":"002"}},"required":["name","url","stream_key"],"type":"object"},"EgressResponse":{"properties":{"broadcasting":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/EgressHLSResponse","x-stream-index":"002"},"rtmps":{"items":{"$ref":"#/components/schemas/EgressRTMPResponse"},"type":"array","x-stream-index":"003"}},"required":["broadcasting","rtmps"],"type":"object"},"EndCallRequest":{"nullable":true,"type":"object"},"EndCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventNotificationSettingsRequest":{"properties":{"apns":{"$ref":"#/components/schemas/APNSRequest","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"ExternalStorageResponse":{"properties":{"bucket":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"path":{"type":"string","x-stream-index":"004"},"type":{"type":"string","x-stream-index":"002"}},"required":["name","type","bucket","path"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GeofenceSettingsRequest":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"type":"object"},"GetCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"type":"object"},"GetCallStatsResponse":{"nullable":true,"properties":{"average_jitter":{"format":"float","type":"number","x-stream-index":"005"},"average_latency":{"format":"float","type":"number","x-stream-index":"004"},"call_duration_seconds":{"format":"int64","type":"integer","x-stream-index":"002"},"call_timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"012"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"max_participants":{"format":"int32","type":"integer","x-stream-index":"006"},"participant_report":{"additionalProperties":{"$ref":"#/components/schemas/UserStats"},"type":"object","x-stream-index":"013"},"publishing_participants":{"format":"int32","type":"integer","x-stream-index":"007"},"quality_score":{"format":"int32","type":"integer","x-stream-index":"003"},"sfu_count":{"format":"int32","type":"integer","x-stream-index":"008"},"sfus":{"items":{"$ref":"#/components/schemas/SFULocationResponse"},"type":"array","x-stream-index":"011"},"total_freezes_duration":{"format":"float","type":"number","x-stream-index":"010"},"total_quality_limitation_duration":{"format":"float","type":"number","x-stream-index":"009"}},"required":["duration","call_duration_seconds","quality_score","average_latency","average_jitter","max_participants","publishing_participants","sfu_count","total_quality_limitation_duration","total_freezes_duration","sfus","participant_report"],"type":"object"},"GetCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"GetEdgesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"edges":{"items":{"$ref":"#/components/schemas/EdgeResponse"},"type":"array","x-stream-index":"001"}},"required":["edges","duration"],"type":"object"},"GetOrCreateCallRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/CallRequest","title":"ReadOnlyData","x-stream-index":"003"},"members_limit":{"format":"int32","maximum":100,"type":"integer","x-stream-index":"006"},"notify":{"description":"if provided it sends a notification event to the members for this call","title":"Notify","type":"boolean","x-stream-index":"005"},"ring":{"description":"if provided it sends a ring event to the members for this call","title":"Ring","type":"boolean","x-stream-index":"004"}},"type":"object"},"GetOrCreateCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"type":"boolean","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","created","duration"],"type":"object"},"GoLiveRequest":{"nullable":true,"properties":{"recording_storage_name":{"type":"string","x-stream-index":"005"},"start_hls":{"type":"boolean","x-stream-index":"003"},"start_recording":{"type":"boolean","x-stream-index":"004"},"start_transcription":{"type":"boolean","x-stream-index":"007"},"transcription_storage_name":{"type":"string","x-stream-index":"006"}},"type":"object"},"GoLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"HLSSettingsRequest":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettingsRequest","title":"LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"maximum":3,"minimum":1,"type":"array","x-stream-index":"003"}},"type":"object"},"HLSSettingsResponse":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","title":"Layout","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks","layout"],"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"LayoutSettingsRequest":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name"],"type":"object"},"ListCallTypeResponse":{"nullable":true,"properties":{"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallTypeResponse"},"type":"object","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["call_types","duration"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"external_storages":{"additionalProperties":{"$ref":"#/components/schemas/ExternalStorageResponse"},"type":"object","x-stream-index":"002"}},"required":["duration","external_storages"],"type":"object"},"ListRecordingsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"recordings":{"items":{"$ref":"#/components/schemas/CallRecording"},"type":"array","x-stream-index":"002"}},"required":["duration","recordings"],"type":"object"},"ListTranscriptionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"transcriptions":{"items":{"$ref":"#/components/schemas/CallTranscription"},"type":"array","x-stream-index":"002"}},"required":["duration","transcriptions"],"type":"object"},"Location":{"properties":{"continent_code":{"type":"string","x-stream-index":"003"},"country_iso_code":{"type":"string","x-stream-index":"002"},"subdivision_iso_code":{"type":"string","x-stream-index":"001"}},"required":["subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"MemberRequest":{"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"role":{"title":"Role","type":"string","x-stream-index":"002"},"user_id":{"minLength":1,"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"MemberResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"005"},"custom":{"description":"Custom member response data","title":"Custom","type":"object","x-stream-index":"004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"007"},"role":{"title":"Role","type":"string","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_id","custom","created_at","updated_at"],"type":"object"},"MuteUsersRequest":{"nullable":true,"properties":{"audio":{"title":"Audio","type":"boolean","x-stream-index":"005"},"mute_all_users":{"type":"boolean","x-stream-index":"003"},"screenshare":{"title":"Screenshare","type":"boolean","x-stream-index":"007"},"screenshare_audio":{"title":"ScreenshareAudio","type":"boolean","x-stream-index":"008"},"user_ids":{"items":{"type":"string"},"title":"UserIDs","type":"array","x-stream-index":"004"},"video":{"title":"Video","type":"boolean","x-stream-index":"006"}},"type":"object"},"MuteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"NotificationSettingsRequest":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"003"}},"type":"object"},"OwnCapability":{"description":"All possibility of string to use","enum":["block-users","create-call","create-reaction","end-call","join-backstage","join-call","join-ended-call","mute-users","pin-for-everyone","read-call","remove-call-member","screenshare","send-audio","send-video","start-broadcast-call","start-record-call","start-transcription-call","stop-broadcast-call","stop-record-call","stop-transcription-call","update-call","update-call-member","update-call-permissions","update-call-settings"],"title":"OwnCapability","type":"string"},"PinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"PinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"QueryCallStatsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"002"}},"type":"object"},"QueryCallStatsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"next":{"type":"string","x-stream-index":"003.001"},"prev":{"type":"string","x-stream-index":"003.002"},"reports":{"items":{"$ref":"#/components/schemas/CallStatsReportSummaryResponse"},"type":"array","x-stream-index":"001"}},"required":["reports","duration"],"type":"object"},"QueryCallsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"006.001"},"next":{"type":"string","x-stream-index":"006.002"},"prev":{"type":"string","x-stream-index":"006.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"004"},"watch":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryCallsResponse":{"nullable":true,"properties":{"calls":{"items":{"$ref":"#/components/schemas/CallStateResponseFields"},"title":"Calls","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["calls","duration"],"type":"object"},"QueryMembersRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"002"},"id":{"maxLength":64,"type":"string","x-stream-index":"001.002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":1,"type":"array","x-stream-index":"003"},"type":{"maxLength":64,"type":"string","x-stream-index":"001.001"}},"required":["type","id"],"type":"object"},"QueryMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["members","duration"],"type":"object"},"RTMPIngress":{"description":"RTMP input settings","properties":{"address":{"type":"string","x-stream-index":"001"}},"required":["address"],"title":"RTMP Ingress","type":"object"},"RecordSettingsRequest":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettingsRequest","title":"LayoutSettings","x-stream-index":"004"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"002"},"quality":{"enum":["360p","480p","720p","1080p","1440p"],"type":"string","x-stream-index":"003"}},"required":["mode"],"type":"object"},"RecordSettingsResponse":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","title":"Layout","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality","layout"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"RingSettingsRequest":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"001"}},"type":"object"},"S3Request":{"properties":{"s3_api_key":{"type":"string","x-stream-index":"002"},"s3_region":{"type":"string","x-stream-index":"001"},"s3_secret":{"type":"string","x-stream-index":"003"}},"required":["s3_region"],"type":"object"},"SFULocationResponse":{"properties":{"coordinates":{"$ref":"#/components/schemas/Coordinates","x-stream-index":"004"},"datacenter":{"type":"string","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001"},"location":{"$ref":"#/components/schemas/Location","x-stream-index":"003"}},"required":["id","datacenter","location","coordinates"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"ScreensharingSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"}},"type":"object"},"SendEventResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StartHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StartHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"playlist_url":{"type":"string","x-stream-index":"002"}},"required":["duration","playlist_url"],"type":"object"},"StartRecordingRequest":{"nullable":true,"properties":{"recording_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartRecordingResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StartTranscriptionRequest":{"nullable":true,"properties":{"transcription_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartTranscriptionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Stats":{"properties":{"average_seconds":{"format":"float","type":"number","x-stream-index":"001"},"max_seconds":{"format":"float","type":"number","x-stream-index":"002"}},"required":["average_seconds","max_seconds"],"type":"object"},"StopHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StopHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopLiveRequest":{"nullable":true,"type":"object"},"StopLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"StopRecordingRequest":{"nullable":true,"type":"object"},"StopRecordingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopTranscriptionRequest":{"nullable":true,"type":"object"},"StopTranscriptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"TargetResolutionRequest":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"type":"object"},"ThumbnailResponse":{"properties":{"image_url":{"type":"string","x-stream-index":"001"}},"required":["image_url"],"type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"ThumbnailsSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranscriptionSettingsRequest":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"UnblockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to unblock","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"UnblockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnpinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"UnpinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdateCallMembersRequest":{"nullable":true,"properties":{"remove_members":{"description":"List of userID to remove","items":{"type":"string"},"maximum":100,"title":"Remove Members","type":"array","x-stream-index":"003"},"update_members":{"description":"List of members to update or insert","items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"title":"Update Members","type":"array","x-stream-index":"004"}},"type":"object"},"UpdateCallMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"002"}},"required":["duration","members"],"type":"object"},"UpdateCallRequest":{"nullable":true,"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","description":"the settings to change for this call","title":"Settings Override","x-stream-index":"004"},"starts_at":{"description":"the time the call is scheduled to start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"005"}},"type":"object"},"UpdateCallResponse":{"description":"Represents a call","nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"title":"Call","type":"object"},"UpdateCallTypeRequest":{"nullable":true,"properties":{"external_storage":{"type":"string","x-stream-index":"002.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettingsRequest","x-stream-index":"002.002"},"settings":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"002.003"}},"type":"object"},"UpdateCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"UpdateExternalStorageRequest":{"nullable":true,"properties":{"aws_s3":{"$ref":"#/components/schemas/S3Request","x-stream-index":"003.004"},"azure_blob":{"$ref":"#/components/schemas/AzureRequest","x-stream-index":"003.006"},"bucket":{"type":"string","x-stream-index":"003.002"},"gcs_credentials":{"type":"string","x-stream-index":"003.005"},"path":{"type":"string","x-stream-index":"003.003"},"storage_type":{"type":"string","x-stream-index":"003.001"}},"required":["storage_type","bucket"],"type":"object"},"UpdateExternalStorageResponse":{"nullable":true,"properties":{"bucket":{"type":"string","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001.001"},"path":{"type":"string","x-stream-index":"001.004"},"type":{"type":"string","x-stream-index":"001.002"}},"required":["name","type","bucket","path","duration"],"type":"object"},"UpdateUserPermissionsRequest":{"nullable":true,"properties":{"grant_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"revoke_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"UpdateUserPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UserInfoResponse":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"image":{"type":"string","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"004"}},"required":["name","image","custom","roles"],"type":"object"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"001.004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"001.001"},"image":{"type":"string","x-stream-index":"001.003"},"language":{"type":"string","x-stream-index":"001.005"},"name":{"type":"string","x-stream-index":"001.002"},"role":{"type":"string","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"}},"required":["id","custom","language","role","teams","created_at","updated_at"],"type":"object"},"UserSessionStats":{"properties":{"freeze_duration_seconds":{"format":"float","type":"number","x-stream-index":"009"},"jitter":{"$ref":"#/components/schemas/Stats","x-stream-index":"006"},"latency":{"$ref":"#/components/schemas/Stats","x-stream-index":"007"},"os":{"type":"string","x-stream-index":"002"},"packet_loss_fraction":{"format":"float","type":"number","x-stream-index":"010"},"quality_score":{"format":"float","type":"number","x-stream-index":"008"},"sdk":{"type":"string","x-stream-index":"004"},"sdk_version":{"type":"string","x-stream-index":"005"},"timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"001"},"webrtc_version":{"type":"string","x-stream-index":"003"}},"required":["os","webrtc_version","sdk","sdk_version","quality_score","freeze_duration_seconds","packet_loss_fraction"],"type":"object"},"UserStats":{"properties":{"info":{"$ref":"#/components/schemas/UserInfoResponse","x-stream-index":"001"},"session_stats":{"additionalProperties":{"$ref":"#/components/schemas/UserSessionStats"},"type":"object","x-stream-index":"002"}},"required":["info","session_stats"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VideoSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolutionRequest","x-stream-index":"003"}},"type":"object"},"WSAuthMessageRequest":{"nullable":true,"properties":{"token":{"title":"Token","type":"string","x-stream-index":"002"},"user_details":{"$ref":"#/components/schemas/ConnectUserDetailsRequest","x-stream-index":"001"}},"required":["user_details","token"],"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v104.0.1"},"openapi":"3.0.3","paths":{"/video/call/members":{"post":{"description":"Query call members with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryMembers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call members"}},"/video/call/stats":{"post":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"QueryCallStats","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Call Stats"}},"/video/call/{type}/{id}":{"get":{"description":"\n\nRequired permissions:\n- ReadCall\n","operationId":"GetCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"members_limit","schema":{"format":"int32","maximum":100,"minimum":0,"type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"ring","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"005"}},{"in":"query","name":"notify","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"006"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call"},"patch":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"UpdateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallResponse"}}},"description":"Call"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call"},"post":{"description":"Gets or creates a new call\n\nSends events:\n- call.created\n- call.notification\n- call.ring\n\nRequired permissions:\n- CreateCall\n- ReadCall\n- UpdateCallSettings\n","operationId":"GetOrCreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create a call"}},"/video/call/{type}/{id}/block":{"post":{"description":"Block a user, preventing them from joining the call until they are unblocked.\n\nSends events:\n- call.blocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"BlockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Block user on a call"}},"/video/call/{type}/{id}/event":{"post":{"description":"Sends custom event to the call\n\nSends events:\n- custom\n\nRequired permissions:\n- SendEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send custom event"}},"/video/call/{type}/{id}/feedback/{session}":{"post":{"description":"\n\nRequired permissions:\n- JoinCall\n","operationId":"CollectUserFeedback","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Collect user feedback"}},"/video/call/{type}/{id}/go_live":{"post":{"description":"\n\nSends events:\n- call.live_started\n\nRequired permissions:\n- UpdateCall\n","operationId":"GoLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as live"}},"/video/call/{type}/{id}/mark_ended":{"post":{"description":"\n\nSends events:\n- call.ended\n\nRequired permissions:\n- EndCall\n","operationId":"EndCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"End call"}},"/video/call/{type}/{id}/members":{"post":{"description":"\n\nSends events:\n- call.member_added\n- call.member_removed\n- call.member_updated\n\nRequired permissions:\n- RemoveCallMember\n- UpdateCallMember\n- UpdateCallMemberRole\n","operationId":"UpdateCallMembers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Member"}},"/video/call/{type}/{id}/mute_users":{"post":{"description":"Mutes users in a call\n\nRequired permissions:\n- MuteUsers\n","operationId":"MuteUsers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute users"}},"/video/call/{type}/{id}/pin":{"post":{"description":"Pins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoPin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Pin"}},"/video/call/{type}/{id}/recordings":{"get":{"description":"Lists recordings\n\nRequired permissions:\n- ListRecordings\n","operationId":"ListRecordings","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRecordingsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List recordings"}},"/video/call/{type}/{id}/start_broadcasting":{"post":{"description":"Starts HLS broadcasting\n\nRequired permissions:\n- StartBroadcasting\n","operationId":"StartHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start HLS broadcasting"}},"/video/call/{type}/{id}/start_recording":{"post":{"description":"Starts recording\n\nSends events:\n- call.recording_started\n\nRequired permissions:\n- StartRecording\n","operationId":"StartRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start recording"}},"/video/call/{type}/{id}/start_transcription":{"post":{"description":"Starts transcription\n\nRequired permissions:\n- StartTranscription\n","operationId":"StartTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start transcription"}},"/video/call/{type}/{id}/stats/{session}":{"get":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"GetCallStats","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Stats"}},"/video/call/{type}/{id}/stop_broadcasting":{"post":{"description":"Stops HLS broadcasting\n\nRequired permissions:\n- StopBroadcasting\n","operationId":"StopHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop HLS broadcasting"}},"/video/call/{type}/{id}/stop_live":{"post":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"StopLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as not live"}},"/video/call/{type}/{id}/stop_recording":{"post":{"description":"Stops recording\n\nSends events:\n- call.recording_stopped\n\nRequired permissions:\n- StopRecording\n","operationId":"StopRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop recording"}},"/video/call/{type}/{id}/stop_transcription":{"post":{"description":"Stops transcription\n\nSends events:\n- call.transcription_stopped\n\nRequired permissions:\n- StopTranscription\n","operationId":"StopTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop transcription"}},"/video/call/{type}/{id}/transcriptions":{"get":{"description":"Lists transcriptions\n\nRequired permissions:\n- ListTranscriptions\n","operationId":"ListTranscriptions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTranscriptionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List transcriptions"}},"/video/call/{type}/{id}/unblock":{"post":{"description":"Removes the block for a user on a call. The user will be able to join the call again.\n\nSends events:\n- call.unblocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"UnblockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unblocks user on a call"}},"/video/call/{type}/{id}/unpin":{"post":{"description":"Unpins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoUnpin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unpin"}},"/video/call/{type}/{id}/user_permissions":{"post":{"description":"Updates user permissions\n\nSends events:\n- call.permissions_updated\n\nRequired permissions:\n- UpdateCallPermissions\n","operationId":"UpdateUserPermissions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update user permissions"}},"/video/calls":{"post":{"description":"Query calls with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryCalls","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call"}},"/video/calltypes":{"get":{"description":"\n","operationId":"ListCallTypes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List Call Type","tags":["Server-side"]},"post":{"description":"\n","operationId":"CreateCallType","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create Call Type","tags":["Server-side"]}},"/video/calltypes/{name}":{"delete":{"description":"\n","operationId":"DeleteCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete Call Type","tags":["Server-side"]},"get":{"description":"\n","operationId":"GetCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Type","tags":["Server-side"]},"put":{"description":"\n","operationId":"UpdateCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Type","tags":["Server-side"]}},"/video/connect":{"get":{"description":"Establishes WebSocket connection for user to video\n\nSends events:\n- connection.ok\n- health.check\n","operationId":"VideoConnect","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WSAuthMessageRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Video Connect (WebSocket)"}},"/video/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device"},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices"},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device"}},"/video/edges":{"get":{"description":"Returns the list of all edges available for video calls.\n","operationId":"GetEdges","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEdgesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Edges"}},"/video/external_storage":{"get":{"description":"Lists external storage\n","operationId":"ListExternalStorage","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List external storage","tags":["Settings"]},"post":{"description":"Creates new external storage\n","operationId":"CreateExternalStorage","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalStorageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create external storage","tags":["Settings"]}},"/video/external_storage/{name}":{"delete":{"description":"Deletes external storage\n","operationId":"DeleteExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete external storage","tags":["Settings"]},"put":{"description":"\n","operationId":"UpdateExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalStorageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update External Storage","tags":["Server-side"]}},"/video/external_storage/{name}/check":{"get":{"description":"\n","operationId":"CheckExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check External Storage","tags":["Server-side"]}},"/video/guest":{"post":{"description":"\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create Guest"}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file +{"components":{"schemas":{"APIError":{"nullable":true,"properties":{"StatusCode":{"description":"Response HTTP status code","format":"int32","title":"Status code","type":"integer","x-stream-index":"004"},"code":{"description":"API error code","format":"int32","title":"Code","type":"integer","x-stream-index":"001"},"details":{"description":"Additional error-specific information","items":{"type":"integer"},"title":"Details","type":"array","x-stream-index":"007"},"duration":{"description":"Request duration","title":"Duration","type":"string","x-stream-index":"005"},"exception_fields":{"additionalProperties":{"type":"string"},"description":"Additional error info","title":"Exception fields","type":"object","x-stream-index":"003"},"message":{"description":"Message describing an error","title":"Message","type":"string","x-stream-index":"002"},"more_info":{"description":"URL with additional information","title":"More info","type":"string","x-stream-index":"006"}},"required":["code","message","StatusCode","duration","more_info","details"],"title":"Error response","type":"object"},"APNS":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"required":["title","body"],"type":"object"},"APNSRequest":{"properties":{"body":{"type":"string","x-stream-index":"002"},"title":{"type":"string","x-stream-index":"001"}},"type":"object"},"AudioSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettings","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["access_request_enabled","opus_dtx_enabled","redundant_coding_enabled","mic_default_on","speaker_default_on","default_device"],"type":"object"},"AudioSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"001"},"default_device":{"enum":["speaker","earpiece"],"type":"string","x-stream-index":"006"},"mic_default_on":{"type":"boolean","x-stream-index":"004"},"noise_cancellation":{"$ref":"#/components/schemas/NoiseCancellationSettingsRequest","x-stream-index":"007"},"opus_dtx_enabled":{"type":"boolean","x-stream-index":"002"},"redundant_coding_enabled":{"type":"boolean","x-stream-index":"003"},"speaker_default_on":{"type":"boolean","x-stream-index":"005"}},"required":["default_device"],"type":"object"},"AzureRequest":{"properties":{"abs_account_name":{"type":"string","x-stream-index":"001"},"abs_client_id":{"type":"string","x-stream-index":"003"},"abs_client_secret":{"type":"string","x-stream-index":"004"},"abs_tenant_id":{"type":"string","x-stream-index":"002"}},"required":["abs_account_name","abs_tenant_id","abs_client_id","abs_client_secret"],"type":"object"},"BackstageSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"BackstageSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"BlockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to block","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"BlockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"BroadcastSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsRequest","x-stream-index":"002"}},"type":"object"},"BroadcastSettingsResponse":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/HLSSettingsResponse","x-stream-index":"002"}},"required":["enabled","hls"],"type":"object"},"CallEvent":{"nullable":true,"properties":{"description":{"type":"string","x-stream-index":"004"},"end_timestamp":{"format":"int64","type":"integer","x-stream-index":"002"},"severity":{"format":"int32","type":"integer","x-stream-index":"003"},"timestamp":{"format":"int32","type":"integer","x-stream-index":"001"},"type":{"type":"string","x-stream-index":"005"}},"required":["timestamp","end_timestamp","severity","description","type"],"type":"object"},"CallIngressResponse":{"properties":{"rtmp":{"$ref":"#/components/schemas/RTMPIngress","x-stream-index":"001"}},"required":["rtmp"],"title":"Call inputs","type":"object"},"CallParticipantResponse":{"properties":{"joined_at":{"format":"date-time","type":"string","x-stream-index":"004"},"role":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_session_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_session_id","role","joined_at"],"type":"object"},"CallRecording":{"description":"CallRecording represents a recording of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the recording.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the recording.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the recording.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the recording.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallRequest":{"properties":{"created_by":{"$ref":"#/components/schemas/UserRequest","title":"The user that create this call","x-stream-index":"002"},"created_by_id":{"title":"The id of the user that create this call","type":"string","x-stream-index":"003"},"custom":{"type":"object","x-stream-index":"004"},"members":{"items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"type":"array","x-stream-index":"005"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"006"},"starts_at":{"format":"date-time","type":"string","x-stream-index":"007"},"team":{"type":"string","x-stream-index":"001"}},"type":"object"},"CallResponse":{"description":"Represents a call","properties":{"backstage":{"type":"boolean","x-stream-index":"015"},"blocked_user_ids":{"items":{"type":"string"},"type":"array","x-stream-index":"017"},"cid":{"description":"The unique identifier for a call (\u003ctype\u003e:\u003cid\u003e)","title":"CID","type":"string","x-stream-index":"004"},"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"009"},"created_by":{"$ref":"#/components/schemas/UserResponse","description":"The user that created the call","title":"Created By","x-stream-index":"007"},"current_session_id":{"type":"string","x-stream-index":"005"},"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"008"},"egress":{"$ref":"#/components/schemas/EgressResponse","x-stream-index":"020"},"ended_at":{"description":"Date/time when the call ended","format":"date-time","title":"Ended At","type":"string","x-stream-index":"013"},"id":{"description":"Call ID","title":"ID","type":"string","x-stream-index":"003"},"ingress":{"$ref":"#/components/schemas/CallIngressResponse","x-stream-index":"018"},"recording":{"type":"boolean","x-stream-index":"011"},"session":{"$ref":"#/components/schemas/CallSessionResponse","x-stream-index":"019"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"016"},"starts_at":{"description":"Date/time when the call will start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"014"},"team":{"type":"string","x-stream-index":"006"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailResponse","x-stream-index":"021"},"transcribing":{"type":"boolean","x-stream-index":"012"},"type":{"description":"The type of call","title":"Type","type":"string","x-stream-index":"002"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"010"}},"required":["type","id","cid","current_session_id","created_by","custom","created_at","updated_at","recording","transcribing","backstage","settings","blocked_user_ids","ingress","egress"],"title":"Call","type":"object"},"CallSessionResponse":{"properties":{"accepted_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"007"},"ended_at":{"format":"date-time","type":"string","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"live_ended_at":{"format":"date-time","type":"string","x-stream-index":"009"},"live_started_at":{"format":"date-time","type":"string","x-stream-index":"008"},"participants":{"items":{"$ref":"#/components/schemas/CallParticipantResponse"},"type":"array","x-stream-index":"004"},"participants_count_by_role":{"additionalProperties":{"format":"int32","type":"integer"},"type":"object","x-stream-index":"005"},"rejected_by":{"additionalProperties":{"format":"date-time","type":"string"},"type":"object","x-stream-index":"006"},"started_at":{"format":"date-time","type":"string","x-stream-index":"002"}},"required":["id","participants","participants_count_by_role","rejected_by","accepted_by"],"type":"object"},"CallSettingsRequest":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettingsRequest","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettingsRequest","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsRequest","x-stream-index":"009"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettingsRequest","x-stream-index":"003"},"recording":{"$ref":"#/components/schemas/RecordSettingsRequest","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettingsRequest","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettingsRequest","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettingsRequest","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettingsRequest","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettingsRequest","x-stream-index":"004"}},"type":"object"},"CallSettingsResponse":{"properties":{"audio":{"$ref":"#/components/schemas/AudioSettings","x-stream-index":"001"},"backstage":{"$ref":"#/components/schemas/BackstageSettings","x-stream-index":"002"},"broadcasting":{"$ref":"#/components/schemas/BroadcastSettingsResponse","x-stream-index":"003"},"geofencing":{"$ref":"#/components/schemas/GeofenceSettings","x-stream-index":"004"},"recording":{"$ref":"#/components/schemas/RecordSettingsResponse","x-stream-index":"005"},"ring":{"$ref":"#/components/schemas/RingSettings","x-stream-index":"006"},"screensharing":{"$ref":"#/components/schemas/ScreensharingSettings","x-stream-index":"007"},"thumbnails":{"$ref":"#/components/schemas/ThumbnailsSettings","x-stream-index":"010"},"transcription":{"$ref":"#/components/schemas/TranscriptionSettings","x-stream-index":"008"},"video":{"$ref":"#/components/schemas/VideoSettings","x-stream-index":"009"}},"required":["audio","backstage","broadcasting","geofencing","recording","ring","screensharing","transcription","video","thumbnails"],"type":"object"},"CallStateResponseFields":{"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"members":{"description":"List of call members","items":{"$ref":"#/components/schemas/MemberResponse"},"title":"Members","type":"array","x-stream-index":"002"},"membership":{"$ref":"#/components/schemas/MemberResponse","description":"Current user membership object","title":"Membership","x-stream-index":"003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"004"}},"required":["call","members","own_capabilities"],"type":"object"},"CallStatsReportSummaryResponse":{"properties":{"call_cid":{"type":"string","x-stream-index":"001"},"call_session_id":{"type":"string","x-stream-index":"002"},"call_status":{"type":"string","x-stream-index":"004"},"first_stats_time":{"format":"date-time","type":"string","x-stream-index":"003"}},"required":["call_cid","call_session_id","first_stats_time","call_status"],"type":"object"},"CallTimeline":{"properties":{"events":{"items":{"$ref":"#/components/schemas/CallEvent"},"type":"array","x-stream-index":"001"}},"required":["events"],"type":"object"},"CallTranscription":{"description":"CallTranscription represents a transcription of a call.","properties":{"end_time":{"format":"date-time","title":"The end time of the transcription.","type":"string","x-stream-index":"004"},"filename":{"title":"The filename of the transcription.","type":"string","x-stream-index":"001"},"start_time":{"format":"date-time","title":"The start time of the transcription.","type":"string","x-stream-index":"003"},"url":{"title":"The URL of the transcription.","type":"string","x-stream-index":"002"}},"required":["filename","url","start_time","end_time"],"type":"object"},"CallTypeResponse":{"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"005"},"external_storage":{"type":"string","x-stream-index":"007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at"],"type":"object"},"CheckExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"CollectUserFeedbackRequest":{"nullable":true,"properties":{"custom":{"type":"object","x-stream-index":"009"},"rating":{"format":"int32","maximum":5,"minimum":1,"type":"integer","x-stream-index":"007"},"reason":{"maxLength":1000,"type":"string","x-stream-index":"008"},"sdk":{"maxLength":50,"type":"string","x-stream-index":"005"},"sdk_version":{"maxLength":50,"type":"string","x-stream-index":"006"},"user_session_id":{"maxLength":50,"type":"string","x-stream-index":"004"}},"required":["user_session_id","sdk","sdk_version"],"type":"object"},"CollectUserFeedbackResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"ConnectUserDetailsRequest":{"properties":{"custom":{"type":"object","x-stream-index":"004"},"id":{"type":"string","x-stream-index":"001"},"image":{"type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"type":"string","x-stream-index":"002"}},"required":["id"],"type":"object"},"Coordinates":{"properties":{"latitude":{"format":"float","type":"number","x-stream-index":"001"},"longitude":{"format":"float","type":"number","x-stream-index":"002"}},"required":["latitude","longitude"],"type":"object"},"CreateCallTypeRequest":{"nullable":true,"properties":{"external_storage":{"type":"string","x-stream-index":"002.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettingsRequest","x-stream-index":"002.002"},"settings":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"002.003"}},"required":["name"],"type":"object"},"CreateCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"CreateDeviceRequest":{"nullable":true,"properties":{"id":{"maxLength":255,"minLength":1,"type":"string","x-stream-index":"001"},"push_provider":{"enum":["firebase","apn","huawei","xiaomi"],"type":"string","x-stream-index":"002"},"push_provider_name":{"type":"string","x-stream-index":"003"},"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"005.002"},"user_id":{"type":"string","x-stream-index":"005.001"},"voip_token":{"type":"boolean","x-stream-index":"004"}},"type":"object"},"CreateExternalStorageRequest":{"nullable":true,"properties":{"aws_s3":{"$ref":"#/components/schemas/S3Request","x-stream-index":"003.004"},"azure_blob":{"$ref":"#/components/schemas/AzureRequest","x-stream-index":"003.006"},"bucket":{"type":"string","x-stream-index":"003.002"},"gcs_credentials":{"type":"string","x-stream-index":"003.005"},"name":{"type":"string","x-stream-index":"001"},"path":{"type":"string","x-stream-index":"003.003"},"storage_type":{"type":"string","x-stream-index":"003.001"}},"required":["name","storage_type","bucket"],"type":"object"},"CreateExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"CreateGuestRequest":{"nullable":true,"properties":{"user":{"$ref":"#/components/schemas/UserRequest","x-stream-index":"001"}},"required":["user"],"type":"object"},"CreateGuestResponse":{"nullable":true,"properties":{"access_token":{"description":"the access token to authenticate the user","title":"Access token","type":"string","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"user":{"$ref":"#/components/schemas/UserResponse","title":"User","x-stream-index":"001"}},"required":["user","access_token","duration"],"type":"object"},"DeleteExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Device":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"disabled":{"description":"Whether device is disabled or not","title":"Disabled","type":"boolean","x-stream-index":"005"},"disabled_reason":{"description":"Reason explaining why device had been disabled","title":"Reason","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"003"},"push_provider":{"type":"string","x-stream-index":"001"},"push_provider_name":{"type":"string","x-stream-index":"002"},"voip":{"description":"When true the token is for Apple VoIP push notifications","title":"Voip","type":"boolean","x-stream-index":"007"}},"required":["push_provider","id","created_at"],"title":"Device","type":"object"},"EdgeResponse":{"properties":{"continent_code":{"type":"string","x-stream-index":"007.003"},"country_iso_code":{"type":"string","x-stream-index":"007.002"},"green":{"format":"int32","type":"integer","x-stream-index":"003"},"id":{"type":"string","x-stream-index":"001"},"latency_test_url":{"type":"string","x-stream-index":"002"},"latitude":{"format":"float","type":"number","x-stream-index":"006.001"},"longitude":{"format":"float","type":"number","x-stream-index":"006.002"},"red":{"format":"int32","type":"integer","x-stream-index":"005"},"subdivision_iso_code":{"type":"string","x-stream-index":"007.001"},"yellow":{"format":"int32","type":"integer","x-stream-index":"004"}},"required":["id","latency_test_url","green","yellow","red","latitude","longitude","subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"EgressHLSResponse":{"properties":{"playlist_url":{"type":"string","x-stream-index":"001"}},"required":["playlist_url"],"type":"object"},"EgressRTMPResponse":{"properties":{"name":{"type":"string","x-stream-index":"001"},"stream_key":{"type":"string","x-stream-index":"003"},"url":{"type":"string","x-stream-index":"002"}},"required":["name","url","stream_key"],"type":"object"},"EgressResponse":{"properties":{"broadcasting":{"type":"boolean","x-stream-index":"001"},"hls":{"$ref":"#/components/schemas/EgressHLSResponse","x-stream-index":"002"},"rtmps":{"items":{"$ref":"#/components/schemas/EgressRTMPResponse"},"type":"array","x-stream-index":"003"}},"required":["broadcasting","rtmps"],"type":"object"},"EndCallRequest":{"nullable":true,"type":"object"},"EndCallResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"EventNotificationSettings":{"properties":{"apns":{"$ref":"#/components/schemas/APNS","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","apns"],"type":"object"},"EventNotificationSettingsRequest":{"properties":{"apns":{"$ref":"#/components/schemas/APNSRequest","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"ExternalStorageResponse":{"properties":{"bucket":{"type":"string","x-stream-index":"003"},"name":{"type":"string","x-stream-index":"001"},"path":{"type":"string","x-stream-index":"004"},"type":{"type":"string","x-stream-index":"002"}},"required":["name","type","bucket","path"],"type":"object"},"GeofenceSettings":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"required":["names"],"type":"object"},"GeofenceSettingsRequest":{"properties":{"names":{"items":{"type":"string"},"type":"array","x-stream-index":"001"}},"type":"object"},"GeolocationResult":{"properties":{"AccuracyRadius":{"format":"int32","type":"integer","writeOnly":true,"x-stream-index":"003"},"continent_code":{"type":"string","x-stream-index":"002.003"},"country_iso_code":{"type":"string","x-stream-index":"002.002"},"latitude":{"format":"float","type":"number","x-stream-index":"001.001"},"longitude":{"format":"float","type":"number","x-stream-index":"001.002"},"subdivision_iso_code":{"type":"string","x-stream-index":"002.001"}},"required":["latitude","longitude","subdivision_iso_code","country_iso_code","continent_code","AccuracyRadius"],"type":"object"},"GetCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"type":"object"},"GetCallStatsResponse":{"nullable":true,"properties":{"average_jitter":{"format":"float","type":"number","x-stream-index":"005"},"average_latency":{"format":"float","type":"number","x-stream-index":"004"},"call_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"002"},"call_timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"014"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"max_jitter":{"format":"float","type":"number","x-stream-index":"007"},"max_latency":{"format":"float","type":"number","x-stream-index":"006"},"max_participants":{"format":"int32","type":"integer","x-stream-index":"008"},"participant_report":{"additionalProperties":{"$ref":"#/components/schemas/UserStats"},"type":"object","x-stream-index":"015"},"publishing_participants":{"format":"int32","type":"integer","x-stream-index":"009"},"quality_score":{"format":"int32","type":"integer","x-stream-index":"003"},"sfu_count":{"format":"int32","type":"integer","x-stream-index":"010"},"sfus":{"items":{"$ref":"#/components/schemas/SFULocationResponse"},"type":"array","x-stream-index":"013"},"total_freezes_duration":{"format":"float","type":"number","x-stream-index":"012"},"total_quality_limitation_duration":{"format":"float","type":"number","x-stream-index":"011"}},"required":["duration","call_duration_seconds","quality_score","average_latency","average_jitter","max_latency","max_jitter","max_participants","publishing_participants","sfu_count","total_quality_limitation_duration","total_freezes_duration","sfus","participant_report"],"type":"object"},"GetCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"GetEdgesResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"edges":{"items":{"$ref":"#/components/schemas/EdgeResponse"},"type":"array","x-stream-index":"001"}},"required":["edges","duration"],"type":"object"},"GetOrCreateCallRequest":{"nullable":true,"properties":{"data":{"$ref":"#/components/schemas/CallRequest","title":"ReadOnlyData","x-stream-index":"003"},"members_limit":{"format":"int32","maximum":100,"type":"integer","x-stream-index":"006"},"notify":{"description":"if provided it sends a notification event to the members for this call","title":"Notify","type":"boolean","x-stream-index":"005"},"ring":{"description":"if provided it sends a ring event to the members for this call","title":"Ring","type":"boolean","x-stream-index":"004"}},"type":"object"},"GetOrCreateCallResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"created":{"type":"boolean","x-stream-index":"002"},"duration":{"type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","created","duration"],"type":"object"},"GoLiveRequest":{"nullable":true,"properties":{"recording_storage_name":{"type":"string","x-stream-index":"005"},"start_hls":{"type":"boolean","x-stream-index":"003"},"start_recording":{"type":"boolean","x-stream-index":"004"},"start_transcription":{"type":"boolean","x-stream-index":"007"},"transcription_storage_name":{"type":"string","x-stream-index":"006"}},"type":"object"},"GoLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"HLSSettingsRequest":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettingsRequest","title":"LayoutSettings","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"maximum":3,"minimum":1,"type":"array","x-stream-index":"003"}},"type":"object"},"HLSSettingsResponse":{"properties":{"auto_on":{"type":"boolean","x-stream-index":"001"},"enabled":{"type":"boolean","x-stream-index":"002"},"layout":{"$ref":"#/components/schemas/LayoutSettings","title":"Layout","x-stream-index":"004"},"quality_tracks":{"items":{"type":"string"},"type":"array","x-stream-index":"003"}},"required":["auto_on","enabled","quality_tracks","layout"],"type":"object"},"LayoutSettings":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name","external_app_url","external_css_url"],"type":"object"},"LayoutSettingsRequest":{"properties":{"external_app_url":{"type":"string","x-stream-index":"003"},"external_css_url":{"type":"string","x-stream-index":"004"},"name":{"enum":["spotlight","grid","single-participant","mobile","custom"],"type":"string","x-stream-index":"001"},"options":{"type":"object","x-stream-index":"002"}},"required":["name"],"type":"object"},"ListCallTypeResponse":{"nullable":true,"properties":{"call_types":{"additionalProperties":{"$ref":"#/components/schemas/CallTypeResponse"},"type":"object","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["call_types","duration"],"type":"object"},"ListDevicesResponse":{"nullable":true,"properties":{"devices":{"description":"List of devices","items":{"$ref":"#/components/schemas/Device"},"title":"Devices","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"002.001"}},"required":["devices","duration"],"type":"object"},"ListExternalStorageResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"external_storages":{"additionalProperties":{"$ref":"#/components/schemas/ExternalStorageResponse"},"type":"object","x-stream-index":"002"}},"required":["duration","external_storages"],"type":"object"},"ListRecordingsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"recordings":{"items":{"$ref":"#/components/schemas/CallRecording"},"type":"array","x-stream-index":"002"}},"required":["duration","recordings"],"type":"object"},"ListTranscriptionsResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"},"transcriptions":{"items":{"$ref":"#/components/schemas/CallTranscription"},"type":"array","x-stream-index":"002"}},"required":["duration","transcriptions"],"type":"object"},"Location":{"properties":{"continent_code":{"type":"string","x-stream-index":"003"},"country_iso_code":{"type":"string","x-stream-index":"002"},"subdivision_iso_code":{"type":"string","x-stream-index":"001"}},"required":["subdivision_iso_code","country_iso_code","continent_code"],"type":"object"},"MemberRequest":{"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"role":{"title":"Role","type":"string","x-stream-index":"002"},"user_id":{"minLength":1,"title":"User ID","type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"MemberResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"005"},"custom":{"description":"Custom member response data","title":"Custom","type":"object","x-stream-index":"004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"007"},"role":{"title":"Role","type":"string","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"006"},"user":{"$ref":"#/components/schemas/UserResponse","x-stream-index":"001"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user","user_id","custom","created_at","updated_at"],"type":"object"},"MuteUsersRequest":{"nullable":true,"properties":{"audio":{"title":"Audio","type":"boolean","x-stream-index":"005"},"mute_all_users":{"type":"boolean","x-stream-index":"003"},"screenshare":{"title":"Screenshare","type":"boolean","x-stream-index":"007"},"screenshare_audio":{"title":"ScreenshareAudio","type":"boolean","x-stream-index":"008"},"user_ids":{"items":{"type":"string"},"title":"UserIDs","type":"array","x-stream-index":"004"},"video":{"title":"Video","type":"boolean","x-stream-index":"006"}},"type":"object"},"MuteUsersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"NoiseCancellationSettings":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode"],"type":"object"},"NoiseCancellationSettingsRequest":{"properties":{"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"NotificationSettings":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettings","x-stream-index":"003"}},"required":["enabled","call_live_started","session_started","call_notification","call_ring"],"type":"object"},"NotificationSettingsRequest":{"properties":{"call_live_started":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"002"},"call_notification":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"004"},"call_ring":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"session_started":{"$ref":"#/components/schemas/EventNotificationSettingsRequest","x-stream-index":"003"}},"type":"object"},"OwnCapability":{"description":"All possibility of string to use","enum":["block-users","create-call","create-reaction","enable-noise-cancellation","end-call","join-backstage","join-call","join-ended-call","mute-users","pin-for-everyone","read-call","remove-call-member","screenshare","send-audio","send-video","start-broadcast-call","start-record-call","start-transcription-call","stop-broadcast-call","stop-record-call","stop-transcription-call","update-call","update-call-member","update-call-permissions","update-call-settings"],"title":"OwnCapability","type":"string"},"PinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"PinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"QueryCallStatsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"001"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"002"}},"type":"object"},"QueryCallStatsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"next":{"type":"string","x-stream-index":"003.001"},"prev":{"type":"string","x-stream-index":"003.002"},"reports":{"items":{"$ref":"#/components/schemas/CallStatsReportSummaryResponse"},"type":"array","x-stream-index":"001"}},"required":["reports","duration"],"type":"object"},"QueryCallsRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"003"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"006.001"},"next":{"type":"string","x-stream-index":"006.002"},"prev":{"type":"string","x-stream-index":"006.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":2,"type":"array","x-stream-index":"004"},"watch":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"QueryCallsResponse":{"nullable":true,"properties":{"calls":{"items":{"$ref":"#/components/schemas/CallStateResponseFields"},"title":"Calls","type":"array","x-stream-index":"001"},"duration":{"type":"string","x-stream-index":"003.001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["calls","duration"],"type":"object"},"QueryMembersRequest":{"nullable":true,"properties":{"filter_conditions":{"type":"object","x-stream-index":"002"},"id":{"maxLength":64,"type":"string","x-stream-index":"001.002"},"limit":{"format":"int32","maximum":25,"minimum":0,"type":"integer","x-stream-index":"004.001"},"next":{"type":"string","x-stream-index":"004.002"},"prev":{"type":"string","x-stream-index":"004.003"},"sort":{"items":{"$ref":"#/components/schemas/SortParamRequest"},"maximum":1,"type":"array","x-stream-index":"003"},"type":{"maxLength":64,"type":"string","x-stream-index":"001.001"}},"required":["type","id"],"type":"object"},"QueryMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"003.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001"},"next":{"type":"string","x-stream-index":"002.001"},"prev":{"type":"string","x-stream-index":"002.002"}},"required":["members","duration"],"type":"object"},"RTMPIngress":{"description":"RTMP input settings","properties":{"address":{"type":"string","x-stream-index":"001"}},"required":["address"],"title":"RTMP Ingress","type":"object"},"RecordSettingsRequest":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettingsRequest","title":"LayoutSettings","x-stream-index":"004"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"002"},"quality":{"enum":["360p","480p","720p","1080p","1440p"],"type":"string","x-stream-index":"003"}},"required":["mode"],"type":"object"},"RecordSettingsResponse":{"properties":{"audio_only":{"type":"boolean","x-stream-index":"001"},"layout":{"$ref":"#/components/schemas/LayoutSettings","title":"Layout","x-stream-index":"004"},"mode":{"type":"string","x-stream-index":"002"},"quality":{"type":"string","x-stream-index":"003"}},"required":["audio_only","mode","quality","layout"],"type":"object"},"Response":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001"}},"required":["duration"],"type":"object"},"RingSettings":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["incoming_call_timeout_ms","auto_cancel_timeout_ms"],"type":"object"},"RingSettingsRequest":{"properties":{"auto_cancel_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"002"},"incoming_call_timeout_ms":{"format":"int32","maximum":180000,"minimum":5000,"type":"integer","x-stream-index":"001"}},"type":"object"},"S3Request":{"properties":{"s3_api_key":{"type":"string","x-stream-index":"002"},"s3_region":{"type":"string","x-stream-index":"001"},"s3_secret":{"type":"string","x-stream-index":"003"}},"required":["s3_region"],"type":"object"},"SFULocationResponse":{"properties":{"coordinates":{"$ref":"#/components/schemas/Coordinates","x-stream-index":"004"},"datacenter":{"type":"string","x-stream-index":"002"},"id":{"type":"string","x-stream-index":"001"},"location":{"$ref":"#/components/schemas/Location","x-stream-index":"003"}},"required":["id","datacenter","location","coordinates"],"type":"object"},"ScreensharingSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled","access_request_enabled"],"type":"object"},"ScreensharingSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"SendEventRequest":{"nullable":true,"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"}},"type":"object"},"SendEventResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"SortParamRequest":{"nullable":true,"properties":{"direction":{"description":"Direction of sorting, -1 for descending, 1 for ascending","format":"int32","title":"Direction","type":"integer","x-stream-index":"002"},"field":{"description":"Name of field to sort by","title":"Field","type":"string","x-stream-index":"001"}},"type":"object"},"StartHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StartHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"playlist_url":{"type":"string","x-stream-index":"002"}},"required":["duration","playlist_url"],"type":"object"},"StartRecordingRequest":{"nullable":true,"properties":{"recording_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartRecordingResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StartTranscriptionRequest":{"nullable":true,"properties":{"transcription_external_storage":{"type":"string","x-stream-index":"002"}},"type":"object"},"StartTranscriptionResponse":{"nullable":true,"properties":{"duration":{"type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Stats":{"properties":{"average_seconds":{"format":"float","type":"number","x-stream-index":"001"},"max_seconds":{"format":"float","type":"number","x-stream-index":"002"}},"required":["average_seconds","max_seconds"],"type":"object"},"StopHLSBroadcastingRequest":{"nullable":true,"type":"object"},"StopHLSBroadcastingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopLiveRequest":{"nullable":true,"type":"object"},"StopLiveResponse":{"nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"}},"required":["call","duration"],"type":"object"},"StopRecordingRequest":{"nullable":true,"type":"object"},"StopRecordingResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"StopTranscriptionRequest":{"nullable":true,"type":"object"},"StopTranscriptionResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"Subsession":{"properties":{"sfu_id":{"type":"string","x-stream-index":"003"},"ts_ended_at":{"format":"int64","type":"integer","x-stream-index":"002"},"ts_joined_at":{"format":"int64","type":"integer","x-stream-index":"001"}},"required":["ts_joined_at","ts_ended_at","sfu_id"],"type":"object"},"TargetResolution":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"required":["width","height","bitrate"],"type":"object"},"TargetResolutionRequest":{"properties":{"bitrate":{"format":"int32","maximum":6000000,"type":"integer","x-stream-index":"003"},"height":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"002"},"width":{"format":"int32","maximum":2560,"minimum":240,"type":"integer","x-stream-index":"001"}},"type":"object"},"ThumbnailResponse":{"properties":{"image_url":{"type":"string","x-stream-index":"001"}},"required":["image_url"],"type":"object"},"ThumbnailsSettings":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"required":["enabled"],"type":"object"},"ThumbnailsSettingsRequest":{"properties":{"enabled":{"type":"boolean","x-stream-index":"001"}},"type":"object"},"TranscriptionSettings":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"required":["mode","closed_caption_mode"],"type":"object"},"TranscriptionSettingsRequest":{"properties":{"closed_caption_mode":{"type":"string","x-stream-index":"002"},"mode":{"enum":["available","disabled","auto-on"],"type":"string","x-stream-index":"001"}},"type":"object"},"UnblockUserRequest":{"nullable":true,"properties":{"user_id":{"description":"the user to unblock","title":"UserID","type":"string","x-stream-index":"003"}},"required":["user_id"],"type":"object"},"UnblockUserResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UnpinRequest":{"nullable":true,"properties":{"session_id":{"type":"string","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"002"}},"required":["user_id","session_id"],"type":"object"},"UnpinResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UpdateCallMembersRequest":{"nullable":true,"properties":{"remove_members":{"description":"List of userID to remove","items":{"type":"string"},"maximum":100,"title":"Remove Members","type":"array","x-stream-index":"003"},"update_members":{"description":"List of members to update or insert","items":{"$ref":"#/components/schemas/MemberRequest"},"maximum":100,"title":"Update Members","type":"array","x-stream-index":"004"}},"type":"object"},"UpdateCallMembersResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"002"}},"required":["duration","members"],"type":"object"},"UpdateCallRequest":{"nullable":true,"properties":{"custom":{"description":"Custom data for this object","title":"Custom data","type":"object","x-stream-index":"003"},"settings_override":{"$ref":"#/components/schemas/CallSettingsRequest","description":"the settings to change for this call","title":"Settings Override","x-stream-index":"004"},"starts_at":{"description":"the time the call is scheduled to start","format":"date-time","title":"Starts At","type":"string","x-stream-index":"005"}},"type":"object"},"UpdateCallResponse":{"description":"Represents a call","nullable":true,"properties":{"call":{"$ref":"#/components/schemas/CallResponse","x-stream-index":"001.001"},"duration":{"type":"string","x-stream-index":"002.001"},"members":{"items":{"$ref":"#/components/schemas/MemberResponse"},"type":"array","x-stream-index":"001.002"},"membership":{"$ref":"#/components/schemas/MemberResponse","x-stream-index":"001.003"},"own_capabilities":{"items":{"$ref":"#/components/schemas/OwnCapability"},"type":"array","x-stream-index":"001.004"}},"required":["call","members","own_capabilities","duration"],"title":"Call","type":"object"},"UpdateCallTypeRequest":{"nullable":true,"properties":{"external_storage":{"type":"string","x-stream-index":"002.004"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"002.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettingsRequest","x-stream-index":"002.002"},"settings":{"$ref":"#/components/schemas/CallSettingsRequest","x-stream-index":"002.003"}},"type":"object"},"UpdateCallTypeResponse":{"nullable":true,"properties":{"created_at":{"format":"date-time","type":"string","x-stream-index":"001.005"},"duration":{"type":"string","x-stream-index":"002.001"},"external_storage":{"type":"string","x-stream-index":"001.007"},"grants":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","x-stream-index":"001.002"},"name":{"type":"string","x-stream-index":"001.001"},"notification_settings":{"$ref":"#/components/schemas/NotificationSettings","x-stream-index":"001.004"},"settings":{"$ref":"#/components/schemas/CallSettingsResponse","x-stream-index":"001.003"},"updated_at":{"format":"date-time","type":"string","x-stream-index":"001.006"}},"required":["name","grants","settings","notification_settings","created_at","updated_at","duration"],"type":"object"},"UpdateExternalStorageRequest":{"nullable":true,"properties":{"aws_s3":{"$ref":"#/components/schemas/S3Request","x-stream-index":"003.004"},"azure_blob":{"$ref":"#/components/schemas/AzureRequest","x-stream-index":"003.006"},"bucket":{"type":"string","x-stream-index":"003.002"},"gcs_credentials":{"type":"string","x-stream-index":"003.005"},"path":{"type":"string","x-stream-index":"003.003"},"storage_type":{"type":"string","x-stream-index":"003.001"}},"required":["storage_type","bucket"],"type":"object"},"UpdateExternalStorageResponse":{"nullable":true,"properties":{"bucket":{"type":"string","x-stream-index":"001.003"},"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"002.001"},"name":{"type":"string","x-stream-index":"001.001"},"path":{"type":"string","x-stream-index":"001.004"},"type":{"type":"string","x-stream-index":"001.002"}},"required":["name","type","bucket","path","duration"],"type":"object"},"UpdateUserPermissionsRequest":{"nullable":true,"properties":{"grant_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"002"},"revoke_permissions":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"user_id":{"type":"string","x-stream-index":"001"}},"required":["user_id"],"type":"object"},"UpdateUserPermissionsResponse":{"nullable":true,"properties":{"duration":{"description":"Duration of the request in human-readable format","title":"Duration","type":"string","x-stream-index":"001.001"}},"required":["duration"],"type":"object"},"UserInfoResponse":{"properties":{"custom":{"type":"object","x-stream-index":"003"},"image":{"type":"string","x-stream-index":"002"},"name":{"type":"string","x-stream-index":"001"},"roles":{"items":{"type":"string"},"type":"array","x-stream-index":"004"}},"required":["name","image","custom","roles"],"type":"object"},"UserRequest":{"properties":{"custom":{"title":"Custom","type":"object","x-stream-index":"004"},"id":{"description":"User ID","title":"ID","type":"string","x-stream-index":"001"},"image":{"title":"Image","type":"string","x-stream-index":"003"},"language":{"type":"string","x-stream-index":"005"},"name":{"description":"Optional name of user","title":"Name","type":"string","x-stream-index":"002"},"role":{"title":"Role","type":"string","x-stream-index":"006"},"teams":{"items":{"type":"string"},"title":"Teams","type":"array","x-stream-index":"007"}},"required":["id"],"type":"object"},"UserResponse":{"properties":{"created_at":{"description":"Date/time of creation","format":"date-time","title":"Created at","type":"string","x-stream-index":"004"},"custom":{"type":"object","x-stream-index":"001.004"},"deleted_at":{"description":"Date/time of deletion","format":"date-time","title":"Deleted at","type":"string","x-stream-index":"006"},"id":{"type":"string","x-stream-index":"001.001"},"image":{"type":"string","x-stream-index":"001.003"},"language":{"type":"string","x-stream-index":"001.005"},"name":{"type":"string","x-stream-index":"001.002"},"role":{"type":"string","x-stream-index":"002"},"teams":{"items":{"type":"string"},"type":"array","x-stream-index":"003"},"updated_at":{"description":"Date/time of the last update","format":"date-time","title":"Updated at","type":"string","x-stream-index":"005"}},"required":["id","custom","language","role","teams","created_at","updated_at"],"type":"object"},"UserSessionStats":{"properties":{"browser":{"type":"string","x-stream-index":"009"},"browser_version":{"type":"string","x-stream-index":"010"},"current_ip":{"type":"string","x-stream-index":"028"},"current_sfu":{"type":"string","x-stream-index":"029"},"device_model":{"type":"string","x-stream-index":"007"},"device_version":{"type":"string","x-stream-index":"008"},"freeze_duration_seconds":{"format":"float","type":"number","x-stream-index":"023"},"geolocation":{"$ref":"#/components/schemas/GeolocationResult","x-stream-index":"030"},"jitter":{"$ref":"#/components/schemas/Stats","x-stream-index":"011"},"latency":{"$ref":"#/components/schemas/Stats","x-stream-index":"012"},"max_fir_per_minute":{"format":"float","type":"number","x-stream-index":"019"},"max_freezes_per_minute":{"format":"float","type":"number","x-stream-index":"020"},"max_nack_per_minute":{"format":"float","type":"number","x-stream-index":"018"},"max_pli_per_minute":{"format":"float","type":"number","x-stream-index":"017"},"max_publishing_video_quality":{"$ref":"#/components/schemas/VideoQuality","x-stream-index":"016"},"max_receiving_video_quality":{"$ref":"#/components/schemas/VideoQuality","x-stream-index":"025"},"os":{"type":"string","x-stream-index":"002"},"os_version":{"type":"string","x-stream-index":"003"},"packet_loss_fraction":{"format":"float","type":"number","x-stream-index":"021"},"publishing_audio_codec":{"type":"string","x-stream-index":"015"},"publishing_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"014"},"quality_score":{"format":"float","type":"number","x-stream-index":"013"},"receiving_audio_codec":{"type":"string","x-stream-index":"024"},"receiving_duration_seconds":{"format":"int32","type":"integer","x-stream-index":"022"},"sdk":{"type":"string","x-stream-index":"005"},"sdk_version":{"type":"string","x-stream-index":"006"},"subsessions":{"items":{"$ref":"#/components/schemas/Subsession"},"type":"array","x-stream-index":"031"},"timeline":{"$ref":"#/components/schemas/CallTimeline","x-stream-index":"001"},"total_pixels_in":{"type":"integer","x-stream-index":"026"},"total_pixels_out":{"type":"integer","x-stream-index":"027"},"webrtc_version":{"type":"string","x-stream-index":"004"}},"required":["quality_score","publishing_duration_seconds","packet_loss_fraction","receiving_duration_seconds","freeze_duration_seconds","total_pixels_in","total_pixels_out"],"type":"object"},"UserStats":{"properties":{"info":{"$ref":"#/components/schemas/UserInfoResponse","x-stream-index":"001"},"session_stats":{"additionalProperties":{"$ref":"#/components/schemas/UserSessionStats"},"type":"object","x-stream-index":"002"}},"required":["info","session_stats"],"type":"object"},"VideoQuality":{"properties":{"resolution":{"$ref":"#/components/schemas/VideoResolution","x-stream-index":"001"}},"required":["resolution"],"type":"object"},"VideoResolution":{"properties":{"height":{"format":"int32","type":"integer","x-stream-index":"002"},"width":{"format":"int32","type":"integer","x-stream-index":"001"}},"required":["width","height"],"type":"object"},"VideoSettings":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolution","x-stream-index":"003"}},"required":["enabled","access_request_enabled","target_resolution","camera_default_on","camera_facing"],"type":"object"},"VideoSettingsRequest":{"properties":{"access_request_enabled":{"type":"boolean","x-stream-index":"002"},"camera_default_on":{"type":"boolean","x-stream-index":"004"},"camera_facing":{"enum":["front","back","external"],"type":"string","x-stream-index":"005"},"enabled":{"type":"boolean","x-stream-index":"001"},"target_resolution":{"$ref":"#/components/schemas/TargetResolutionRequest","x-stream-index":"003"}},"type":"object"},"WSAuthMessageRequest":{"nullable":true,"properties":{"token":{"title":"Token","type":"string","x-stream-index":"002"},"user_details":{"$ref":"#/components/schemas/ConnectUserDetailsRequest","x-stream-index":"001"}},"required":["user_details","token"],"type":"object"}},"securitySchemes":{"JWT":{"description":"JWT should be always provided when stream-auth-type=jwt.\n\nUsing JWT auth request could be authenticated as user or as server-side.\n\nWhen using user authentication permission checking is going to be applied to requests based on the user that is\nperforming a request.\n\nThe `authorization` header should be a JWT string signed using the secret attached to the API key used to perform\nrequests.\n\n**WARNING** all client-side official SDK do not ship with token generation; this is to make sure that the API secret is not\nshared with an untrusted party such as a browser or a iOS/Android application. Tokens **must** be generated server-side.\nIf you wish, you can configure your application to ignore authentication (see `disable_auth_check`)\nThe JWT string must include only the user_id claim and can include any built-in JWT claim such as iat, exp as well.\n","in":"header","name":"Authorization","type":"apiKey"},"api_key":{"description":"Application API key should be always set in order to authenticate the request.","in":"query","name":"api_key","type":"apiKey"},"stream-auth-type":{"description":"Stream-Auth-Type should be always set in order to authenticate the request. Possible\nvalues: `jwt` or `anonymous`.\n\n`jwt` allows you to authenticate as a user. With this auth type you should also provide valid JWT in Authorization\nheader.\n\n`anonymous` allows you to authenticate as anonymous user. Please note that most advanced features are not available\nto anonymous users.","in":"header","name":"Stream-Auth-Type","type":"apiKey"}}},"info":{"title":"Stream API","version":"v105.1.0"},"openapi":"3.0.3","paths":{"/video/call/members":{"post":{"description":"Query call members with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryMembers","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call members"}},"/video/call/stats":{"post":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"QueryCallStats","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query Call Stats"}},"/video/call/{type}/{id}":{"get":{"description":"\n\nRequired permissions:\n- ReadCall\n","operationId":"GetCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"003"}},{"in":"query","name":"members_limit","schema":{"format":"int32","maximum":100,"minimum":0,"type":"integer","writeOnly":true,"x-stream-index":"004"}},{"in":"query","name":"ring","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"005"}},{"in":"query","name":"notify","schema":{"type":"boolean","writeOnly":true,"x-stream-index":"006"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call"},"patch":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"UpdateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallResponse"}}},"description":"Call"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call"},"post":{"description":"Gets or creates a new call\n\nSends events:\n- call.created\n- call.notification\n- call.ring\n\nRequired permissions:\n- CreateCall\n- ReadCall\n- UpdateCallSettings\n","operationId":"GetOrCreateCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}},{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"007"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrCreateCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get or create a call"}},"/video/call/{type}/{id}/block":{"post":{"description":"Block a user, preventing them from joining the call until they are unblocked.\n\nSends events:\n- call.blocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"BlockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Block user on a call"}},"/video/call/{type}/{id}/event":{"post":{"description":"Sends custom event to the call\n\nSends events:\n- custom\n\nRequired permissions:\n- SendEvent\n","operationId":"SendEvent","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEventResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Send custom event"}},"/video/call/{type}/{id}/feedback/{session}":{"post":{"description":"\n\nRequired permissions:\n- JoinCall\n","operationId":"CollectUserFeedback","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectUserFeedbackResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Collect user feedback"}},"/video/call/{type}/{id}/go_live":{"post":{"description":"\n\nSends events:\n- call.live_started\n\nRequired permissions:\n- UpdateCall\n","operationId":"GoLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GoLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as live"}},"/video/call/{type}/{id}/mark_ended":{"post":{"description":"\n\nSends events:\n- call.ended\n\nRequired permissions:\n- EndCall\n","operationId":"EndCall","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndCallResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"End call"}},"/video/call/{type}/{id}/members":{"post":{"description":"\n\nSends events:\n- call.member_added\n- call.member_removed\n- call.member_updated\n\nRequired permissions:\n- RemoveCallMember\n- UpdateCallMember\n- UpdateCallMemberRole\n","operationId":"UpdateCallMembers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallMembersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Member"}},"/video/call/{type}/{id}/mute_users":{"post":{"description":"Mutes users in a call\n\nRequired permissions:\n- MuteUsers\n","operationId":"MuteUsers","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MuteUsersResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Mute users"}},"/video/call/{type}/{id}/pin":{"post":{"description":"Pins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoPin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Pin"}},"/video/call/{type}/{id}/recordings":{"get":{"description":"Lists recordings\n\nRequired permissions:\n- ListRecordings\n","operationId":"ListRecordings","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListRecordingsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List recordings"}},"/video/call/{type}/{id}/start_broadcasting":{"post":{"description":"Starts HLS broadcasting\n\nRequired permissions:\n- StartBroadcasting\n","operationId":"StartHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start HLS broadcasting"}},"/video/call/{type}/{id}/start_recording":{"post":{"description":"Starts recording\n\nSends events:\n- call.recording_started\n\nRequired permissions:\n- StartRecording\n","operationId":"StartRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start recording"}},"/video/call/{type}/{id}/start_transcription":{"post":{"description":"Starts transcription\n\nRequired permissions:\n- StartTranscription\n","operationId":"StartTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Start transcription"}},"/video/call/{type}/{id}/stats/{session}":{"get":{"description":"\n\nRequired permissions:\n- ReadCallStats\n","operationId":"GetCallStats","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}},{"in":"path","name":"session","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"003"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallStatsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Stats"}},"/video/call/{type}/{id}/stop_broadcasting":{"post":{"description":"Stops HLS broadcasting\n\nRequired permissions:\n- StopBroadcasting\n","operationId":"StopHLSBroadcasting","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopHLSBroadcastingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop HLS broadcasting"}},"/video/call/{type}/{id}/stop_live":{"post":{"description":"\n\nSends events:\n- call.updated\n\nRequired permissions:\n- UpdateCall\n","operationId":"StopLive","parameters":[{"in":"path","name":"type","required":true,"schema":{"description":"The type of call","maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"002.001"}},{"in":"path","name":"id","required":true,"schema":{"description":"Call ID","maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopLiveResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Set call as not live"}},"/video/call/{type}/{id}/stop_recording":{"post":{"description":"Stops recording\n\nSends events:\n- call.recording_stopped\n\nRequired permissions:\n- StopRecording\n","operationId":"StopRecording","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopRecordingResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop recording"}},"/video/call/{type}/{id}/stop_transcription":{"post":{"description":"Stops transcription\n\nSends events:\n- call.transcription_stopped\n\nRequired permissions:\n- StopTranscription\n","operationId":"StopTranscription","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StopTranscriptionResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Stop transcription"}},"/video/call/{type}/{id}/transcriptions":{"get":{"description":"Lists transcriptions\n\nRequired permissions:\n- ListTranscriptions\n","operationId":"ListTranscriptions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListTranscriptionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List transcriptions"}},"/video/call/{type}/{id}/unblock":{"post":{"description":"Removes the block for a user on a call. The user will be able to join the call again.\n\nSends events:\n- call.unblocked_user\n\nRequired permissions:\n- BlockUser\n","operationId":"UnblockUser","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"title":"Type","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"title":"ID","type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnblockUserResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unblocks user on a call"}},"/video/call/{type}/{id}/unpin":{"post":{"description":"Unpins a track for all users in the call.\n\nRequired permissions:\n- PinCallTrack\n","operationId":"VideoUnpin","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"001.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnpinResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Unpin"}},"/video/call/{type}/{id}/user_permissions":{"post":{"description":"Updates user permissions\n\nSends events:\n- call.permissions_updated\n\nRequired permissions:\n- UpdateCallPermissions\n","operationId":"UpdateUserPermissions","parameters":[{"in":"path","name":"type","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.001"}},{"in":"path","name":"id","required":true,"schema":{"maxLength":64,"type":"string","writeOnly":true,"x-stream-index":"005.002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserPermissionsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update user permissions"}},"/video/calls":{"post":{"description":"Query calls with filter query\n\nRequired permissions:\n- ReadCall\n","operationId":"QueryCalls","parameters":[{"in":"query","name":"connection_id","schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryCallsResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Query call"}},"/video/calltypes":{"get":{"description":"\n","operationId":"ListCallTypes","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List Call Type","tags":["Server-side"]},"post":{"description":"\n","operationId":"CreateCallType","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create Call Type","tags":["Server-side"]}},"/video/calltypes/{name}":{"delete":{"description":"\n","operationId":"DeleteCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete Call Type","tags":["Server-side"]},"get":{"description":"\n","operationId":"GetCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Call Type","tags":["Server-side"]},"put":{"description":"\n","operationId":"UpdateCallType","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallTypeRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCallTypeResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update Call Type","tags":["Server-side"]}},"/video/connect":{"get":{"description":"Establishes WebSocket connection for user to video\n\nSends events:\n- connection.ok\n- health.check\n","operationId":"VideoConnect","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WSAuthMessageRequest"}}},"required":true},"responses":{"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Video Connect (WebSocket)"}},"/video/devices":{"delete":{"description":"Deletes one device\n","operationId":"DeleteDevice","parameters":[{"in":"query","name":"id","schema":{"description":"Device ID to delete","title":"ID","type":"string","writeOnly":true,"x-stream-index":"001"}},{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"002.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete device"},"get":{"description":"Returns all available devices\n","operationId":"ListDevices","parameters":[{"in":"query","name":"user_id","schema":{"description":"**Server-side only**. User ID which server acts upon","title":"User ID","type":"string","writeOnly":true,"x-stream-index":"001.001"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListDevicesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List devices"},"post":{"description":"Adds a new device to a user, if the same device already exists the call will have no effect\n","operationId":"CreateDevice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeviceRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create device"}},"/video/edges":{"get":{"description":"Returns the list of all edges available for video calls.\n","operationId":"GetEdges","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEdgesResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Get Edges"}},"/video/external_storage":{"get":{"description":"Lists external storage\n","operationId":"ListExternalStorage","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"List external storage","tags":["Settings"]},"post":{"description":"Creates new external storage\n","operationId":"CreateExternalStorage","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalStorageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create external storage","tags":["Settings"]}},"/video/external_storage/{name}":{"delete":{"description":"Deletes external storage\n","operationId":"DeleteExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Delete external storage","tags":["Settings"]},"put":{"description":"\n","operationId":"UpdateExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"001"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalStorageRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Update External Storage","tags":["Server-side"]}},"/video/external_storage/{name}/check":{"get":{"description":"\n","operationId":"CheckExternalStorage","parameters":[{"in":"path","name":"name","required":true,"schema":{"type":"string","writeOnly":true,"x-stream-index":"002"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckExternalStorageResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Check External Storage","tags":["Server-side"]}},"/video/guest":{"post":{"description":"\n","operationId":"CreateGuest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGuestRequest"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateGuestResponse"}}},"description":"Successful response"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Bad request"},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/APIError"}}},"description":"Too many requests"}},"summary":"Create Guest"}}},"security":[{"JWT":[],"api_key":[],"stream-auth-type":[]},{"api_key":[],"stream-auth-type":[]}],"servers":[{"description":"Stream API","url":"https://stream-io-api.com"}]} \ No newline at end of file diff --git a/openapi/video-openapi.yaml b/openapi/video-openapi.yaml index d30e985b..acce754c 100644 --- a/openapi/video-openapi.yaml +++ b/openapi/video-openapi.yaml @@ -88,6 +88,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettings' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -119,6 +122,9 @@ components: mic_default_on: type: boolean x-stream-index: "004" + noise_cancellation: + $ref: '#/components/schemas/NoiseCancellationSettingsRequest' + x-stream-index: "007" opus_dtx_enabled: type: boolean x-stream-index: "002" @@ -213,20 +219,25 @@ components: properties: description: type: string - x-stream-index: "003" + x-stream-index: "004" + end_timestamp: + format: int64 + type: integer + x-stream-index: "002" severity: format: int32 type: integer - x-stream-index: "002" + x-stream-index: "003" timestamp: format: int32 type: integer x-stream-index: "001" type: type: string - x-stream-index: "004" + x-stream-index: "005" required: - timestamp + - end_timestamp - severity - description - type @@ -1137,6 +1148,38 @@ components: type: array x-stream-index: "001" type: object + GeolocationResult: + properties: + AccuracyRadius: + format: int32 + type: integer + writeOnly: true + x-stream-index: "003" + continent_code: + type: string + x-stream-index: "002.003" + country_iso_code: + type: string + x-stream-index: "002.002" + latitude: + format: float + type: number + x-stream-index: "001.001" + longitude: + format: float + type: number + x-stream-index: "001.002" + subdivision_iso_code: + type: string + x-stream-index: "002.001" + required: + - latitude + - longitude + - subdivision_iso_code + - country_iso_code + - continent_code + - AccuracyRadius + type: object GetCallResponse: nullable: true properties: @@ -1177,30 +1220,38 @@ components: type: number x-stream-index: "004" call_duration_seconds: - format: int64 + format: int32 type: integer x-stream-index: "002" call_timeline: $ref: '#/components/schemas/CallTimeline' - x-stream-index: "012" + x-stream-index: "014" duration: description: Duration of the request in human-readable format title: Duration type: string x-stream-index: "001.001" + max_jitter: + format: float + type: number + x-stream-index: "007" + max_latency: + format: float + type: number + x-stream-index: "006" max_participants: format: int32 type: integer - x-stream-index: "006" + x-stream-index: "008" participant_report: additionalProperties: $ref: '#/components/schemas/UserStats' type: object - x-stream-index: "013" + x-stream-index: "015" publishing_participants: format: int32 type: integer - x-stream-index: "007" + x-stream-index: "009" quality_score: format: int32 type: integer @@ -1208,26 +1259,28 @@ components: sfu_count: format: int32 type: integer - x-stream-index: "008" + x-stream-index: "010" sfus: items: $ref: '#/components/schemas/SFULocationResponse' type: array - x-stream-index: "011" + x-stream-index: "013" total_freezes_duration: format: float type: number - x-stream-index: "010" + x-stream-index: "012" total_quality_limitation_duration: format: float type: number - x-stream-index: "009" + x-stream-index: "011" required: - duration - call_duration_seconds - quality_score - average_latency - average_jitter + - max_latency + - max_jitter - max_participants - publishing_participants - sfu_count @@ -1672,6 +1725,28 @@ components: required: - duration type: object + NoiseCancellationSettings: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + required: + - mode + type: object + NoiseCancellationSettingsRequest: + properties: + mode: + enum: + - available + - disabled + - auto-on + type: string + x-stream-index: "001" + type: object NotificationSettings: properties: call_live_started: @@ -1720,6 +1795,7 @@ components: - block-users - create-call - create-reaction + - enable-noise-cancellation - end-call - join-backstage - join-call @@ -2234,6 +2310,24 @@ components: required: - duration type: object + Subsession: + properties: + sfu_id: + type: string + x-stream-index: "003" + ts_ended_at: + format: int64 + type: integer + x-stream-index: "002" + ts_joined_at: + format: int64 + type: integer + x-stream-index: "001" + required: + - ts_joined_at + - ts_ended_at + - sfu_id + type: object TargetResolution: properties: bitrate: @@ -2718,47 +2812,118 @@ components: type: object UserSessionStats: properties: + browser: + type: string + x-stream-index: "009" + browser_version: + type: string + x-stream-index: "010" + current_ip: + type: string + x-stream-index: "028" + current_sfu: + type: string + x-stream-index: "029" + device_model: + type: string + x-stream-index: "007" + device_version: + type: string + x-stream-index: "008" freeze_duration_seconds: format: float type: number - x-stream-index: "009" + x-stream-index: "023" + geolocation: + $ref: '#/components/schemas/GeolocationResult' + x-stream-index: "030" jitter: $ref: '#/components/schemas/Stats' - x-stream-index: "006" + x-stream-index: "011" latency: $ref: '#/components/schemas/Stats' - x-stream-index: "007" + x-stream-index: "012" + max_fir_per_minute: + format: float + type: number + x-stream-index: "019" + max_freezes_per_minute: + format: float + type: number + x-stream-index: "020" + max_nack_per_minute: + format: float + type: number + x-stream-index: "018" + max_pli_per_minute: + format: float + type: number + x-stream-index: "017" + max_publishing_video_quality: + $ref: '#/components/schemas/VideoQuality' + x-stream-index: "016" + max_receiving_video_quality: + $ref: '#/components/schemas/VideoQuality' + x-stream-index: "025" os: type: string x-stream-index: "002" + os_version: + type: string + x-stream-index: "003" packet_loss_fraction: format: float type: number - x-stream-index: "010" + x-stream-index: "021" + publishing_audio_codec: + type: string + x-stream-index: "015" + publishing_duration_seconds: + format: int32 + type: integer + x-stream-index: "014" quality_score: format: float type: number - x-stream-index: "008" + x-stream-index: "013" + receiving_audio_codec: + type: string + x-stream-index: "024" + receiving_duration_seconds: + format: int32 + type: integer + x-stream-index: "022" sdk: type: string - x-stream-index: "004" + x-stream-index: "005" sdk_version: type: string - x-stream-index: "005" + x-stream-index: "006" + subsessions: + items: + $ref: '#/components/schemas/Subsession' + type: array + x-stream-index: "031" timeline: $ref: '#/components/schemas/CallTimeline' x-stream-index: "001" + total_pixels_in: + type: integer + x-stream-index: "026" + total_pixels_out: + type: integer + x-stream-index: "027" webrtc_version: type: string - x-stream-index: "003" + x-stream-index: "004" required: - - os - - webrtc_version - - sdk - - sdk_version - quality_score - - freeze_duration_seconds + - publishing_duration_seconds - packet_loss_fraction + - receiving_duration_seconds + - freeze_duration_seconds + - total_pixels_in + - total_pixels_out type: object UserStats: properties: @@ -2774,6 +2939,28 @@ components: - info - session_stats type: object + VideoQuality: + properties: + resolution: + $ref: '#/components/schemas/VideoResolution' + x-stream-index: "001" + required: + - resolution + type: object + VideoResolution: + properties: + height: + format: int32 + type: integer + x-stream-index: "002" + width: + format: int32 + type: integer + x-stream-index: "001" + required: + - width + - height + type: object VideoSettings: properties: access_request_enabled: @@ -2879,7 +3066,7 @@ components: type: apiKey info: title: Stream API - version: v104.0.1 + version: v105.1.0 openapi: 3.0.3 paths: /video/call/{type}/{id}: