Appearance
Common
About 15278 wordsAbout 51 min
Curl SDK - Chat API
Table of Contents
- GetApp
- UpdateApp
- ListBlockLists
- CreateBlockList
- GetBlockList
- UpdateBlockList
- DeleteBlockList
- CheckPush
- CheckSNS
- CheckSQS
- ListDevices
- CreateDevice
- DeleteDevice
- ExportUsers
- ListExternalStorage
- CreateExternalStorage
- UpdateExternalStorage
- DeleteExternalStorage
- CheckExternalStorage
- CreateGuest
- CreateImportURL
- ListImports
- CreateImport
- ListImportV2Tasks
- CreateImportV2Task
- GetImporterExternalStorage
- UpsertImporterExternalStorage
- DeleteImporterExternalStorage
- ValidateImporterExternalStorage
- GetImportV2Task
- DeleteImportV2Task
- GetImport
- GetOG
- ListPermissions
- GetPermission
- CreatePoll
- UpdatePoll
- QueryPolls
- GetPoll
- UpdatePollPartial
- DeletePoll
- CreatePollOption
- UpdatePollOption
- GetPollOption
- DeletePollOption
- QueryPollVotes
- UpdatePushNotificationPreferences
- ListPushProviders
- UpsertPushProvider
- DeletePushProvider
- GetPushTemplates
- UpsertPushTemplate
- GetRateLimits
- ListRoles
- CreateRole
- DeleteRole
- GetTask
- UploadFile
- DeleteFile
- UploadImage
- DeleteImage
- ListUserGroups
- CreateUserGroup
- SearchUserGroups
- GetUserGroup
- UpdateUserGroup
- DeleteUserGroup
- AddUserGroupMembers
- RemoveUserGroupMembers
- QueryUsers
- UpdateUsers
- UpdateUsersPartial
- GetBlockedUsers
- BlockUsers
- DeactivateUsers
- DeleteUsers
- GetUserLiveLocations
- UpdateLiveLocation
- ReactivateUsers
- RestoreUsers
- UnblockUsers
- DeactivateUser
- ExportUser
- ReactivateUser
- Types Reference
GetApp
Retrieve the current application settings to understand or verify the configuration. Use this method when you need to view the existing app settings without making changes.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/app" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetApplicationResponse
UpdateApp
Modify the application settings to align with new requirements or preferences. Use this method when you need to update the app configuration.
Example
curl -X PATCH "https://chat.stream-io-api.com/api/v2/app" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"activity_metrics_config": {},
"allowed_flag_reasons": ["value1", "value2"]
}'Example: with apn_config and async_moderation_config
curl -X PATCH "https://chat.stream-io-api.com/api/v2/app" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"apn_config": { "Disabled": true },
"async_moderation_config": { "callback": { "mode": "example_value" } }
}'Example: with async_url_enrich_enabled and auto_translation_enabled
curl -X PATCH "https://chat.stream-io-api.com/api/v2/app" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"async_url_enrich_enabled": "https://example.com",
"auto_translation_enabled": true
}'Example: with before_message_send_hook_url and cdn_expiration_seconds
curl -X PATCH "https://chat.stream-io-api.com/api/v2/app" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"before_message_send_hook_url": "https://example.com",
"cdn_expiration_seconds": 1
}'Response: Response
Parameters
Request Body:
activity_metrics_config(object)allowed_flag_reasons([]string)apn_config(APNConfig)async_moderation_config(AsyncModerationConfiguration)async_url_enrich_enabled(bool)auto_translation_enabled(bool)before_message_send_hook_url(string)cdn_expiration_seconds(int)channel_hide_members_only(bool)custom_action_handler_url(string)datadog_info(DataDogInfo)disable_auth_checks(bool)disable_permissions_checks(bool)enforce_unique_usernames(string)event_hooks([]EventHook)feeds_moderation_enabled(bool)feeds_v2_region(string)file_upload_config(FileUploadConfig)firebase_config(FirebaseConfig)grants(object)guest_user_creation_disabled(bool)huawei_config(HuaweiConfig)image_moderation_block_labels([]string)image_moderation_enabled(bool)image_moderation_labels([]string)image_upload_config(FileUploadConfig)max_aggregated_activities_length(int)migrate_permissions_to_v2(bool)moderation_analytics_enabled(bool)moderation_dashboard_preferences(ModerationDashboardPreferences)moderation_enabled(bool)moderation_s3_image_access_role_arn(string)moderation_webhook_url(string)multi_tenant_enabled(bool)permission_version(string)push_config(PushConfig)reminders_interval(int)reminders_max_members(int)revoke_tokens_issued_before(float)sns_key(string)sns_secret(string)sns_topic_arn(string)sqs_key(string)sqs_secret(string)sqs_url(string)user_response_time_enabled(bool)user_search_disallowed_roles([]string)webhook_events([]string)webhook_url(string)xiaomi_config(XiaomiConfig)
ListBlockLists
Get a list of all existing block lists to review or manage them. Use this method when you need an overview of current block lists.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/blocklists?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ListBlockListResponse
Parameters
Query Parameters:
team(string)
CreateBlockList
Create a new block list to restrict certain content or users as per your criteria. Use this method when setting up a new block list for moderation or content control.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/blocklists" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"name": "Example Name",
"words": ["value1", "value2"],
"is_plural_check_enabled": true,
"type": "messaging"
}'Example: with team and is_leet_check_enabled
curl -X POST "https://chat.stream-io-api.com/api/v2/blocklists" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"name": "Example Name",
"words": ["value1", "value2"],
"is_leet_check_enabled": true,
"team": "example_value"
}'Response: CreateBlockListResponse
Parameters
Request Body:
is_leet_check_enabled(bool)is_plural_check_enabled(bool)name(string) (required): Block list nameteam(string)type(string): Block list type. One of: regex, domain, domain_allowlist, email, email_allowlist, wordwords([]string) (required): List of words to block
GetBlockList
Access a specific block list to view its details and contents. Use this method when you need to inspect the entries of a particular block list.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/blocklists/example_value?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetBlockListResponse
Parameters
Path Parameters:
name(string) (required)
Query Parameters:
team(string)
UpdateBlockList
Modify an existing block list to add or remove entries as needed. Use this method when updating the criteria or contents of a block list.
Example
curl -X PUT "https://chat.stream-io-api.com/api/v2/blocklists/example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"is_leet_check_enabled": true,
"is_plural_check_enabled": true
}'Example: with team and words
curl -X PUT "https://chat.stream-io-api.com/api/v2/blocklists/example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"team": "example_value",
"words": ["value1", "value2"]
}'Response: UpdateBlockListResponse
Parameters
Path Parameters:
name(string) (required)
Request Body:
is_leet_check_enabled(bool)is_plural_check_enabled(bool)team(string)words([]string): List of words to block
DeleteBlockList
Remove a specific block list that is no longer needed. Use this method when you want to delete a block list to stop enforcing its restrictions.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/blocklists/example_value?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: Response
Parameters
Path Parameters:
name(string) (required)
Query Parameters:
team(string)
CheckPush
Verify the status and functionality of your push notification setup. Use this method to ensure your push notifications are working correctly.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/check_push" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"event_type": "example_value",
"user_id": "user-123"
}'Example: with firebase_data_template and firebase_template
curl -X POST "https://chat.stream-io-api.com/api/v2/check_push" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"firebase_data_template": {},
"firebase_template": "example_value"
}'Example: with message_id and push_provider_name
curl -X POST "https://chat.stream-io-api.com/api/v2/check_push" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"message_id": "message-789",
"push_provider_name": "example_value"
}'Example: with push_provider_type and skip_devices
curl -X POST "https://chat.stream-io-api.com/api/v2/check_push" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"push_provider_type": "example_value",
"skip_devices": true
}'Response: CheckPushResponse
Parameters
Request Body:
apn_template(string): Push message template for APNevent_type(string): Type of event for push templates (default: message.new). One of: message.new, message.updated, reaction.new, reaction.updated, notification.reminder_duefirebase_data_template(string): Push message data template for Firebasefirebase_template(string): Push message template for Firebasemessage_id(string): Message ID to send push notification forpush_provider_name(string): Name of push providerpush_provider_type(string): Push provider type. One of: firebase, apn, huawei, xiaomiskip_devices(bool): Don't require existing devices to render templatesuser(UserRequest)user_id(string)
CheckSNS
Test the integration and functionality of your Amazon SNS (Simple Notification Service) setup. Use this method to confirm SNS is configured and operating as expected.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/check_sns" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"sns_key": "example_value",
"sns_secret": "example_value"
}'Example: with sns_topic_arn
curl -X POST "https://chat.stream-io-api.com/api/v2/check_sns" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"sns_topic_arn": "example_value"
}'Response: CheckSNSResponse
Parameters
Request Body:
sns_key(string): AWS SNS access keysns_secret(string): AWS SNS key secretsns_topic_arn(string): AWS SNS topic ARN
CheckSQS
Check the status and operation of your Amazon SQS (Simple Queue Service) configuration. Use this method to ensure that your SQS setup is functioning properly.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/check_sqs" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"sqs_key": "example_value",
"sqs_secret": "example_value"
}'Example: with sqs_url
curl -X POST "https://chat.stream-io-api.com/api/v2/check_sqs" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"sqs_url": "https://example.com"
}'Response: CheckSQSResponse
Parameters
Request Body:
sqs_key(string): AWS SQS access keysqs_secret(string): AWS SQS key secretsqs_url(string): AWS SQS endpoint URL
ListDevices
Retrieve a list of all registered devices associated with your account, useful for managing and monitoring device activity.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/devices?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ListDevicesResponse
Parameters
Query Parameters:
user_id(string)
CreateDevice
Add a new device to your account, enabling it to participate in your chat ecosystem and access related features.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/devices" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"id": "example-id",
"push_provider": "example_value",
"user": { "id": "example-id", "custom": {} },
"user_id": "user-123"
}'Example: with push_provider_name and voip_token
curl -X POST "https://chat.stream-io-api.com/api/v2/devices" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"id": "example-id",
"push_provider": "example_value",
"push_provider_name": "example_value",
"voip_token": true
}'Response: Response
Parameters
Request Body:
id(string) (required): Device IDpush_provider(string) (required): Push providerpush_provider_name(string): Push provider nameuser(UserRequest)user_id(string): Server-side only. User ID which server acts uponvoip_token(bool): When true the token is for Apple VoIP push notifications
DeleteDevice
Remove a specified device from your account, which is helpful for maintaining security and managing active devices.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/devices?id=example-id" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: Response
Parameters
Query Parameters:
id(string) (required)user_id(string)
ExportUsers
Generate and download a list of all users in your chat system, ideal for backups or data analysis.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/export/users" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"]
}'Response: ExportUsersResponse
Parameters
Request Body:
user_ids([]string) (required)
ListExternalStorage
View all configured external storage options, providing an overview of available storage connections for your data.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/external_storage" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ListExternalStorageResponse
CreateExternalStorage
Set up a new external storage connection to extend your data storage capabilities, allowing for seamless data integration.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/external_storage" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"bucket": "example_value",
"name": "Example Name",
"storage_type": "example_value",
"aws_s3": { "s3_region": "example_value", "s3_api_key": "example_value" },
"azure_blob": { "abs_account_name": "example_value", "abs_client_id": "example_value", "abs_client_secret": "example_value", "abs_tenant_id": "example_value" }
}'Example: with gcs_credentials and path
curl -X POST "https://chat.stream-io-api.com/api/v2/external_storage" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"bucket": "example_value",
"name": "Example Name",
"storage_type": "example_value",
"gcs_credentials": "example_value",
"path": "example_value"
}'Response: CreateExternalStorageResponse
Parameters
Request Body:
aws_s3(S3Request): Only required if you want to create an Amazon S3 storageazure_blob(AzureRequest): Only required if you want to create an Azure Blob Storagebucket(string) (required): The name of the bucket on the service providergcs_credentials(string)name(string) (required): The name of the provider, this must be uniquepath(string): The path prefix to use for storing filesstorage_type(string) (required): The type of storage to use
UpdateExternalStorage
Modify the settings of an existing external storage connection to ensure it aligns with your current data management needs.
Example
curl -X PUT "https://chat.stream-io-api.com/api/v2/external_storage/example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"bucket": "example_value",
"storage_type": "example_value",
"aws_s3": { "s3_region": "example_value", "s3_api_key": "example_value" },
"azure_blob": { "abs_account_name": "example_value", "abs_client_id": "example_value", "abs_client_secret": "example_value", "abs_tenant_id": "example_value" }
}'Example: with gcs_credentials and path
curl -X PUT "https://chat.stream-io-api.com/api/v2/external_storage/example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"bucket": "example_value",
"storage_type": "example_value",
"gcs_credentials": "example_value",
"path": "example_value"
}'Response: UpdateExternalStorageResponse
Parameters
Path Parameters:
name(string) (required)
Request Body:
aws_s3(S3Request): Only required if you want to create an Amazon S3 storageazure_blob(AzureRequest): Only required if you want to create an Azure Blob Storagebucket(string) (required): The name of the bucket on the service providergcs_credentials(string)path(string): The path prefix to use for storing filesstorage_type(string) (required): The type of storage to use
DeleteExternalStorage
Remove an external storage configuration, useful for cleaning up unused or obsolete storage connections.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/external_storage/example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: DeleteExternalStorageResponse
Parameters
Path Parameters:
name(string) (required)
CheckExternalStorage
Verify the status and connectivity of your external storage setup, ensuring data integrity and accessibility.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/external_storage/example_value/check" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: CheckExternalStorageResponse
Parameters
Path Parameters:
name(string) (required)
CreateGuest
Register a temporary guest user, allowing limited access to your chat system for short-term collaboration or testing.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/guest" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user": { "id": "example-id", "custom": {} }
}'Response: CreateGuestResponse
Parameters
Request Body:
user(UserRequest) (required): User object which server acts upon
CreateImportURL
Generates a URL for importing data into the chat application, useful for seamlessly integrating external data sources.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/import_urls" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"filename": "example_value"
}'Response: CreateImportURLResponse
Parameters
Request Body:
filename(string)
ListImports
Retrieves a list of all data imports, allowing users to track and manage their import activities.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/imports" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ListImportsResponse
CreateImport
Initiates a new data import process, ideal for users looking to upload large datasets into the chat system.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/imports" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"mode": "example_value",
"path": "example_value",
"merge_custom": {}
}'Response: CreateImportResponse
Parameters
Request Body:
merge_custom(bool)mode(string) (required)path(string) (required)
ListImportV2Tasks
Displays all tasks related to version 2 imports, providing users with a comprehensive overview of their import operations.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/imports/v2?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ListImportV2TasksResponse
Parameters
Query Parameters:
state(int)
CreateImportV2Task
Starts a new import task under version 2, enabling users to handle specific import scenarios with updated functionalities.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/imports/v2" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"product": "example_value",
"settings": { "merge_custom": {} },
"user": { "id": "example-id", "custom": {} },
"user_id": "user-123"
}'Response: CreateImportV2TaskResponse
Parameters
Request Body:
product(string) (required)settings(ImportV2TaskSettings) (required)user(UserRequest)user_id(string)
GetImporterExternalStorage
Retrieve details of an existing external storage configuration. Use this method to view the current settings and status of your linked external storage.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/imports/v2/external-storage" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetExternalStorageResponse
UpsertImporterExternalStorage
Add or update an external storage configuration. Use this method to ensure your external storage is correctly set up or to modify existing configurations.
Example
curl -X PUT "https://chat.stream-io-api.com/api/v2/imports/v2/external-storage" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"type": "messaging",
"aws_s3": { "bucket": "example_value", "region": "example_value", "role_arn": "example_value", "path_prefix": "example_value" }
}'Response: UpsertExternalStorageResponse
Parameters
Request Body:
aws_s3(UpsertExternalStorageAWSS3Request)type(string) (required)
DeleteImporterExternalStorage
Remove an existing external storage configuration. Use this when you no longer need to link external storage or to clear outdated configurations.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/imports/v2/external-storage" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: DeleteExternalStorageResponse
ValidateImporterExternalStorage
Check the validity of an external storage configuration. Use this to ensure that your external storage setup is correctly configured and operational.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/imports/v2/external-storage/validate" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ValidateExternalStorageResponse
GetImportV2Task
Fetches details of a specific import task in version 2, useful for monitoring progress and diagnosing issues.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/imports/v2/example-id" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetImportV2TaskResponse
Parameters
Path Parameters:
id(string) (required)
DeleteImportV2Task
Removes a specific import task from version 2, helping users manage and clean up their import queues.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/imports/v2/example-id" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: DeleteImportV2TaskResponse
Parameters
Path Parameters:
id(string) (required)
GetImport
Provides information on a specific import, allowing users to review and verify the details of their data uploads.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/imports/example-id" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetImportResponse
Parameters
Path Parameters:
id(string) (required)
GetOG
Retrieves Open Graph data, which is helpful for obtaining metadata about shared content such as links or media.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/og?url=example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetOGResponse
Parameters
Query Parameters:
url(string) (required)
ListPermissions
Lists all permissions available, aiding users in understanding and managing access control within the chat application.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/permissions" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ListPermissionsResponse
GetPermission
Retrieve the permissions associated with a user or role to determine access levels within the chat system. Use this method to check if a user has the necessary rights to perform specific actions.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/permissions/example-id" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetCustomPermissionResponse
Parameters
Path Parameters:
id(string) (required)
CreatePoll
Create a new poll in the chat application to gather opinions or feedback from users. Use this method to initiate a poll with customizable options and parameters.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/polls" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"name": "Example Name",
"id": "example-id",
"user_id": "user-123"
}'Example: with allow_user_suggested_options and description
curl -X POST "https://chat.stream-io-api.com/api/v2/polls" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"name": "Example Name",
"allow_user_suggested_options": true,
"description": "example_value"
}'Example: with enforce_unique_vote and Custom
curl -X POST "https://chat.stream-io-api.com/api/v2/polls" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"name": "Example Name",
"Custom": {},
"enforce_unique_vote": true
}'Example: with is_closed and max_votes_allowed
curl -X POST "https://chat.stream-io-api.com/api/v2/polls" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"name": "Example Name",
"is_closed": true,
"max_votes_allowed": 1
}'Response: PollResponse
Parameters
Request Body:
Custom(object)allow_answers(bool): Indicates whether users can suggest user defined answersallow_user_suggested_options(bool)description(string): A description of the pollenforce_unique_vote(bool): Indicates whether users can cast multiple votesid(string)is_closed(bool): Indicates whether the poll is open for votingmax_votes_allowed(int): Indicates the maximum amount of votes a user can castname(string) (required): The name of the polloptions([]PollOptionInput)user(UserRequest)user_id(string)voting_visibility(string)
UpdatePoll
Modify an existing poll to change its details or options based on new requirements or feedback. Use this method when you need to update the poll's content or settings after creation.
Example
curl -X PUT "https://chat.stream-io-api.com/api/v2/polls" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"id": "example-id",
"name": "Example Name",
"allow_answers": true,
"user_id": "user-123"
}'Example: with allow_user_suggested_options and description
curl -X PUT "https://chat.stream-io-api.com/api/v2/polls" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"id": "example-id",
"name": "Example Name",
"allow_user_suggested_options": true,
"description": "example_value"
}'Example: with enforce_unique_vote and is_closed
curl -X PUT "https://chat.stream-io-api.com/api/v2/polls" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"id": "example-id",
"name": "Example Name",
"enforce_unique_vote": true,
"is_closed": true
}'Example: with max_votes_allowed and options
curl -X PUT "https://chat.stream-io-api.com/api/v2/polls" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"id": "example-id",
"name": "Example Name",
"max_votes_allowed": 1,
"options": [{ "id": "example-id", "custom": {} }]
}'Response: PollResponse
Parameters
Request Body:
Custom(object)allow_answers(bool): Allow answersallow_user_suggested_options(bool): Allow user suggested optionsdescription(string): Poll descriptionenforce_unique_vote(bool): Enforce unique voteid(string) (required): Poll IDis_closed(bool): Is closedmax_votes_allowed(int): Max votes allowedname(string) (required): Poll nameoptions([]PollOptionRequest): Poll optionsuser(UserRequest)user_id(string)voting_visibility(string): Voting visibility
QueryPolls
Retrieve a list of polls based on specific criteria or filters. Use this method to find and review polls that match certain conditions or properties.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/polls/query?user_id=user-123" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"limit": 1
}'Example: with filter and sort
curl -X POST "https://chat.stream-io-api.com/api/v2/polls/query?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"filter": {},
"sort": [{ "direction": 1 }]
}'Example: with next and prev
curl -X POST "https://chat.stream-io-api.com/api/v2/polls/query?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"next": "example_value",
"prev": "example_value"
}'Response: QueryPollsResponse
Parameters
Query Parameters:
user_id(string)
Request Body:
filter(object): Filter to apply to the querylimit(int)next(string)prev(string)sort([]SortParamRequest): Array of sort parameters
GetPoll
Access detailed information about a specific poll, including its options and current status. Use this method when you need to view the complete details of a particular poll.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/polls/example_value?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: PollResponse
Parameters
Path Parameters:
poll_id(string) (required)
Query Parameters:
user_id(string)
UpdatePollPartial
Make selective updates to certain fields of an existing poll without altering the entire poll. Use this method when you only need to change specific attributes rather than the whole poll structure.
Example
curl -X PATCH "https://chat.stream-io-api.com/api/v2/polls/example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"unset": ["value1", "value2"],
"user_id": "user-123"
}'Example: with user and set
curl -X PATCH "https://chat.stream-io-api.com/api/v2/polls/example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"set": {},
"user": { "id": "example-id", "custom": {} }
}'Response: PollResponse
Parameters
Path Parameters:
poll_id(string) (required)
Request Body:
set(object): Sets new field valuesunset([]string): Array of field names to unsetuser(UserRequest)user_id(string)
DeletePoll
Remove a poll from the chat application, permanently eliminating it from user access and records. Use this method to clean up outdated or irrelevant polls.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/polls/example_value?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: Response
Parameters
Path Parameters:
poll_id(string) (required)
Query Parameters:
user_id(string)
CreatePollOption
Add a new option to an existing poll to expand the choices available to users. Use this method when you need to introduce additional voting options in a poll.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/polls/example_value/options" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"text": "Hello, World!",
"user": { "id": "example-id", "custom": {} },
"user_id": "user-123"
}'Example: with Custom
curl -X POST "https://chat.stream-io-api.com/api/v2/polls/example_value/options" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"text": "Hello, World!",
"Custom": {}
}'Response: PollOptionResponse
Parameters
Path Parameters:
poll_id(string) (required)
Request Body:
Custom(object)text(string) (required): Option textuser(UserRequest)user_id(string)
UpdatePollOption
Modify the details of an existing poll option to correct, enhance, or adjust its content. Use this method to refine or update the available choices in a poll.
Example
curl -X PUT "https://chat.stream-io-api.com/api/v2/polls/example_value/options" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"id": "example-id",
"text": "Hello, World!",
"user": { "id": "example-id", "custom": {} },
"user_id": "user-123"
}'Example: with Custom
curl -X PUT "https://chat.stream-io-api.com/api/v2/polls/example_value/options" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"id": "example-id",
"text": "Hello, World!",
"Custom": {}
}'Response: PollOptionResponse
Parameters
Path Parameters:
poll_id(string) (required)
Request Body:
Custom(object)id(string) (required): Option IDtext(string) (required): Option textuser(UserRequest)user_id(string)
GetPollOption
Retrieve detailed information about a specific poll option to understand its current setup and status. Use this method to inspect the details of a particular choice within a poll.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/polls/example_value/options/example_value?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: PollOptionResponse
Parameters
Path Parameters:
poll_id(string) (required)option_id(string) (required)
Query Parameters:
user_id(string)
DeletePollOption
Remove a specific option from an existing poll. Use this method when you need to update a poll by eliminating options that are no longer valid or necessary.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/polls/example_value/options/example_value?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: Response
Parameters
Path Parameters:
poll_id(string) (required)option_id(string) (required)
Query Parameters:
user_id(string)
QueryPollVotes
Retrieve the current vote counts for a specific poll. This method is useful for monitoring poll results and understanding user preferences in real-time.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/polls/example_value/votes?user_id=user-123" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"limit": 1
}'Example: with filter and sort
curl -X POST "https://chat.stream-io-api.com/api/v2/polls/example_value/votes?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"filter": {},
"sort": [{ "direction": 1 }]
}'Example: with next and prev
curl -X POST "https://chat.stream-io-api.com/api/v2/polls/example_value/votes?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"next": "example_value",
"prev": "example_value"
}'Response: PollVotesResponse
Parameters
Path Parameters:
poll_id(string) (required)
Query Parameters:
user_id(string)
Request Body:
filter(object): Filter to apply to the querylimit(int)next(string)prev(string)sort([]SortParamRequest): Array of sort parameters
UpdatePushNotificationPreferences
Modify the push notification settings for a user or application. Use this method to customize how and when notifications are delivered to enhance user engagement.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/push_preferences" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"preferences": [{ "call_level": "example_value" }]
}'Response: UpsertPushPreferencesResponse
Parameters
Request Body:
preferences([]PushPreferenceInput) (required): A list of push preferences for channels, calls, or the user.
ListPushProviders
Get a list of available push notification providers integrated with your application. This method helps you understand which services are available for sending notifications to users.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/push_providers" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ListPushProvidersResponse
UpsertPushProvider
Add or update a push notification provider in your system. Use this method to manage your notification delivery services, ensuring they are correctly configured and up-to-date.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/push_providers" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"push_provider": { "name": "Example Name", "apn_auth_key": "example_value" }
}'Response: UpsertPushProviderResponse
Parameters
Request Body:
push_provider(PushProviderRequest)
DeletePushProvider
Remove a push notification provider from your application’s configuration. Use this method to clean up unused or deprecated providers and streamline your notification setup.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/push_providers/messaging/example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: Response
Parameters
Path Parameters:
type(string) (required)name(string) (required)
GetPushTemplates
Retrieve a list of available push notification templates. This method is useful for managing and selecting pre-defined message formats to ensure consistent communication with users.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/push_templates?push_provider_type=example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetPushTemplatesResponse
Parameters
Query Parameters:
push_provider_name(string)push_provider_type(string) (required)
UpsertPushTemplate
Create or update a push notification template to streamline the creation of consistent and professional notifications. Use this method to manage your message templates efficiently.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/push_templates" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"event_type": "example_value",
"push_provider_type": "example_value",
"enable_push": true,
"push_provider_name": "example_value"
}'Example: with template
curl -X POST "https://chat.stream-io-api.com/api/v2/push_templates" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"event_type": "example_value",
"push_provider_type": "example_value",
"template": "example_value"
}'Response: UpsertPushTemplateResponse
Parameters
Request Body:
enable_push(bool): Whether to send push notification for this eventevent_type(string) (required): Event type. One of: message.new, message.updated, reaction.new, notification.reminder_due, feeds.activity.added, feeds.comment.added, feeds.activity.reaction.added, feeds.comment.reaction.added, feeds.follow.created, feeds.notification_feed.updatedpush_provider_name(string): Push provider namepush_provider_type(string) (required): Push provider type. One of: firebase, apn, huawei, xiaomitemplate(string): Push template
GetRateLimits
Fetch the current rate limits applicable to your account or application. Use this method to understand your usage boundaries and prevent exceeding limits that could disrupt service.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/rate_limits?server_side=true&android=true" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Example: with ios and web
curl -X GET "https://chat.stream-io-api.com/api/v2/rate_limits?ios=true&web=true" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Example: with endpoints
curl -X GET "https://chat.stream-io-api.com/api/v2/rate_limits?endpoints=example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetRateLimitsResponse
Parameters
Query Parameters:
server_side(bool)android(bool)ios(bool)web(bool)endpoints(string)
ListRoles
Obtain a list of roles defined within your application, along with their associated permissions. This method is helpful for managing user access and ensuring appropriate permissions are assigned.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/roles" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ListRolesResponse
CreateRole
Create a new role within the chat application to define user permissions and access levels; use this when setting up or modifying user roles.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/roles" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"name": "Example Name"
}'Response: CreateRoleResponse
Parameters
Request Body:
name(string) (required): Role name
DeleteRole
Remove an existing role from the chat application to revoke associated permissions and access; use this when a role is no longer needed.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/roles/example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: Response
Parameters
Path Parameters:
name(string) (required)
GetTask
Retrieve the current status of a specific task to monitor progress or completion; use this to track task execution.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/tasks/example-id" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetTaskResponse
Parameters
Path Parameters:
id(string) (required)
UploadFile
Upload a file to the chat application to share it with other users or for storage; use this to facilitate file sharing and management.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/uploads/file" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"file": "example_value",
"user": { "id": "example-id" }
}'Response: FileUploadResponse
Parameters
Request Body:
file(string): file fielduser(OnlyUserID): user for the request server side only
DeleteFile
Remove a previously uploaded file from the chat application to free up space or maintain data privacy; use this to manage file storage.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/uploads/file?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: Response
Parameters
Query Parameters:
url(string)
UploadImage
Upload an image to the chat application to share it with other users or for visual content storage; use this to enhance conversations with images.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/uploads/image" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"file": "example_value",
"upload_sizes": [{ "crop": "example_value" }]
}'Example: with user
curl -X POST "https://chat.stream-io-api.com/api/v2/uploads/image" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user": { "id": "example-id" }
}'Response: ImageUploadResponse
Parameters
Request Body:
file(string)upload_sizes([]ImageSize): field with JSON-encoded array of image size configurationsuser(OnlyUserID)
DeleteImage
Remove a previously uploaded image from the chat application to manage storage or privacy; use this to control visual content availability.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/uploads/image?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: Response
Parameters
Query Parameters:
url(string)
ListUserGroups
Retrieve a list of all user groups. Use this to view and manage the groups available within your application.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/usergroups?limit=10&id_gt=example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Example: with created_at_gt and team_id
curl -X GET "https://chat.stream-io-api.com/api/v2/usergroups?created_at_gt=example_value&team_id=example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ListUserGroupsResponse
Parameters
Query Parameters:
limit(int)id_gt(string)created_at_gt(string)team_id(string)
CreateUserGroup
Create a new user group. Use this method to organize users into groups for better management and access control.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/usergroups" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"name": "Example Name",
"description": "example_value",
"id": "example-id"
}'Example: with member_ids and team_id
curl -X POST "https://chat.stream-io-api.com/api/v2/usergroups" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"name": "Example Name",
"member_ids": ["id-1", "id-2"],
"team_id": "example_value"
}'Response: CreateUserGroupResponse
Parameters
Request Body:
description(string): An optional description for the groupid(string): Optional user group ID. If not provided, a UUID v7 will be generatedmember_ids([]string): Optional initial list of user IDs to add as membersname(string) (required): The user friendly name of the user groupteam_id(string): Optional team ID to scope the group to a team
SearchUserGroups
Find user groups based on specific criteria. Use this to quickly locate groups that meet your search parameters.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/usergroups/search?query=example_value&limit=10&name_gt=example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Example: with id_gt and team_id
curl -X GET "https://chat.stream-io-api.com/api/v2/usergroups/search?query=example_value&id_gt=example_value&team_id=example_value" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: SearchUserGroupsResponse
Parameters
Query Parameters:
query(string) (required)limit(int)name_gt(string)id_gt(string)team_id(string)
GetUserGroup
Retrieve details of a specific user group. Use this to view information about a particular group and its members.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/usergroups/example-id?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetUserGroupResponse
Parameters
Path Parameters:
id(string) (required)
Query Parameters:
team_id(string)
UpdateUserGroup
Modify the details of an existing user group. Use this method to change group settings or update group information.
Example
curl -X PUT "https://chat.stream-io-api.com/api/v2/usergroups/example-id" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"description": "example_value",
"name": "Example Name"
}'Example: with team_id
curl -X PUT "https://chat.stream-io-api.com/api/v2/usergroups/example-id" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"team_id": "example_value"
}'Response: UpdateUserGroupResponse
Parameters
Path Parameters:
id(string) (required)
Request Body:
description(string): The new description for the groupname(string): The new name of the user groupteam_id(string)
DeleteUserGroup
Remove a user group from the system. Use this to delete groups that are no longer needed, ensuring the organization of your user base.
Example
curl -X DELETE "https://chat.stream-io-api.com/api/v2/usergroups/example-id?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: Response
Parameters
Path Parameters:
id(string) (required)
Query Parameters:
team_id(string)
AddUserGroupMembers
Use this method to add members to a user group, allowing them to access the group's resources and participate in group activities. Ideal for managing team memberships and ensuring the right people are included in specific group communications.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/usergroups/example-id/members" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"member_ids": ["id-1", "id-2"],
"as_admin": true,
"team_id": "example_value"
}'Response: AddUserGroupMembersResponse
Parameters
Path Parameters:
id(string) (required)
Request Body:
as_admin(bool): Whether to add the members as group admins. Defaults to falsemember_ids([]string) (required): List of user IDs to add as membersteam_id(string)
RemoveUserGroupMembers
This method removes members from a user group, revoking their access to the group's resources and activities. It is useful for managing group memberships and maintaining security by ensuring only authorized users remain in the group.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/usergroups/example-id/members/delete" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"member_ids": ["id-1", "id-2"],
"team_id": "example_value"
}'Response: RemoveUserGroupMembersResponse
Parameters
Path Parameters:
id(string) (required)
Request Body:
member_ids([]string) (required): List of user IDs to removeteam_id(string)
QueryUsers
Search for users within the chat application based on specific criteria to find and interact with them; use this to efficiently locate users.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/users?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: QueryUsersResponse
Parameters
Query Parameters:
payload()
UpdateUsers
Add new users or modify existing user details within the chat application to keep user information current; use this for comprehensive user management.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/users" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"users": ["user-123", "user-456"]
}'Response: UpdateUsersResponse
Parameters
Request Body:
users(object) (required): Object containing users
UpdateUsersPartial
Make specific updates to existing user details without altering the entire user profile; use this for targeted changes to user information.
Example
curl -X PATCH "https://chat.stream-io-api.com/api/v2/users" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"users": ["user-123", "user-456"]
}'Response: UpdateUsersResponse
Parameters
Request Body:
users([]UpdateUserPartialRequest) (required)
GetBlockedUsers
Retrieve a list of users currently blocked from accessing chat services, useful for managing and reviewing user restrictions.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/users/block?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: GetBlockedUsersResponse
Parameters
Query Parameters:
user_id(string)
BlockUsers
Block specified users from accessing chat features, ideal for temporarily restricting users due to policy violations or other administrative reasons.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/users/block" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"blocked_user_id": "user-123",
"user": { "id": "example-id", "custom": {} },
"user_id": "user-123"
}'Response: BlockUsersResponse
Parameters
Request Body:
blocked_user_id(string) (required): User id to blockuser(UserRequest)user_id(string)
DeactivateUsers
Deactivate multiple user accounts to suspend their access and activity, often used for managing inactive or problematic accounts.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/users/deactivate" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"],
"created_by_id": "example_value",
"mark_channels_deleted": true
}'Example: with mark_messages_deleted
curl -X POST "https://chat.stream-io-api.com/api/v2/users/deactivate" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"],
"mark_messages_deleted": true
}'Response: DeactivateUsersResponse
Parameters
Request Body:
created_by_id(string): ID of the user who deactivated the usersmark_channels_deleted(bool)mark_messages_deleted(bool): Makes messages appear to be deleteduser_ids([]string) (required): User IDs to deactivate
DeleteUsers
Permanently remove user accounts and all associated data, suitable for complying with data privacy requests or clearing inactive accounts.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/users/delete" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"],
"calls": "example_value",
"conversations": "example_value"
}'Example: with files and messages
curl -X POST "https://chat.stream-io-api.com/api/v2/users/delete" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"],
"files": true,
"messages": "example_value"
}'Example: with new_call_owner_id and new_channel_owner_id
curl -X POST "https://chat.stream-io-api.com/api/v2/users/delete" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"],
"new_call_owner_id": "example_value",
"new_channel_owner_id": "example_value"
}'Example: with user
curl -X POST "https://chat.stream-io-api.com/api/v2/users/delete" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"],
"user": "example_value"
}'Response: DeleteUsersResponse
Parameters
Request Body:
calls(string): Calls delete mode. Affected calls are those that include exactly two members, one of whom is the user being deleted.
- null or empty string - doesn't delete any calls
- soft - marks user's calls and their related data as deleted (soft-delete)
- hard - deletes user's calls and their data completely (hard-delete)
conversations(string): Conversation channels delete mode. Conversation channel is any channel which only has two members one of which is the user being deleted.
- null or empty string - doesn't delete any conversation channels
- soft - marks all conversation channels as deleted (same effect as Delete Channels with 'hard' option disabled)
- hard - deletes channel and all its data completely including messages (same effect as Delete Channels with 'hard' option enabled)
files(bool): Delete user files.
- false or empty string - doesn't delete any files
- true - deletes all files uploaded by the user, including images and attachments.
messages(string): Message delete mode.
- null or empty string - doesn't delete user messages
- soft - marks all user messages as deleted without removing any related message data
- pruning - marks all user messages as deleted, nullifies message information and removes some message data such as reactions and flags
- hard - deletes messages completely with all related information
new_call_owner_id(string)new_channel_owner_id(string)user(string): User delete mode.
- soft - marks user as deleted and retains all user data
- pruning - marks user as deleted and nullifies user information
- hard - deletes user completely. Requires 'hard' option for messages and conversations as well
user_ids([]string) (required): IDs of users to delete
GetUserLiveLocations
Access the real-time location of users, useful for features that depend on location-based services or tracking.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/users/live_locations?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: SharedLocationsResponse
Parameters
Query Parameters:
user_id(string)
UpdateLiveLocation
Refresh the live location data for a user, ensuring that location-based services have the most current information.
Example
curl -X PUT "https://chat.stream-io-api.com/api/v2/users/live_locations?user_id=user-123" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"message_id": "message-789",
"latitude": 1.0
}'Example: with longitude and end_at
curl -X PUT "https://chat.stream-io-api.com/api/v2/users/live_locations?" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"message_id": "message-789",
"end_at": 1.0,
"longitude": 1.0
}'Response: SharedLocationResponse
Parameters
Query Parameters:
user_id(string)
Request Body:
end_at(float): Time when the live location expireslatitude(float): Latitude coordinatelongitude(float): Longitude coordinatemessage_id(string) (required): Live location ID
ReactivateUsers
Restore access to previously deactivated user accounts, allowing them to resume using chat services.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/users/reactivate" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"],
"created_by_id": "example_value",
"restore_channels": true
}'Example: with restore_messages
curl -X POST "https://chat.stream-io-api.com/api/v2/users/reactivate" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"],
"restore_messages": true
}'Response: ReactivateUsersResponse
Parameters
Request Body:
created_by_id(string): ID of the user who's reactivating the usersrestore_channels(bool)restore_messages(bool): Restore previously deleted messagesuser_ids([]string) (required): User IDs to reactivate
RestoreUsers
Reinstate users who were previously deleted, recovering their account and data if within a grace period, useful for accidental deletions.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/users/restore" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"user_ids": ["user-123", "user-456"]
}'Response: Response
Parameters
Request Body:
user_ids([]string) (required)
UnblockUsers
Remove restrictions on users who were previously blocked, allowing them to access chat services again.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/users/unblock" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"blocked_user_id": "user-123",
"user": { "id": "example-id", "custom": {} },
"user_id": "user-123"
}'Response: UnblockUsersResponse
Parameters
Request Body:
blocked_user_id(string) (required)user(UserRequest)user_id(string)
DeactivateUser
Suspend a specific user's account, preventing access and activity, typically used for addressing individual account issues.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/users/user-123/deactivate" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"created_by_id": "example_value",
"mark_messages_deleted": true
}'Response: DeactivateUserResponse
Parameters
Path Parameters:
user_id(string) (required)
Request Body:
created_by_id(string): ID of the user who deactivated the usermark_messages_deleted(bool): Makes messages appear to be deleted
ExportUser
Exports the user's data for backup or analysis purposes, ensuring you have a local copy of their information when needed.
Example
curl -X GET "https://chat.stream-io-api.com/api/v2/users/user-123/export" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt"Response: ExportUserResponse
Parameters
Path Parameters:
user_id(string) (required)
ReactivateUser
Reactivates a previously deactivated user, allowing them to regain access to their account and continue using the chat service.
Example
curl -X POST "https://chat.stream-io-api.com/api/v2/users/user-123/reactivate" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"created_by_id": "example_value",
"name": "Example Name"
}'Example: with restore_messages
curl -X POST "https://chat.stream-io-api.com/api/v2/users/user-123/reactivate" \
-H "Authorization: Bearer $STREAM_AUTH_TOKEN" \
-H "Content-Type: application/json" \
-H "stream-auth-type: jwt" \
-d '{
"restore_messages": true
}'Response: ReactivateUserResponse
Parameters
Path Parameters:
user_id(string) (required)
Request Body:
created_by_id(string): ID of the user who's reactivating the username(string): Set this field to put new name for the userrestore_messages(bool): Restore previously deleted messages
Types Reference
This section documents the types/interfaces used in this API. These types are extracted from the OpenAPI specification.
AIImageConfig
// AIImageConfig
{
"async": false,
"enabled": false,
"ocr_rules": [],
"rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| async | boolean | No | |
| enabled | boolean | No | |
| ocr_rules | OCRRule[] | No | |
| rules | AWSRekognitionRule[] | No |
AITextConfig
// AITextConfig
{
"async": false,
"enabled": false,
"profile": "string",
"rules": [],
"severity_rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| async | boolean | No | |
| enabled | boolean | No | |
| profile | string | No | |
| rules | BodyguardRule[] | No | |
| severity_rules | BodyguardSeverityRule[] | No |
AIVideoConfig
// AIVideoConfig
{
"async": false,
"enabled": false,
"rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| async | boolean | No | |
| enabled | boolean | No | |
| rules | AWSRekognitionRule[] | No |
APNConfig
// APNConfig
{
"Disabled": false,
"auth_key": "string",
"auth_type": "certificate",
"bundle_id": "string",
"development": false,
"host": "string",
"key_id": "string",
"notification_template": "string",
"p12_cert": "string",
"team_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| Disabled | boolean | No | |
| auth_key | string | No | |
| auth_type | 'certificate' | 'token' | No |
| bundle_id | string | No | |
| development | boolean | No | |
| host | string | No | |
| key_id | string | No | |
| notification_template | string | No | |
| p12_cert | string | No | |
| team_id | string | No |
Action
// Action
{
"name": "string",
"style": "string",
"text": "string",
"type": "string",
"value": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | |
| text | string | Yes | |
| type | string | Yes | |
| style | string | No | |
| value | string | No |
AddUserGroupMembersResponse
Response for adding members to a user group
// AddUserGroupMembersResponse
{
"duration": "string",
"user_group": UserGroupResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| user_group | UserGroupResponse | No | The updated user group |
AppResponseFields
// AppResponseFields
{
"activity_metrics_config": {},
"allow_multi_user_devices": false,
"allowed_flag_reasons": [],
"async_url_enrich_enabled": false,
"auto_translation_enabled": false,
"before_message_send_hook_url": "string",
"call_types": {},
"campaign_enabled": false,
"cdn_expiration_seconds": 0,
"channel_configs": {},
"custom_action_handler_url": "string",
"datadog_info": DataDogInfo,
"disable_auth_checks": false,
"disable_permissions_checks": false,
"enforce_unique_usernames": "string",
"event_hooks": [],
"file_upload_config": FileUploadConfig,
"geofences": [],
"grants": {},
"guest_user_creation_disabled": false,
"id": 0,
"image_moderation_enabled": false,
"image_moderation_labels": [],
"image_upload_config": FileUploadConfig,
"max_aggregated_activities_length": 0,
"moderation_audio_call_moderation_enabled": false,
"moderation_dashboard_preferences": ModerationDashboardPreferences,
"moderation_enabled": false,
"moderation_llm_configurability_enabled": false,
"moderation_multitenant_blocklist_enabled": false,
"moderation_s3_image_access_role_arn": "string",
"moderation_video_call_moderation_enabled": false,
"moderation_webhook_url": "string",
"multi_tenant_enabled": false,
"name": "string",
"organization": "string",
"permission_version": "string",
"placement": "string",
"policies": {},
"push_notifications": PushNotificationFields,
"reminders_interval": 0,
"revoke_tokens_issued_before": 0,
"sns_key": "string",
"sns_secret": "string",
"sns_topic_arn": "string",
"sqs_key": "string",
"sqs_secret": "string",
"sqs_url": "string",
"suspended": false,
"suspended_explanation": "string",
"use_hook_v2": false,
"user_response_time_enabled": false,
"user_search_disallowed_roles": [],
"webhook_events": [],
"webhook_url": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| allow_multi_user_devices | boolean | Yes | |
| async_url_enrich_enabled | boolean | Yes | |
| auto_translation_enabled | boolean | Yes | |
| call_types | Record<string, any> | Yes | |
| campaign_enabled | boolean | Yes | |
| cdn_expiration_seconds | number | Yes | |
| channel_configs | Record<string, any> | Yes | |
| custom_action_handler_url | string | Yes | |
| disable_auth_checks | boolean | Yes | |
| disable_permissions_checks | boolean | Yes | |
| enforce_unique_usernames | string | Yes | |
| event_hooks | EventHook[] | Yes | |
| file_upload_config | FileUploadConfig | Yes | |
| grants | Record<string, any> | Yes | |
| guest_user_creation_disabled | boolean | Yes | |
| id | number | Yes | |
| image_moderation_enabled | boolean | Yes | |
| image_upload_config | FileUploadConfig | Yes | |
| max_aggregated_activities_length | number | Yes | |
| moderation_audio_call_moderation_enabled | boolean | Yes | |
| moderation_enabled | boolean | Yes | |
| moderation_llm_configurability_enabled | boolean | Yes | |
| moderation_multitenant_blocklist_enabled | boolean | Yes | |
| moderation_video_call_moderation_enabled | boolean | Yes | |
| moderation_webhook_url | string | Yes | |
| multi_tenant_enabled | boolean | Yes | |
| name | string | Yes | |
| organization | string | Yes | |
| permission_version | string | Yes | |
| placement | string | Yes | |
| policies | Record<string, any> | Yes | |
| push_notifications | PushNotificationFields | Yes | |
| reminders_interval | number | Yes | |
| sns_key | string | Yes | |
| sns_secret | string | Yes | |
| sns_topic_arn | string | Yes | |
| sqs_key | string | Yes | |
| sqs_secret | string | Yes | |
| sqs_url | string | Yes | |
| suspended | boolean | Yes | |
| suspended_explanation | string | Yes | |
| use_hook_v2 | boolean | Yes | |
| user_response_time_enabled | boolean | Yes | |
| user_search_disallowed_roles | string[] | Yes | |
| webhook_events | string[] | Yes | |
| webhook_url | string | Yes | |
| activity_metrics_config | Record<string, any> | No | |
| allowed_flag_reasons | string[] | No | |
| before_message_send_hook_url | string | No | |
| datadog_info | DataDogInfo | No | |
| geofences | GeofenceResponse[] | No | |
| image_moderation_labels | string[] | No | |
| moderation_dashboard_preferences | ModerationDashboardPreferences | No | |
| moderation_s3_image_access_role_arn | string | No | |
| revoke_tokens_issued_before | number | No |
AsyncModerationCallbackConfig
// AsyncModerationCallbackConfig
{
"mode": "CALLBACK_MODE_NONE",
"server_url": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| mode | 'CALLBACK_MODE_NONE' | 'CALLBACK_MODE_REST' | 'CALLBACK_MODE_TWIRP' |
| server_url | string | No |
AsyncModerationConfiguration
// AsyncModerationConfiguration
{
"callback": AsyncModerationCallbackConfig,
"timeout_ms": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| callback | AsyncModerationCallbackConfig | No | |
| timeout_ms | number | No |
AutomodPlatformCircumventionConfig
// AutomodPlatformCircumventionConfig
{
"async": false,
"enabled": false,
"rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| async | boolean | No | |
| enabled | boolean | No | |
| rules | AutomodRule[] | No |
AutomodSemanticFiltersConfig
// AutomodSemanticFiltersConfig
{
"async": false,
"enabled": false,
"rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| async | boolean | No | |
| enabled | boolean | No | |
| rules | AutomodSemanticFiltersRule[] | No |
AutomodToxicityConfig
// AutomodToxicityConfig
{
"async": false,
"enabled": false,
"rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| async | boolean | No | |
| enabled | boolean | No | |
| rules | AutomodRule[] | No |
AzureRequest
Config for creating Azure Blob Storage storage
// AzureRequest
{
"abs_account_name": "string",
"abs_client_id": "string",
"abs_client_secret": "string",
"abs_tenant_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| abs_account_name | string | Yes | The account name |
| abs_client_id | string | Yes | The client id |
| abs_client_secret | string | Yes | The client secret |
| abs_tenant_id | string | Yes | The tenant id |
BlockListConfig
// BlockListConfig
{
"async": false,
"enabled": false,
"match_substring": false,
"rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| async | boolean | No | |
| enabled | boolean | No | |
| match_substring | boolean | No | |
| rules | BlockListRule[] | No |
BlockListResponse
Block list contains restricted words
// BlockListResponse
{
"created_at": 0,
"id": "string",
"is_leet_check_enabled": false,
"is_plural_check_enabled": false,
"name": "string",
"team": "string",
"type": "string",
"updated_at": 0,
"words": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| is_leet_check_enabled | boolean | Yes | |
| is_plural_check_enabled | boolean | Yes | |
| name | string | Yes | Block list name |
| type | string | Yes | Block list type. One of: regex, domain, domain_allowlist, email, email_allowl... |
| words | string[] | Yes | List of words to block |
| created_at | number | No | Date/time of creation |
| id | string | No | |
| team | string | No | |
| updated_at | number | No | Date/time of the last update |
BlockUsersResponse
// BlockUsersResponse
{
"blocked_by_user_id": "string",
"blocked_user_id": "string",
"created_at": 0,
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| blocked_by_user_id | string | Yes | User id who blocked another user |
| blocked_user_id | string | Yes | User id who got blocked |
| created_at | number | Yes | Timestamp when the user was blocked |
| duration | string | Yes | Duration of the request in milliseconds |
BlockedUserResponse
// BlockedUserResponse
{
"blocked_user": UserResponse,
"blocked_user_id": "string",
"created_at": 0,
"user": UserResponse,
"user_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| blocked_user | UserResponse | Yes | User who got blocked |
| blocked_user_id | string | Yes | ID of the user who got blocked |
| created_at | number | Yes | |
| user | UserResponse | Yes | User who blocked another user |
| user_id | string | Yes | ID of the user who blocked another user |
BodyguardImageAnalysisConfig
// BodyguardImageAnalysisConfig
{
"rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| rules | BodyguardRule[] | No |
ChannelResponse
Represents channel in chat
// ChannelResponse
{
"auto_translation_enabled": false,
"auto_translation_language": "string",
"blocked": false,
"cid": "string",
"config": ChannelConfigWithInfo,
"cooldown": 0,
"created_at": 0,
"created_by": UserResponse,
"custom": {},
"deleted_at": 0,
"disabled": false,
"filter_tags": [],
"frozen": false,
"hidden": false,
"hide_messages_before": 0,
"id": "string",
"last_message_at": 0,
"member_count": 0,
"members": [],
"message_count": 0,
"mute_expires_at": 0,
"muted": false,
"own_capabilities": [],
"team": "string",
"truncated_at": 0,
"truncated_by": UserResponse,
"type": "string",
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| cid | string | Yes | Channel CID (<type>:<id>) |
| created_at | number | Yes | Date/time of creation |
| custom | Record<string, any> | Yes | Custom data for this object |
| disabled | boolean | Yes | |
| frozen | boolean | Yes | Whether channel is frozen or not |
| id | string | Yes | Channel unique ID |
| type | string | Yes | Type of the channel |
| updated_at | number | Yes | Date/time of the last update |
| auto_translation_enabled | boolean | No | Whether auto translation is enabled or not |
| auto_translation_language | string | No | Language to translate to when auto translation is active |
| blocked | boolean | No | Whether this channel is blocked by current user or not |
| config | ChannelConfigWithInfo | No | Channel configuration |
| cooldown | number | No | Cooldown period after sending each message |
| created_by | UserResponse | No | Creator of the channel |
| deleted_at | number | No | Date/time of deletion |
| filter_tags | string[] | No | List of filter tags associated with the channel |
| hidden | boolean | No | Whether this channel is hidden by current user or not |
| hide_messages_before | number | No | Date since when the message history is accessible |
| last_message_at | number | No | Date of the last message sent |
| member_count | number | No | Number of members in the channel |
| members | ChannelMemberResponse[] | No | List of channel members (max 100) |
| message_count | number | No | Number of messages in the channel |
| mute_expires_at | number | No | Date of mute expiration |
| muted | boolean | No | Whether this channel is muted or not |
| own_capabilities | ChannelOwnCapability[] | No | List of channel capabilities of authenticated user |
| team | string | No | Team the channel belongs to (multi-tenant only) |
| truncated_at | number | No | Date of the latest truncation of the channel |
| truncated_by | UserResponse | No |
ChatPreferencesInput
// ChatPreferencesInput
{
"channel_mentions": "all",
"default_preference": "all",
"direct_mentions": "all",
"group_mentions": "all",
"here_mentions": "all",
"role_mentions": "all",
"thread_replies": "all"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| channel_mentions | 'all' | 'none' | No |
| default_preference | 'all' | 'none' | No |
| direct_mentions | 'all' | 'none' | No |
| group_mentions | 'all' | 'none' | No |
| here_mentions | 'all' | 'none' | No |
| role_mentions | 'all' | 'none' | No |
| thread_replies | 'all' | 'none' | No |
CheckExternalStorageResponse
Basic response information
// CheckExternalStorageResponse
{
"duration": "string",
"file_url": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| file_url | string | Yes |
CheckPushResponse
// CheckPushResponse
{
"device_errors": {},
"duration": "string",
"event_type": "string",
"general_errors": [],
"rendered_apn_template": "string",
"rendered_firebase_template": "string",
"rendered_message": {},
"skip_devices": false
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| device_errors | Record<string, any> | No | Object with device errors |
| event_type | string | No | The event type that was tested |
| general_errors | string[] | No | List of general errors |
| rendered_apn_template | string | No | |
| rendered_firebase_template | string | No | |
| rendered_message | Record<string, any> | No | |
| skip_devices | boolean | No | Don't require existing devices to render templates |
CheckSNSResponse
// CheckSNSResponse
{
"data": {},
"duration": "string",
"error": "string",
"status": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| status | string | Yes | Validation result. One of: ok, error |
| data | Record<string, any> | No | Error data |
| error | string | No | Error text |
CheckSQSResponse
// CheckSQSResponse
{
"data": {},
"duration": "string",
"error": "string",
"status": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| status | string | Yes | Validation result. One of: ok, error |
| data | Record<string, any> | No | Error data |
| error | string | No | Error text |
CreateBlockListResponse
Basic response information
// CreateBlockListResponse
{
"blocklist": BlockListResponse,
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| blocklist | BlockListResponse | No |
CreateExternalStorageResponse
Basic response information
// CreateExternalStorageResponse
{
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
CreateGuestResponse
// CreateGuestResponse
{
"access_token": "string",
"duration": "string",
"user": UserResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| access_token | string | Yes | the access token to authenticate the user |
| duration | string | Yes | Duration of the request in milliseconds |
| user | UserResponse | Yes | User object which server acts upon |
CreateImportResponse
Basic response information
// CreateImportResponse
{
"duration": "string",
"import_task": ImportTask
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| import_task | ImportTask | No |
CreateImportURLResponse
Basic response information
// CreateImportURLResponse
{
"duration": "string",
"path": "string",
"upload_url": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| path | string | Yes | |
| upload_url | string | Yes |
CreateImportV2TaskResponse
Basic response information
// CreateImportV2TaskResponse
{
"app_pk": 0,
"created_at": 0,
"duration": "string",
"id": "string",
"product": "string",
"settings": ImportV2TaskSettings,
"state": 0,
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| app_pk | number | Yes | |
| created_at | number | Yes | |
| duration | string | Yes | Duration of the request in milliseconds |
| id | string | Yes | |
| product | string | Yes | |
| settings | ImportV2TaskSettings | Yes | |
| state | number | Yes | |
| updated_at | number | Yes |
CreateRoleResponse
Basic response information
// CreateRoleResponse
{
"duration": "string",
"role": Role
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| role | Role | Yes |
CreateUserGroupResponse
Response for creating a user group
// CreateUserGroupResponse
{
"duration": "string",
"user_group": UserGroupResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| user_group | UserGroupResponse | No | The created user group |
Data
// Data
{
"id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes |
DataDogInfo
// DataDogInfo
{
"api_key": "string",
"enabled": false,
"site": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| api_key | string | No | |
| enabled | boolean | No | |
| site | string | No |
DeactivateUserResponse
// DeactivateUserResponse
{
"duration": "string",
"user": UserResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| user | UserResponse | No | Deactivated user object |
DeactivateUsersResponse
Basic response information
// DeactivateUsersResponse
{
"duration": "string",
"task_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| task_id | string | Yes |
DeleteExternalStorageResponse
Basic response information
// DeleteExternalStorageResponse
{
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
DeleteImportV2TaskResponse
Basic response information
// DeleteImportV2TaskResponse
{
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
DeleteUsersResponse
// DeleteUsersResponse
{
"duration": "string",
"task_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| task_id | string | Yes | ID of the task to delete users |
DeviceResponse
Response for Device
// DeviceResponse
{
"created_at": 0,
"disabled": false,
"disabled_reason": "string",
"id": "string",
"push_provider": "string",
"push_provider_name": "string",
"user_id": "string",
"voip": false
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | Date/time of creation |
| id | string | Yes | Device ID |
| push_provider | string | Yes | Push provider |
| user_id | string | Yes | User ID |
| disabled | boolean | No | Whether device is disabled or not |
| disabled_reason | string | No | Reason explaining why device had been disabled |
| push_provider_name | string | No | Push provider name |
| voip | boolean | No | When true the token is for Apple VoIP push notifications |
ErrorResult
// ErrorResult
{
"stacktrace": "string",
"type": "string",
"version": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| type | string | Yes | |
| stacktrace | string | No | |
| version | string | No |
EventHook
// EventHook
{
"callback": AsyncModerationCallbackConfig,
"created_at": 0,
"enabled": false,
"event_types": [],
"hook_type": "string",
"id": "string",
"product": "string",
"should_send_custom_events": false,
"sns_auth_type": "string",
"sns_event_based_message_group_id_enabled": false,
"sns_key": "string",
"sns_region": "string",
"sns_role_arn": "string",
"sns_secret": "string",
"sns_topic_arn": "string",
"sqs_auth_type": "string",
"sqs_key": "string",
"sqs_queue_url": "string",
"sqs_region": "string",
"sqs_role_arn": "string",
"sqs_secret": "string",
"timeout_ms": 0,
"updated_at": 0,
"webhook_url": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| callback | AsyncModerationCallbackConfig | No | |
| created_at | number | No | |
| enabled | boolean | No | |
| event_types | string[] | No | |
| hook_type | string | No | |
| id | string | No | |
| product | string | No | |
| should_send_custom_events | boolean | No | |
| sns_auth_type | string | No | |
| sns_event_based_message_group_id_enabled | boolean | No | |
| sns_key | string | No | |
| sns_region | string | No | |
| sns_role_arn | string | No | |
| sns_secret | string | No | |
| sns_topic_arn | string | No | |
| sqs_auth_type | string | No | |
| sqs_key | string | No | |
| sqs_queue_url | string | No | |
| sqs_region | string | No | |
| sqs_role_arn | string | No | |
| sqs_secret | string | No | |
| timeout_ms | number | No | |
| updated_at | number | No | |
| webhook_url | string | No |
ExportUserResponse
// ExportUserResponse
{
"duration": "string",
"messages": [],
"reactions": [],
"user": UserResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| messages | MessageResponse[] | No | List of exported messages |
| reactions | ReactionResponse[] | No | List of exported reactions |
| user | UserResponse | No | Exported user object |
ExportUsersResponse
Basic response information
// ExportUsersResponse
{
"duration": "string",
"task_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| task_id | string | Yes |
FeedsPreferences
// FeedsPreferences
{
"comment": "all",
"comment_mention": "all",
"comment_reaction": "all",
"comment_reply": "all",
"custom_activity_types": {},
"follow": "all",
"mention": "all",
"reaction": "all"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| comment | 'all' | 'none' | No |
| comment_mention | 'all' | 'none' | No |
| comment_reaction | 'all' | 'none' | No |
| comment_reply | 'all' | 'none' | No |
| custom_activity_types | Record<string, any> | No | Push notification preferences for custom activity types. Map of activity type... |
| follow | 'all' | 'none' | No |
| mention | 'all' | 'none' | No |
| reaction | 'all' | 'none' | No |
Field
// Field
{
"short": false,
"title": "string",
"value": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| short | boolean | Yes | |
| title | string | Yes | |
| value | string | Yes |
FileUploadConfig
// FileUploadConfig
{
"allowed_file_extensions": [],
"allowed_mime_types": [],
"blocked_file_extensions": [],
"blocked_mime_types": [],
"size_limit": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| size_limit | number | Yes | |
| allowed_file_extensions | string[] | No | |
| allowed_mime_types | string[] | No | |
| blocked_file_extensions | string[] | No | |
| blocked_mime_types | string[] | No |
FileUploadResponse
// FileUploadResponse
{
"duration": "string",
"file": "string",
"thumb_url": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| file | string | No | URL to the uploaded asset. Should be used to put to asset_url attachment field |
| thumb_url | string | No | URL of the file thumbnail for supported file formats. Should be put to `thumb... |
FirebaseConfig
// FirebaseConfig
{
"Disabled": false,
"apn_template": "string",
"credentials_json": "string",
"data_template": "string",
"notification_template": "string",
"server_key": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| Disabled | boolean | No | |
| apn_template | string | No | |
| credentials_json | string | No | |
| data_template | string | No | |
| notification_template | string | No | |
| server_key | string | No |
FullUserResponse
// FullUserResponse
{
"avg_response_time": 0,
"ban_expires": 0,
"banned": false,
"blocked_user_ids": [],
"bypass_moderation": false,
"channel_mutes": [],
"created_at": 0,
"custom": {},
"deactivated_at": 0,
"deleted_at": 0,
"devices": [],
"id": "string",
"image": "string",
"invisible": false,
"language": "string",
"last_active": 0,
"latest_hidden_channels": [],
"mutes": [],
"name": "string",
"online": false,
"privacy_settings": PrivacySettingsResponse,
"revoke_tokens_issued_before": 0,
"role": "string",
"shadow_banned": false,
"teams": [],
"teams_role": {},
"total_unread_count": 0,
"unread_channels": 0,
"unread_count": 0,
"unread_threads": 0,
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| banned | boolean | Yes | |
| blocked_user_ids | string[] | Yes | |
| channel_mutes | ChannelMute[] | Yes | |
| created_at | number | Yes | |
| custom | Record<string, any> | Yes | |
| devices | DeviceResponse[] | Yes | |
| id | string | Yes | |
| invisible | boolean | Yes | |
| language | string | Yes | |
| mutes | UserMuteResponse[] | Yes | |
| online | boolean | Yes | |
| role | string | Yes | |
| shadow_banned | boolean | Yes | |
| teams | string[] | Yes | |
| total_unread_count | number | Yes | |
| unread_channels | number | Yes | |
| unread_count | number | Yes | |
| unread_threads | number | Yes | |
| updated_at | number | Yes | |
| avg_response_time | number | No | |
| ban_expires | number | No | |
| bypass_moderation | boolean | No | |
| deactivated_at | number | No | |
| deleted_at | number | No | |
| image | string | No | |
| last_active | number | No | |
| latest_hidden_channels | string[] | No | |
| name | string | No | |
| privacy_settings | PrivacySettingsResponse | No | |
| revoke_tokens_issued_before | number | No | |
| teams_role | Record<string, any> | No |
GetApplicationResponse
Basic response information
// GetApplicationResponse
{
"app": AppResponseFields,
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| app | AppResponseFields | Yes | |
| duration | string | Yes | Duration of the request in milliseconds |
GetBlockListResponse
Response for get block list
// GetBlockListResponse
{
"blocklist": BlockListResponse,
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| blocklist | BlockListResponse | No | Block list object |
GetBlockedUsersResponse
// GetBlockedUsersResponse
{
"blocks": [],
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| blocks | BlockedUserResponse[] | Yes | Array of blocked user object |
| duration | string | Yes | Duration of the request in milliseconds |
GetCustomPermissionResponse
Basic response information
// GetCustomPermissionResponse
{
"duration": "string",
"permission": Permission
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| permission | Permission | Yes |
GetExternalStorageAWSS3Response
// GetExternalStorageAWSS3Response
{
"bucket": "string",
"path_prefix": "string",
"region": "string",
"role_arn": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| bucket | string | Yes | |
| region | string | Yes | |
| role_arn | string | Yes | |
| path_prefix | string | No |
GetExternalStorageResponse
Basic response information
// GetExternalStorageResponse
{
"aws_s3": GetExternalStorageAWSS3Response,
"created_at": 0,
"duration": "string",
"type": "string",
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | |
| duration | string | Yes | Duration of the request in milliseconds |
| type | string | Yes | |
| updated_at | number | Yes | |
| aws_s3 | GetExternalStorageAWSS3Response | No |
GetImportResponse
Basic response information
// GetImportResponse
{
"duration": "string",
"import_task": ImportTask
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| import_task | ImportTask | No |
GetImportV2TaskResponse
Basic response information
// GetImportV2TaskResponse
{
"app_pk": 0,
"created_at": 0,
"duration": "string",
"id": "string",
"product": "string",
"result": {},
"settings": ImportV2TaskSettings,
"state": 0,
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| app_pk | number | Yes | |
| created_at | number | Yes | |
| duration | string | Yes | Duration of the request in milliseconds |
| id | string | Yes | |
| product | string | Yes | |
| settings | ImportV2TaskSettings | Yes | |
| state | number | Yes | |
| updated_at | number | Yes | |
| result | Record<string, any> | No |
GetOGResponse
// GetOGResponse
{
"actions": [],
"asset_url": "string",
"author_icon": "string",
"author_link": "string",
"author_name": "string",
"color": "string",
"custom": {},
"duration": "string",
"fallback": "string",
"fields": [],
"footer": "string",
"footer_icon": "string",
"giphy": Images,
"image_url": "string",
"og_scrape_url": "string",
"original_height": 0,
"original_width": 0,
"pretext": "string",
"text": "string",
"thumb_url": "string",
"title": "string",
"title_link": "string",
"type": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| custom | Record<string, any> | Yes | |
| duration | string | Yes | |
| actions | Action[] | No | |
| asset_url | string | No | URL of detected video or audio |
| author_icon | string | No | |
| author_link | string | No | og:site |
| author_name | string | No | og:site_name |
| color | string | No | |
| fallback | string | No | |
| fields | Field[] | No | |
| footer | string | No | |
| footer_icon | string | No | |
| giphy | Images | No | |
| image_url | string | No | URL of detected image |
| og_scrape_url | string | No | extracted url from the text |
| original_height | number | No | |
| original_width | number | No | |
| pretext | string | No | |
| text | string | No | og:description |
| thumb_url | string | No | URL of detected thumb image |
| title | string | No | og:title |
| title_link | string | No | og:url |
| type | string | No | Attachment type, could be empty, image, audio or video |
GetPushTemplatesResponse
Basic response information
// GetPushTemplatesResponse
{
"duration": "string",
"templates": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| templates | PushTemplateResponse[] | Yes |
GetRateLimitsResponse
// GetRateLimitsResponse
{
"android": {},
"duration": "string",
"ios": {},
"server_side": {},
"web": {}
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| android | Record<string, any> | No | Map of endpoint rate limits for the Android platform |
| ios | Record<string, any> | No | Map of endpoint rate limits for the iOS platform |
| server_side | Record<string, any> | No | Map of endpoint rate limits for the server-side platform |
| web | Record<string, any> | No | Map of endpoint rate limits for the web platform |
GetTaskResponse
// GetTaskResponse
{
"created_at": 0,
"duration": "string",
"error": ErrorResult,
"result": {},
"status": "string",
"task_id": "string",
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | |
| duration | string | Yes | |
| status | string | Yes | Current status of task |
| task_id | string | Yes | ID of task |
| updated_at | number | Yes | |
| error | ErrorResult | No | Error produced by task |
| result | Record<string, any> | No | Result produced by task after completion |
GetUserGroupResponse
Response for getting a user group
// GetUserGroupResponse
{
"duration": "string",
"user_group": UserGroupResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| user_group | UserGroupResponse | No | The user group |
GoogleVisionConfig
// GoogleVisionConfig
{
"enabled": false
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| enabled | boolean | No |
HuaweiConfig
// HuaweiConfig
{
"Disabled": false,
"id": "string",
"secret": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| Disabled | boolean | No | |
| id | string | No | |
| secret | string | No |
ImageSize
// ImageSize
{
"crop": "string",
"height": 0,
"resize": "string",
"width": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| crop | string | No | Crop mode. One of: top, bottom, left, right, center |
| height | number | No | Target image height |
| resize | string | No | Resize method. One of: clip, crop, scale, fill |
| width | number | No | Target image width |
ImageUploadResponse
// ImageUploadResponse
{
"duration": "string",
"file": "string",
"thumb_url": "string",
"upload_sizes": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| file | string | No | |
| thumb_url | string | No | |
| upload_sizes | ImageSize[] | No | Array of image size configurations |
Images
// Images
{
"fixed_height": ImageData,
"fixed_height_downsampled": ImageData,
"fixed_height_still": ImageData,
"fixed_width": ImageData,
"fixed_width_downsampled": ImageData,
"fixed_width_still": ImageData,
"original": ImageData
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| fixed_height | ImageData | Yes | |
| fixed_height_downsampled | ImageData | Yes | |
| fixed_height_still | ImageData | Yes | |
| fixed_width | ImageData | Yes | |
| fixed_width_downsampled | ImageData | Yes | |
| fixed_width_still | ImageData | Yes | |
| original | ImageData | Yes |
ImportTask
// ImportTask
{
"created_at": 0,
"history": [],
"id": "string",
"mode": "string",
"path": "string",
"size": 0,
"state": "string",
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | |
| history | ImportTaskHistory[] | Yes | |
| id | string | Yes | |
| mode | string | Yes | |
| path | string | Yes | |
| state | string | Yes | |
| updated_at | number | Yes | |
| size | number | No |
ImportV2TaskItem
// ImportV2TaskItem
{
"app_pk": 0,
"created_at": 0,
"id": "string",
"product": "string",
"result": {},
"settings": ImportV2TaskSettings,
"state": 0,
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| app_pk | number | Yes | |
| created_at | number | Yes | |
| id | string | Yes | |
| product | string | Yes | |
| settings | ImportV2TaskSettings | Yes | |
| state | number | Yes | |
| updated_at | number | Yes | |
| result | Record<string, any> | No |
ImportV2TaskSettings
// ImportV2TaskSettings
{
"merge_custom": false,
"mode": "string",
"path": "string",
"s3": ImportV2TaskSettingsS3,
"skip_references_check": false,
"source": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| merge_custom | boolean | No | |
| mode | string | No | |
| path | string | No | |
| s3 | ImportV2TaskSettingsS3 | No | |
| skip_references_check | boolean | No | |
| source | string | No |
ImportV2TaskSettingsS3
// ImportV2TaskSettingsS3
{
"bucket": "string",
"dir": "string",
"region": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| bucket | string | No | |
| dir | string | No | |
| region | string | No |
LLMConfig
// LLMConfig
{
"app_context": "string",
"async": false,
"enabled": false,
"rules": [],
"severity_descriptions": {}
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| app_context | string | No | |
| async | boolean | No | |
| enabled | boolean | No | |
| rules | LLMRule[] | No | |
| severity_descriptions | Record<string, any> | No |
ListBlockListResponse
Basic response information
// ListBlockListResponse
{
"blocklists": [],
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| blocklists | BlockListResponse[] | Yes | |
| duration | string | Yes | Duration of the request in milliseconds |
ListDevicesResponse
List devices response
// ListDevicesResponse
{
"devices": [],
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| devices | DeviceResponse[] | Yes | List of devices |
| duration | string | Yes |
ListExternalStorageResponse
Basic response information
// ListExternalStorageResponse
{
"duration": "string",
"external_storages": {}
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| external_storages | Record<string, any> | Yes |
ListImportV2TasksResponse
Basic response information
// ListImportV2TasksResponse
{
"duration": "string",
"import_tasks": [],
"next": "string",
"prev": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| import_tasks | ImportV2TaskItem[] | Yes | |
| next | string | No | |
| prev | string | No |
ListImportsResponse
Basic response information
// ListImportsResponse
{
"duration": "string",
"import_tasks": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| import_tasks | ImportTask[] | Yes |
ListPermissionsResponse
Basic response information
// ListPermissionsResponse
{
"duration": "string",
"permissions": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| permissions | Permission[] | Yes |
ListPushProvidersResponse
Basic response information
// ListPushProvidersResponse
{
"duration": "string",
"push_providers": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| push_providers | PushProviderResponse[] | Yes |
ListRolesResponse
Basic response information
// ListRolesResponse
{
"duration": "string",
"roles": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| roles | Role[] | Yes |
ListUserGroupsResponse
Response for listing user groups
// ListUserGroupsResponse
{
"duration": "string",
"user_groups": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| user_groups | UserGroupResponse[] | Yes | List of user groups |
MessageResponse
Represents any chat message
// MessageResponse
{
"attachments": [],
"cid": "string",
"command": "string",
"created_at": 0,
"custom": {},
"deleted_at": 0,
"deleted_for_me": false,
"deleted_reply_count": 0,
"draft": DraftResponse,
"html": "string",
"i18n": {},
"id": "string",
"image_labels": {},
"latest_reactions": [],
"member": ChannelMemberResponse,
"mentioned_channel": false,
"mentioned_group_ids": [],
"mentioned_here": false,
"mentioned_roles": [],
"mentioned_users": [],
"message_text_updated_at": 0,
"mml": "string",
"moderation": ModerationV2Response,
"own_reactions": [],
"parent_id": "string",
"pin_expires": 0,
"pinned": false,
"pinned_at": 0,
"pinned_by": UserResponse,
"poll": PollResponseData,
"poll_id": "string",
"quoted_message": MessageResponse,
"quoted_message_id": "string",
"reaction_counts": {},
"reaction_groups": {},
"reaction_scores": {},
"reminder": ReminderResponseData,
"reply_count": 0,
"restricted_visibility": [],
"shadowed": false,
"shared_location": SharedLocationResponseData,
"show_in_channel": false,
"silent": false,
"text": "string",
"thread_participants": [],
"type": "string",
"updated_at": 0,
"user": UserResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| attachments | Attachment[] | Yes | Array of message attachments |
| cid | string | Yes | Channel unique identifier in <type>:<id> format |
| created_at | number | Yes | Date/time of creation |
| custom | Record<string, any> | Yes | |
| deleted_reply_count | number | Yes | |
| html | string | Yes | Contains HTML markup of the message. Can only be set when using server-side API |
| id | string | Yes | Message ID is unique string identifier of the message |
| latest_reactions | ReactionResponse[] | Yes | List of 10 latest reactions to this message |
| mentioned_channel | boolean | Yes | Whether the message mentioned the channel tag |
| mentioned_here | boolean | Yes | Whether the message mentioned online users with @here tag |
| mentioned_users | UserResponse[] | Yes | List of mentioned users |
| own_reactions | ReactionResponse[] | Yes | List of 10 latest reactions of authenticated user to this message |
| pinned | boolean | Yes | Whether message is pinned or not |
| reaction_counts | Record<string, any> | Yes | An object containing number of reactions of each type. Key: reaction type (st... |
| reaction_scores | Record<string, any> | Yes | An object containing scores of reactions of each type. Key: reaction type (st... |
| reply_count | number | Yes | Number of replies to this message |
| restricted_visibility | string[] | Yes | A list of user ids that have restricted visibility to the message, if the lis... |
| shadowed | boolean | Yes | Whether the message was shadowed or not |
| silent | boolean | Yes | Whether message is silent or not |
| text | string | Yes | Text of the message. Should be empty if mml is provided |
| type | string | Yes | Contains type of the message. One of: regular, ephemeral, error, reply, syste... |
| updated_at | number | Yes | Date/time of the last update |
| user | UserResponse | Yes | Sender of the message. Required when using server-side API |
| command | string | No | Contains provided slash command |
| deleted_at | number | No | Date/time of deletion |
| deleted_for_me | boolean | No | |
| draft | DraftResponse | No | |
| i18n | Record<string, any> | No | Object with translations. Key language contains the original language key. ... |
| image_labels | Record<string, any> | No | Contains image moderation information |
| member | ChannelMemberResponse | No | Channel member data for the message sender including only the channel_role |
| mentioned_group_ids | string[] | No | List of user group IDs mentioned in the message. Group members who are also c... |
| mentioned_roles | string[] | No | List of roles mentioned in the message (e.g. admin, channel_moderator, custom... |
| message_text_updated_at | number | No | |
| mml | string | No | Should be empty if text is provided. Can only be set when using server-side... |
| moderation | ModerationV2Response | No | |
| parent_id | string | No | ID of parent message (thread) |
| pin_expires | number | No | Date when pinned message expires |
| pinned_at | number | No | Date when message got pinned |
| pinned_by | UserResponse | No | Contains user who pinned the message |
| poll | PollResponseData | No | |
| poll_id | string | No | Identifier of the poll to include in the message |
| quoted_message | MessageResponse | No | Contains quoted message |
| quoted_message_id | string | No | |
| reaction_groups | Record<string, any> | No | |
| reminder | ReminderResponseData | No | |
| shared_location | SharedLocationResponseData | No | Contains shared location data |
| show_in_channel | boolean | No | Whether thread reply should be shown in the channel as well |
| thread_participants | UserResponse[] | No | List of users who participate in thread |
ModerationConfig
// ModerationConfig
{
"ai_image_config": AIImageConfig,
"ai_image_lite_config": BodyguardImageAnalysisConfig,
"ai_text_config": AITextConfig,
"ai_video_config": AIVideoConfig,
"async": false,
"automod_platform_circumvention_config": AutomodPlatformCircumventionConfig,
"automod_semantic_filters_config": AutomodSemanticFiltersConfig,
"automod_toxicity_config": AutomodToxicityConfig,
"block_list_config": BlockListConfig,
"created_at": 0,
"google_vision_config": GoogleVisionConfig,
"key": "string",
"llm_config": LLMConfig,
"supported_video_call_harm_types": [],
"team": "string",
"updated_at": 0,
"velocity_filter_config": VelocityFilterConfig,
"video_call_rule_config": VideoCallRuleConfig
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| ai_image_config | AIImageConfig | No | |
| ai_image_lite_config | BodyguardImageAnalysisConfig | No | |
| ai_text_config | AITextConfig | No | |
| ai_video_config | AIVideoConfig | No | |
| async | boolean | No | |
| automod_platform_circumvention_config | AutomodPlatformCircumventionConfig | No | |
| automod_semantic_filters_config | AutomodSemanticFiltersConfig | No | |
| automod_toxicity_config | AutomodToxicityConfig | No | |
| block_list_config | BlockListConfig | No | |
| created_at | number | No | |
| google_vision_config | GoogleVisionConfig | No | |
| key | string | No | |
| llm_config | LLMConfig | No | |
| supported_video_call_harm_types | string[] | No | |
| team | string | No | |
| updated_at | number | No | |
| velocity_filter_config | VelocityFilterConfig | No | |
| video_call_rule_config | VideoCallRuleConfig | No |
ModerationDashboardPreferences
// ModerationDashboardPreferences
{
"allowed_moderation_action_reasons": [],
"async_review_queue_upsert": false,
"disable_audit_logs": false,
"disable_flagging_reviewed_entity": false,
"escalation_queue_enabled": false,
"escalation_reasons": [],
"flag_user_on_flagged_content": false,
"keyframe_classifications_map": {},
"media_queue_blur_enabled": false,
"overview_dashboard": OverviewDashboardConfig
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| allowed_moderation_action_reasons | string[] | No | |
| async_review_queue_upsert | boolean | No | |
| disable_audit_logs | boolean | No | |
| disable_flagging_reviewed_entity | boolean | No | |
| escalation_queue_enabled | boolean | No | |
| escalation_reasons | string[] | No | |
| flag_user_on_flagged_content | boolean | No | |
| keyframe_classifications_map | Record<string, any> | No | |
| media_queue_blur_enabled | boolean | No | |
| overview_dashboard | OverviewDashboardConfig | No |
OnlyUserID
// OnlyUserID
{
"id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes |
OverviewDashboardConfig
// OverviewDashboardConfig
{
"default_date_range_days": 0,
"visible_charts": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| default_date_range_days | number | No | |
| visible_charts | string[] | No |
Permission
// Permission
{
"action": "string",
"condition": {},
"custom": false,
"description": "string",
"id": "string",
"level": "string",
"name": "string",
"owner": false,
"same_team": false,
"tags": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| action | string | Yes | Action name this permission is for (e.g. SendMessage) |
| custom | boolean | Yes | Whether this is a custom permission or built-in |
| description | string | Yes | Description of the permission |
| id | string | Yes | Unique permission ID |
| level | string | Yes | Level at which permission could be applied (app or channel). One of: app, cha... |
| name | string | Yes | Name of the permission |
| owner | boolean | Yes | Whether this permission applies to resource owner or not |
| same_team | boolean | Yes | Whether this permission applies to teammates (multi-tenancy mode only) |
| tags | string[] | Yes | List of tags of the permission |
| condition | Record<string, any> | No | MongoDB style condition which decides whether or not the permission is granted |
PollOptionInput
// PollOptionInput
{
"custom": {},
"text": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| custom | Record<string, any> | No | |
| text | string | No |
PollOptionRequest
// PollOptionRequest
{
"custom": {},
"id": "string",
"text": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | |
| custom | Record<string, any> | No | |
| text | string | No |
PollOptionResponse
// PollOptionResponse
{
"duration": "string",
"poll_option": PollOptionResponseData
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| poll_option | PollOptionResponseData | Yes | Poll option |
PollOptionResponseData
// PollOptionResponseData
{
"custom": {},
"id": "string",
"text": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| custom | Record<string, any> | Yes | |
| id | string | Yes | |
| text | string | Yes |
PollResponse
// PollResponse
{
"duration": "string",
"poll": PollResponseData
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| poll | PollResponseData | Yes | Poll |
PollResponseData
// PollResponseData
{
"allow_answers": false,
"allow_user_suggested_options": false,
"answers_count": 0,
"created_at": 0,
"created_by": UserResponse,
"created_by_id": "string",
"custom": {},
"description": "string",
"enforce_unique_vote": false,
"id": "string",
"is_closed": false,
"latest_answers": [],
"latest_votes_by_option": {},
"max_votes_allowed": 0,
"name": "string",
"options": [],
"own_votes": [],
"updated_at": 0,
"vote_count": 0,
"vote_counts_by_option": {},
"voting_visibility": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| allow_answers | boolean | Yes | |
| allow_user_suggested_options | boolean | Yes | |
| answers_count | number | Yes | |
| created_at | number | Yes | |
| created_by_id | string | Yes | |
| custom | Record<string, any> | Yes | |
| description | string | Yes | |
| enforce_unique_vote | boolean | Yes | |
| id | string | Yes | |
| latest_answers | PollVoteResponseData[] | Yes | |
| latest_votes_by_option | Record<string, any> | Yes | |
| name | string | Yes | |
| options | PollOptionResponseData[] | Yes | |
| own_votes | PollVoteResponseData[] | Yes | |
| updated_at | number | Yes | |
| vote_count | number | Yes | |
| vote_counts_by_option | Record<string, any> | Yes | |
| voting_visibility | string | Yes | |
| created_by | UserResponse | No | |
| is_closed | boolean | No | |
| max_votes_allowed | number | No |
PollVoteResponseData
// PollVoteResponseData
{
"answer_text": "string",
"created_at": 0,
"id": "string",
"is_answer": false,
"option_id": "string",
"poll_id": "string",
"updated_at": 0,
"user": UserResponse,
"user_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | |
| id | string | Yes | |
| option_id | string | Yes | |
| poll_id | string | Yes | |
| updated_at | number | Yes | |
| answer_text | string | No | |
| is_answer | boolean | No | |
| user | UserResponse | No | |
| user_id | string | No |
PollVotesResponse
// PollVotesResponse
{
"duration": "string",
"next": "string",
"prev": "string",
"votes": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| votes | PollVoteResponseData[] | Yes | Poll votes |
| next | string | No | |
| prev | string | No |
PrivacySettingsResponse
// PrivacySettingsResponse
{
"delivery_receipts": DeliveryReceiptsResponse,
"read_receipts": ReadReceiptsResponse,
"typing_indicators": TypingIndicatorsResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| delivery_receipts | DeliveryReceiptsResponse | No | |
| read_receipts | ReadReceiptsResponse | No | |
| typing_indicators | TypingIndicatorsResponse | No |
PushConfig
// PushConfig
{
"offline_only": false,
"version": "v1"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| version | 'v1' | 'v2' | 'v3' |
| offline_only | boolean | No |
PushPreferenceInput
// PushPreferenceInput
{
"call_level": "all",
"channel_cid": "string",
"chat_level": "all",
"chat_preferences": ChatPreferencesInput,
"disabled_until": 0,
"feeds_level": "all",
"feeds_preferences": FeedsPreferences,
"remove_disable": false,
"user_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| call_level | 'all' | 'none' | 'default' |
| channel_cid | string | No | Set the push preferences for a specific channel. If empty it sets the default... |
| chat_level | 'all' | 'mentions' | 'direct_mentions' |
| chat_preferences | ChatPreferencesInput | No | |
| disabled_until | number | No | Disable push notifications till a certain time |
| feeds_level | 'all' | 'none' | 'default' |
| feeds_preferences | FeedsPreferences | No | Set granular feeds preferences for reactions, comments, new followers, mentio... |
| remove_disable | boolean | No | Remove the disabled until time. (IE stop snoozing notifications) |
| user_id | string | No | The user id for which to set the push preferences. Required when using server... |
PushProvider
// PushProvider
{
"apn_auth_key": "string",
"apn_auth_type": "string",
"apn_development": false,
"apn_host": "string",
"apn_key_id": "string",
"apn_notification_template": "string",
"apn_p12_cert": "string",
"apn_team_id": "string",
"apn_topic": "string",
"created_at": 0,
"description": "string",
"disabled_at": 0,
"disabled_reason": "string",
"firebase_apn_template": "string",
"firebase_credentials": "string",
"firebase_data_template": "string",
"firebase_host": "string",
"firebase_notification_template": "string",
"firebase_server_key": "string",
"huawei_app_id": "string",
"huawei_app_secret": "string",
"huawei_host": "string",
"name": "string",
"push_templates": [],
"type": "string",
"updated_at": 0,
"xiaomi_app_secret": "string",
"xiaomi_package_name": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | |
| name | string | Yes | |
| type | string | Yes | |
| updated_at | number | Yes | |
| apn_auth_key | string | No | |
| apn_auth_type | string | No | |
| apn_development | boolean | No | |
| apn_host | string | No | |
| apn_key_id | string | No | |
| apn_notification_template | string | No | |
| apn_p12_cert | string | No | |
| apn_team_id | string | No | |
| apn_topic | string | No | |
| description | string | No | |
| disabled_at | number | No | |
| disabled_reason | string | No | |
| firebase_apn_template | string | No | |
| firebase_credentials | string | No | |
| firebase_data_template | string | No | |
| firebase_host | string | No | |
| firebase_notification_template | string | No | |
| firebase_server_key | string | No | |
| huawei_app_id | string | No | |
| huawei_app_secret | string | No | |
| huawei_host | string | No | |
| push_templates | PushTemplate[] | No | |
| xiaomi_app_secret | string | No | |
| xiaomi_package_name | string | No |
PushProviderRequest
// PushProviderRequest
{
"apn_auth_key": "string",
"apn_auth_type": "string",
"apn_development": false,
"apn_host": "string",
"apn_key_id": "string",
"apn_notification_template": "string",
"apn_p12_cert": "string",
"apn_team_id": "string",
"apn_topic": "string",
"description": "string",
"disabled_at": 0,
"disabled_reason": "string",
"firebase_apn_template": "string",
"firebase_credentials": "string",
"firebase_data_template": "string",
"firebase_host": "string",
"firebase_notification_template": "string",
"firebase_server_key": "string",
"huawei_app_id": "string",
"huawei_app_secret": "string",
"name": "string",
"type": "string",
"xiaomi_app_secret": "string",
"xiaomi_package_name": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | |
| apn_auth_key | string | No | |
| apn_auth_type | string | No | |
| apn_development | boolean | No | |
| apn_host | string | No | |
| apn_key_id | string | No | |
| apn_notification_template | string | No | |
| apn_p12_cert | string | No | |
| apn_team_id | string | No | |
| apn_topic | string | No | |
| description | string | No | |
| disabled_at | number | No | |
| disabled_reason | string | No | |
| firebase_apn_template | string | No | |
| firebase_credentials | string | No | |
| firebase_data_template | string | No | |
| firebase_host | string | No | |
| firebase_notification_template | string | No | |
| firebase_server_key | string | No | |
| huawei_app_id | string | No | |
| huawei_app_secret | string | No | |
| type | string | No | |
| xiaomi_app_secret | string | No | |
| xiaomi_package_name | string | No |
PushProviderResponse
// PushProviderResponse
{
"apn_auth_key": "string",
"apn_auth_type": "string",
"apn_development": false,
"apn_host": "string",
"apn_key_id": "string",
"apn_p12_cert": "string",
"apn_sandbox_certificate": false,
"apn_supports_remote_notifications": false,
"apn_supports_voip_notifications": false,
"apn_team_id": "string",
"apn_topic": "string",
"created_at": 0,
"description": "string",
"disabled_at": 0,
"disabled_reason": "string",
"firebase_apn_template": "string",
"firebase_credentials": "string",
"firebase_data_template": "string",
"firebase_host": "string",
"firebase_notification_template": "string",
"firebase_server_key": "string",
"huawei_app_id": "string",
"huawei_app_secret": "string",
"name": "string",
"type": "string",
"updated_at": 0,
"xiaomi_app_secret": "string",
"xiaomi_package_name": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | |
| name | string | Yes | |
| type | string | Yes | |
| updated_at | number | Yes | |
| apn_auth_key | string | No | |
| apn_auth_type | string | No | |
| apn_development | boolean | No | |
| apn_host | string | No | |
| apn_key_id | string | No | |
| apn_p12_cert | string | No | |
| apn_sandbox_certificate | boolean | No | |
| apn_supports_remote_notifications | boolean | No | |
| apn_supports_voip_notifications | boolean | No | |
| apn_team_id | string | No | |
| apn_topic | string | No | |
| description | string | No | |
| disabled_at | number | No | |
| disabled_reason | string | No | |
| firebase_apn_template | string | No | |
| firebase_credentials | string | No | |
| firebase_data_template | string | No | |
| firebase_host | string | No | |
| firebase_notification_template | string | No | |
| firebase_server_key | string | No | |
| huawei_app_id | string | No | |
| huawei_app_secret | string | No | |
| xiaomi_app_secret | string | No | |
| xiaomi_package_name | string | No |
PushTemplate
// PushTemplate
{
"created_at": 0,
"enable_push": false,
"event_type": "message.new",
"template": "string",
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | |
| enable_push | boolean | Yes | |
| event_type | 'message.new' | 'message.updated' | 'reaction.new' |
| updated_at | number | Yes | |
| template | string | No |
PushTemplateResponse
// PushTemplateResponse
{
"created_at": 0,
"enable_push": false,
"event_type": "string",
"push_provider_internal_id": "string",
"template": "string",
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | Time when the template was created |
| enable_push | boolean | Yes | Whether push notification is enabled for this event |
| event_type | string | Yes | Type of event this template applies to |
| push_provider_internal_id | string | Yes | Internal ID of the push provider |
| updated_at | number | Yes | Time when the template was last updated |
| template | string | No | The push notification template |
QueryPollsResponse
// QueryPollsResponse
{
"duration": "string",
"next": "string",
"polls": [],
"prev": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| polls | PollResponseData[] | Yes | Polls data returned by the query |
| next | string | No | |
| prev | string | No |
QueryUsersResponse
// QueryUsersResponse
{
"duration": "string",
"users": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| users | FullUserResponse[] | Yes | Array of users as result of filters applied. |
ReactionResponse
// ReactionResponse
{
"created_at": 0,
"custom": {},
"message_id": "string",
"score": 0,
"type": "string",
"updated_at": 0,
"user": UserResponse,
"user_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | Date/time of creation |
| custom | Record<string, any> | Yes | Custom data for this object |
| message_id | string | Yes | Message ID |
| score | number | Yes | Score of the reaction |
| type | string | Yes | Type of reaction |
| updated_at | number | Yes | Date/time of the last update |
| user | UserResponse | Yes | User |
| user_id | string | Yes | User ID |
ReactivateUserResponse
// ReactivateUserResponse
{
"duration": "string",
"user": UserResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| user | UserResponse | No | Deactivated user object |
ReactivateUsersResponse
Basic response information
// ReactivateUsersResponse
{
"duration": "string",
"task_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| task_id | string | Yes |
RemoveUserGroupMembersResponse
Response for removing members from a user group
// RemoveUserGroupMembersResponse
{
"duration": "string",
"user_group": UserGroupResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| user_group | UserGroupResponse | No | The updated user group |
Response
Basic response information
// Response
{
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
Role
// Role
{
"created_at": 0,
"custom": false,
"name": "string",
"scopes": [],
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | Date/time of creation |
| custom | boolean | Yes | Whether this is a custom role or built-in |
| name | string | Yes | Unique role name |
| scopes | string[] | Yes | List of scopes where this role is currently present. .app means that role i... |
| updated_at | number | Yes | Date/time of the last update |
S3Request
Config for creating Amazon S3 storage.
// S3Request
{
"s3_api_key": "string",
"s3_custom_endpoint_url": "string",
"s3_region": "string",
"s3_secret": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| s3_region | string | Yes | The AWS region where the bucket is hosted |
| s3_api_key | string | No | The AWS API key. To use Amazon S3 as your storage provider, you have two auth... |
| s3_custom_endpoint_url | string | No | The custom endpoint for S3. If you want to use a custom endpoint, you must al... |
| s3_secret | string | No | The AWS API Secret |
SearchUserGroupsResponse
Response for searching user groups
// SearchUserGroupsResponse
{
"duration": "string",
"user_groups": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| user_groups | UserGroupResponse[] | Yes | List of matching user groups |
SharedLocationResponse
// SharedLocationResponse
{
"channel": ChannelResponse,
"channel_cid": "string",
"created_at": 0,
"created_by_device_id": "string",
"duration": "string",
"end_at": 0,
"latitude": 0,
"longitude": 0,
"message": MessageResponse,
"message_id": "string",
"updated_at": 0,
"user_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| channel_cid | string | Yes | Channel CID |
| created_at | number | Yes | Date/time of creation |
| created_by_device_id | string | Yes | Device ID that created the live location |
| duration | string | Yes | |
| latitude | number | Yes | Latitude coordinate |
| longitude | number | Yes | Longitude coordinate |
| message_id | string | Yes | Message ID |
| updated_at | number | Yes | Date/time of the last update |
| user_id | string | Yes | User ID |
| channel | ChannelResponse | No | |
| end_at | number | No | Time when the live location expires |
| message | MessageResponse | No |
SharedLocationResponseData
// SharedLocationResponseData
{
"channel": ChannelResponse,
"channel_cid": "string",
"created_at": 0,
"created_by_device_id": "string",
"end_at": 0,
"latitude": 0,
"longitude": 0,
"message": MessageResponse,
"message_id": "string",
"updated_at": 0,
"user_id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| channel_cid | string | Yes | |
| created_at | number | Yes | |
| created_by_device_id | string | Yes | |
| latitude | number | Yes | |
| longitude | number | Yes | |
| message_id | string | Yes | |
| updated_at | number | Yes | |
| user_id | string | Yes | |
| channel | ChannelResponse | No | |
| end_at | number | No | |
| message | MessageResponse | No |
SharedLocationsResponse
// SharedLocationsResponse
{
"active_live_locations": [],
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| active_live_locations | SharedLocationResponseData[] | Yes | |
| duration | string | Yes |
SortParamRequest
// SortParamRequest
{
"direction": 0,
"field": "string",
"type": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| direction | number | No | Direction of sorting, 1 for Ascending, -1 for Descending, default is 1. One o... |
| field | string | No | Name of field to sort by |
| type | string | No | Type of field to sort by. Empty string or omitted means string type (default)... |
Time
// Time
{
}UnblockUsersResponse
// UnblockUsersResponse
{
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
UpdateBlockListResponse
Basic response information
// UpdateBlockListResponse
{
"blocklist": BlockListResponse,
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| blocklist | BlockListResponse | No |
UpdateExternalStorageResponse
Basic response information
// UpdateExternalStorageResponse
{
"bucket": "string",
"duration": "string",
"name": "string",
"path": "string",
"type": "s3"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| bucket | string | Yes | |
| duration | string | Yes | Duration of the request in milliseconds |
| name | string | Yes | |
| path | string | Yes | |
| type | 's3' | 'gcs' | 'abs' |
UpdateUserGroupResponse
Response for updating a user group
// UpdateUserGroupResponse
{
"duration": "string",
"user_group": UserGroupResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | |
| user_group | UserGroupResponse | No | The updated user group |
UpdateUserPartialRequest
// UpdateUserPartialRequest
{
"id": "string",
"set": {},
"unset": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | User ID to update |
| set | Record<string, any> | No | |
| unset | string[] | No |
UpdateUsersResponse
// UpdateUsersResponse
{
"duration": "string",
"membership_deletion_task_id": "string",
"users": {}
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| membership_deletion_task_id | string | Yes | |
| users | Record<string, any> | Yes | Object containing users |
UpsertExternalStorageAWSS3Request
// UpsertExternalStorageAWSS3Request
{
"bucket": "string",
"path_prefix": "string",
"region": "string",
"role_arn": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| bucket | string | Yes | |
| region | string | Yes | |
| role_arn | string | Yes | |
| path_prefix | string | No |
UpsertExternalStorageResponse
Basic response information
// UpsertExternalStorageResponse
{
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
UpsertPushPreferencesResponse
// UpsertPushPreferencesResponse
{
"duration": "string",
"user_channel_preferences": {},
"user_preferences": {}
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| user_channel_preferences | Record<string, any> | Yes | The channel specific push notification preferences, only returned for channel... |
| user_preferences | Record<string, any> | Yes | The user preferences, always returned regardless if you edited it |
UpsertPushProviderResponse
Basic response information
// UpsertPushProviderResponse
{
"duration": "string",
"push_provider": PushProviderResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| push_provider | PushProviderResponse | Yes |
UpsertPushTemplateResponse
Basic response information
// UpsertPushTemplateResponse
{
"duration": "string",
"template": PushTemplateResponse
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
| template | PushTemplateResponse | No |
User
// User
{
"data": {},
"id": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | |
| data | Record<string, any> | No |
UserGroupResponse
// UserGroupResponse
{
"created_at": 0,
"created_by": "string",
"description": "string",
"id": "string",
"members": [],
"name": "string",
"team_id": "string",
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| created_at | number | Yes | |
| id | string | Yes | |
| name | string | Yes | |
| updated_at | number | Yes | |
| created_by | string | No | |
| description | string | No | |
| members | UserGroupMember[] | No | |
| team_id | string | No |
UserRequest
User request object
// UserRequest
{
"custom": {},
"id": "string",
"image": "string",
"invisible": false,
"language": "string",
"name": "string",
"privacy_settings": PrivacySettingsResponse,
"role": "string",
"teams": [],
"teams_role": {}
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | User ID |
| custom | Record<string, any> | No | Custom user data |
| image | string | No | User's profile image URL |
| invisible | boolean | No | |
| language | string | No | |
| name | string | No | Optional name of user |
| privacy_settings | PrivacySettingsResponse | No | |
| role | string | No | User's global role |
| teams | string[] | No | List of teams the user belongs to |
| teams_role | Record<string, any> | No | Map of team-specific roles for the user |
UserResponse
User response object
// UserResponse
{
"avg_response_time": 0,
"ban_expires": 0,
"banned": false,
"blocked_user_ids": [],
"bypass_moderation": false,
"created_at": 0,
"custom": {},
"deactivated_at": 0,
"deleted_at": 0,
"devices": [],
"id": "string",
"image": "string",
"invisible": false,
"language": "string",
"last_active": 0,
"name": "string",
"online": false,
"privacy_settings": PrivacySettingsResponse,
"push_notifications": PushNotificationSettingsResponse,
"revoke_tokens_issued_before": 0,
"role": "string",
"shadow_banned": false,
"teams": [],
"teams_role": {},
"updated_at": 0
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| banned | boolean | Yes | Whether a user is banned or not |
| blocked_user_ids | string[] | Yes | |
| created_at | number | Yes | Date/time of creation |
| custom | Record<string, any> | Yes | Custom data for this object |
| id | string | Yes | Unique user identifier |
| invisible | boolean | Yes | |
| language | string | Yes | Preferred language of a user |
| online | boolean | Yes | Whether a user online or not |
| role | string | Yes | Determines the set of user permissions |
| shadow_banned | boolean | Yes | Whether a user is shadow banned |
| teams | string[] | Yes | List of teams user is a part of |
| updated_at | number | Yes | Date/time of the last update |
| avg_response_time | number | No | |
| ban_expires | number | No | Date when ban expires |
| bypass_moderation | boolean | No | |
| deactivated_at | number | No | Date of deactivation |
| deleted_at | number | No | Date/time of deletion |
| devices | DeviceResponse[] | No | List of devices user is using |
| image | string | No | |
| last_active | number | No | Date of last activity |
| name | string | No | Optional name of user |
| privacy_settings | PrivacySettingsResponse | No | User privacy settings |
| push_notifications | PushNotificationSettingsResponse | No | User push notification settings |
| revoke_tokens_issued_before | number | No | Revocation date for tokens |
| teams_role | Record<string, any> | No |
ValidateExternalStorageResponse
Basic response information
// ValidateExternalStorageResponse
{
"duration": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| duration | string | Yes | Duration of the request in milliseconds |
VelocityFilterConfig
// VelocityFilterConfig
{
"advanced_filters": false,
"async": false,
"cascading_actions": false,
"cids_per_user": 0,
"enabled": false,
"first_message_only": false,
"rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| advanced_filters | boolean | No | |
| async | boolean | No | |
| cascading_actions | boolean | No | |
| cids_per_user | number | No | |
| enabled | boolean | No | |
| first_message_only | boolean | No | |
| rules | VelocityFilterConfigRule[] | No |
VideoCallRuleConfig
// VideoCallRuleConfig
{
"flag_all_labels": false,
"flagged_labels": [],
"rules": []
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| flag_all_labels | boolean | No | |
| flagged_labels | string[] | No | |
| rules | HarmConfig[] | No |
XiaomiConfig
// XiaomiConfig
{
"Disabled": false,
"package_name": "string",
"secret": "string"
}Properties:
| Property | Type | Required | Description |
|---|---|---|---|
| Disabled | boolean | No | |
| package_name | string | No | |
| secret | string | No |