Managing your group chats using RumbleTalk RESTful API


Creating a group chat

POST
https://api.rumbletalk.com/chats

Request format

  • Parameter
  • Type
  • Description
  • *name
  • string
  • The name of the chat
  • langId
  • string | integer
  • The language ID or code of the chat
    Default: en (English)
    For language options,
  • facebookLogin
  • boolean
  • If set to true, allows Facebook login
    Default: true
  • twitterLogin
  • boolean
  • If set to true, allows Twitter login
    Default: true
  • rumbleTalkLogin
  • boolean
  • If set to true, allows password protected users login
    Default: true
  • anonymous
  • boolean
  • If set to true, allows guest login
    Default: true
  • register
  • boolean
  • If set to true, allows users to register into the chat - creating a password protected user
    Default: false
  • registerTermsTitle
  • string
  • The title of the terms and conditions link the user must accept before registering
    Default: language's default "register_default_title"
  • allowListeners
  • boolean
  • If set to true, allows viewing the chat without logging in
    Default: true
  • forceSDKLogin
  • boolean
  • If set to true, makes the chat private; disabling the login dialog
    Default: false
  • allowLinks
  • boolean
  • If set to true, URLs will be parsed and turned into <a> tag
    Default: true
  • allowImages
  • boolean
  • If set to true, image URLs will be parsed and turned into <img> tags
    Default: true
  • allowAudio
  • boolean
  • If set to true, audio URLs will be parsed and turned into <audio> tags
    Default: true
  • allowVideo
  • boolean
  • If set to true, video URLs will be parsed and turned into <video> tags
    Default: true
  • allowSmiles
  • boolean
  • If set to true, emojis shortcuts, like :) or ;), will be turned into emojis;
    a button for adding emojis will also be displayed
    Default: true
  • upload
  • boolean
  • If set to true, users are able to upload files to the group chat
    Default: true
  • uploadAdmin
  • boolean
  • If set to true, only admins are able to upload files
    Default: false
  • p2pAudio
  • boolean
  • If set to true, users will be able to make audio calls between one another
    Default: true
  • p2pAudioAdmin
  • boolean
  • If set to true, only admins will be able to make audio calls
    *users will still be able to receive calls
    Default: false
  • p2pVideo
  • boolean
  • If set to true, users will be able to make video calls between one another
    Default: true
  • p2pVideoAdmin
  • boolean
  • If set to true, only admins will be able to make video calls
    *users will still be able to receive calls
    Default: false
  • filterWords
  • string
  • A comma-separated list of words to be banned from use in the chat;
    use space before a word to indicate it should be searched inside other words
  • archive
  • boolean
  • If set to true, chat messages will be saved in RumbleTalk's database
    Default: true
  • sendArchive
  • boolean
  • If set to true, new users will be able to see archived messages
    Default: true
  • allowPrivateChat
  • boolean
  • If set to true, users will be able to exchange private messages
    Default: true
  • privateChatAdmin
  • boolean
  • If set to true, only chat administrators will be able to start a private chat conversation.
    Other chatters will still be able to reply after a conversation has been started.
    Default: false
  • floatingImage
  • string
  • The URL of an image for the floating toolbar
    Default: image
  • floatingWidth
  • integer
  • The width [in pixels] of the floating toolbar
    Default: 750
  • floatingHeight
  • integer
  • The height [in pixels] of the floating toolbar
    Default: 500
  • floatingBounce
  • integer
  • The maximum number the floating toolbar can bounce after the page has loaded
    Default: 4
  • floatingSide
  • string
  • The side of the screen in which the floating toolbar will be placed;
    options are: 'left' and 'right'
    Default: right
  • autoInvite
  • boolean
  • If set to true, users will be prompted with Facebook and Twitter invite buttons after login
    Default: true
  • inviteFriends
  • boolean
  • If set to true, the invite button will be displayed
    Default: true
  • offline
  • boolean
  • If set to true, the chat will be taken offline
    Default: false
  • offlineMessage
  • string
  • If 'offline' is set to true, this message will be displayed to users when they open the chat
  • offlineShowForm
  • boolean
  • If set to true, and 'offline' is also set to true, displays a form that users can contact you with
    Default: false
  • offlineMessageEmail
  • string
  • If set to a valid email address, the form will be sent to this email address instead of the account's email address
  • sound_userJoined
  • string
  • The sound to play when a user joins the chat
    Default: 'pop'
    For more sound options, ; use the urlComponent
  • sound_userLeft
  • string
  • The sound to play when a user leaves the chat
    Default: 'pop'
    For more sound options, ; use the urlComponent
  • sound_message
  • string
  • The sound to play when a messages is sent
    Default: 'pop'
    For more sound options, ; use the urlComponent
  • sound_privateMessage
  • string
  • The sound to play when a private messages is sent
    Default: 'pop'
    For more sound options, ; use the urlComponent
  • sound_notice
  • string
  • The sound to play when a notice is sent
    Default: 'pop'
    For more sound options, ; use the urlComponent
  • sound_ring
  • string
  • The sound to play when a user is calling.
    Default: 'pop'
    For more sound options, ; use the urlComponent

Response format

  • Parameter
  • Type
  • Description
  • status
  • boolean
  • true on success, false otherwise
  • chatId
  • integer
  • The ID of the created chat
  • hash
  • string
  • The hash [public ID] of the chat

cURL example

curl \ -X POST \ "https://api.rumbletalk.com/chats" \ -H "Authorization: Bearer <token>" \ -d "{\"name\":\"My Chat\", \"langId\": \"en\"}"

Response example

{ "status": true, "chatId": 123, "hash": "a7-b@93c" }

Looking up your group chats

GET
https://api.rumbletalk.com/chats

Response format

  • Parameter
  • Type
  • Description
  • status
  • boolean
  • true on success, false otherwise
  • count
  • integer
  • Total number of chats in the query
  • data
  • array
  • An array of objects, each representing a chat

Format of the data parameter

  • Parameter
  • Type
  • Description
  • id
  • integer
  • The ID number of the chat
  • createDate
  • timestamp
  • The date in which the chat was created
  • lastUsed
  • string
  • The date in which the chat was last used
  • name
  • string
  • The name of the chat
  • langId
  • string
  • The language code of the chat
  • facebookLogin
  • boolean
  • true means that Facebook login are allowed
  • twitterLogin
  • boolean
  • true means that Twitter login are allowed
  • rumbleTalkLogin
  • boolean
  • true means that RumbleTalk login are allowed
  • anonymous
  • boolean
  • true means that guest login are allowed
  • register
  • boolean
  • true means users can register into the chat - creating a password protected user
  • registerTermsLink
  • string
  • The link of the terms and conditions' the user must accept before registering
  • registerTermsTitle
  • string
  • The title of the terms and conditions' link the user must accept before registering
  • allowListeners
  • boolean
  • true means that users can see the chat conversation without logging in
  • forceSDKLogin
  • boolean
  • true means that the chat is private; disabling the login dialog
  • allowLinks
  • boolean
  • true means that URLs will be parsed and turned into <a> tag
  • allowImages
  • boolean
  • true means that image URLs will be parsed and turned into <img> tags
  • allowAudio
  • boolean
  • true means that audio URLs will be parsed and turned into <audio> tags
  • allowVideo
  • boolean
  • true means that video URLs will be parsed and turned into <video> tags
  • allowSmiles
  • boolean
  • true means that emojis shortcuts, like :) or ;), will change into emojis;
    a button for adding emojis will also be displayed
  • upload
  • boolean
  • true means that users will be able to upload files to the chat
  • uploadAdmin
  • boolean
  • true means that only admins will be able to upload files
  • p2pAudio
  • boolean
  • true means that users will be able to make audio calls between one another
  • p2pAudioAdmin
  • boolean
  • true means that only admins will be able to make audio calls;
    *users will still be able to receive calls
  • p2pVideo
  • boolean
  • true means that users will be able to make video calls between one another
  • p2pVideoAdmin
  • boolean
  • true means that only admins will be able to make video calls;
    *users will still be able to receive calls
  • filterWords
  • string
  • A comma-separated list of words to be banned from use in the chat;
    space before words indicates the word will be searched inside other words as well
  • archive
  • boolean
  • true means that chat messages will be saved in RumbleTalk's database
  • sendArchive
  • boolean
  • true means that new users will be able to see archived messages
  • allowPrivateChat
  • boolean
  • true means that users will be able to exchange private messages
  • privateChatAdmin
  • boolean
  • true means that only chat administrators will be able to start a private chat conversation.
    Other chatters will still be able to reply after a conversation has been started.
  • floatingImage
  • string
  • The URL of the floating toolbar image
  • floatingWidth
  • integer
  • The width [in pixels] of the floating toolbar
  • floatingHeight
  • integer
  • The height [in pixels] of the floating toolbar
  • floatingBounce
  • integer
  • The maximum number the floating toolbar bounces after the page has loaded
  • floatingSide
  • string
  • The side of the screen in which the floating toolbar is placed
  • autoInvite
  • boolean
  • true means that users will be prompted with Facebook and Twitter invite buttons after login
  • inviteFriends
  • boolean
  • true means that the invite button will be displayed
  • offline
  • boolean
  • true means that the chat is offline
  • offlineMessage
  • string
  • The message that is displayed to the users when the chat is offline
  • offlineShowForm
  • boolean
  • true means that, if 'offline' is also set to true, a form that users can contact you with is displayed in the chat
  • offlineMessageEmail
  • string
  • The email address the contact form information is sent to
  • sound_userJoined
  • integer
  • The sound id that plays when a user joins the group chat
  • sound_userLeft
  • integer
  • The sound id that plays when a user leaves the group chat
  • sound_message
  • integer
  • The sound id that plays when a user sends a message
  • sound_privateMessage
  • integer
  • The sound id that plays when a user sends a private message
  • sound_notice
  • integer
  • The sound id that plays when a system notice is sent
  • sound_ring
  • integer
  • The sound id that plays when a user makes a call

cURL example

curl \ -X GET \ "https://api.rumbletalk.com/chats" \ -H "Authorization: Bearer <token>"

Response example

{ "status": true, "count": 2, "data": [ { "id": 424120, "langId": 1, "name": "Staging", "hash": "3Ao-i9Eb", "anonymous": 1, "register": 1, "registerTermsLink": "", "registerTermsTitle": "By clicking here you accept our terms and conditions", "allowListeners": 1, "forceSDKLogin": null, "allowLinks": 1, "allowImages": 1, "allowAudio": 1, "allowVideo": 1, "allowSmiles": 1, "upload": 1, "uploadAdmin": null, "p2pAudio": 1, "p2pAudioAdmin": null, "p2pVideo": 1, "p2pVideoAdmin": null, "filterWords": null, "archive": 1, "sendArchive": 1, "allowPrivateChat": 1, "privateChatAdmin": 0, "floatingImage": null, "floatingWidth": 0, "floatingHeight": 0, "floatingBounce": 4, "floatingSide": 0, "autoInvite": null, "inviteFriends": 1, "offline": null, "offlineMessage": null, "offlineShowForm": null, "offlineMessageEmail": null, "sound_userJoined": 1, "sound_userLeft": 1, "sound_message": 1, "sound_privateMessage": 1, "sound_notice": 1, "sound_ring": 4, "createDate": 1457818322, "lastUsed": null }, ... ] }

Updating a group chat

PUT
https://api.rumbletalk.com/chats/{chatId}

Request format

See creating a chat request format

cURL example

curl \ -X PUT \ "https://api.rumbletalk.com/chats/123456" \ -H "Authorization: Bearer <token>" \ -d "{\"name\":\"My New Chat Name\", \"langId\": \"de\"}"

Response example

{ "status": true }

Deleting a group chat

DELETE
https://api.rumbletalk.com/chats/{chatId}

Response format

  • Parameter
  • Type
  • Description
  • status
  • boolean
  • true on success, false otherwise

cURL example

curl \ -X DELETE \ "https://api.rumbletalk.com/chats/123456" \ -H "Authorization: Bearer <token>"

Response example

{ "status": true }