Rocket.Chat REST API - JamesHGreen/Rocket.Chat GitHub Wiki

Rest API

API commands

to view a readable print out of a json list use:

A='var'.json()  **example A=list_public.json()
print json.dumps(a, indent=4)

API calls

restapi.coffee

these request are api/Route

these request are api/v1/Route

example API calls

Example api call fill with example "data"

log in:

    request_login = requests.post('http://devbox:3000/api/login',{'password':'myPassword','user':'james'})

Aquire header information with:

request_login.json()

this return a dict:

    {u'status': u'success', u'data': {u'authToken': u'zj9UJ2sJ8dk8j264e9NKtSZ86xI5F36Ufe6TF1hRL2o', u'userId': u'5CudAzNnNYbwAQ99z'}}

log out:

to log out you need the user name and password returned from the log in call. see above for example.

    logOut = request.post('http://devbox:3000/api/logout', 
        headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'zj9UJ2sJ8dk8j264e9NKtSZ86xI5F36Ufe6TF1hRL2o'})
logOut.json() will return 
    {u'status': u'success', u'data': {u'message': u"You've been logged out!"}}

###version

v= requests.get('http://devbox:3000/api/version')

returns json: {u'status': u'success', u'versions': {u'rocketchat': u'0.5', u'api': u'0.1'}}

list public rooms:

   list_public = requests.get('http://devbox:3000/api/publicRooms', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'})

returns a dict structure. (2 rooms returned):

{
    "status": "success", 
    "rooms": [
        {
            "usernames": [
                "james", 
                "no", 
                "ST", 
                "jeff", 
                "jeffers", 
                "Joe", 
                "fred"
            ], 
            "name": "general", 
            "msgs": 4, 
            "default": true, 
            "lm": "2016-06-20T17:36:48.729Z", 
            "ts": "2016-05-17T18:31:04.982Z", 
            "t": "c", 
            "_id": "GENERAL", 
            "_updatedAt": "2016-07-27T23:32:18.863Z"
        }, 
        
    ]
}

joined rooms

returns json dict:

joinedRooms=requests.get('http://devbox:3000/api/joinedRooms.list', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'})

returns json:{u'status': u'success', u'rooms': [{u'usernames': [u'james', u'fred'], u'msgs': 0, u'ts': u'2016-08-11T23:38:19.108Z', u'_updatedAt': u'2016-08-11T23:38:19.108Z', u'_id': u'5CudAzNnNYbwAQ99zSw2BTuQ884JeQA62Z1470958699108', u't': u'd'}, {u'usernames': [u'ST', u'no', u'james'], u'name': u'roomp11', u'msgs': 0, u'ts': u'2016-08-11T22:33:15.853Z', u'u': {u'username': u'james', u'_id': u'5CudAzNnNYbwAQ99z'}

join room

to join a room you will need data returned from list public/private room to aquire room _id.

join = request.post(‘http://devbox/api/rooms/6RzYpEMeirdu8jB6x(**room _id)/join’, headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}

returns: {u'status': u'success'}

leave room

to leave a room you will need data returned from list public/private room to acquire room _id.

leave = requests.delete ('http://devbox:3000/api/rooms/fqyYezrWNsMjSY3Gq(**room -_id**)/leave', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'})

returns: {u'status': u'success'}

retrieve messages

to retrieve messages from a room you will need data returned from list public/private room to aquire room _id.

msg = requests.get('http://devbox:3000/api/rooms/6RzYpEMeirdu8jB6x(**room-id)/messages', headers={'X-User-Id':'nM7Gp8S6x7pFZvStJ','X-Auth-Token':'zLAh3sBW721D0XSGeafsRDFLRwwkqKqBgH-0G-xDAv5'})

returns:

{
   "status": "success", 
   "messages": [
      {
         "ts": "2016-07-29T15:41:56.696Z", 
         "u": {
            "username": "james", 
            "_id": "5CudAzNnNYbwAQ99z"
         }, 
         "_updatedAt": "2016-07-29T15:41:56.697Z", 
         "msg": "welcome to this place.", 
         "rid": "GENERAL", 
         "_id": "bMGmTkKi4Fa8dB3NX"
      }, 
      {
         "ts": "2016-07-29T15:41:21.334Z", 
         "u": {
            "username": "fred", 
            "_id": "Sw2BTuQ884JeQA62Z"
         }, 
         "_updatedAt": "2016-07-29T15:41:21.339Z", 
         "msg": "hello all ", 
         "rid": "GENERAL", 
         "_id": "wYvJcgYatie85Emh5"
      } 
      
   ]
}

send message

to send messages to a room you will need data returned from list public/private room to aquire room _id.

    send = requests.post('http://devbox:3000/api/rooms/NGhzmWK6sk5CDPpDb(**room _id**)/send', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'}, data='{"msg": "WOW DUDE"}')

return: {u'status': u'success'}

online room users

list all online room users.

oru=requests.get('http://devbox:3000/api/rooms/GENERAL/online',headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'})

returns json: {u'status': u'success', u'online': [u'fred', u'james', u'jeff', u'ST']}

bulk register

 br=requests.post('http://devbox:3000/api/bulk/register',headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'}, data='{"users":[{"email":"[email protected]","name":"user1","pass":"password1"},{"email":"[email protected]","name":"user2","pass":"password2"}]}')

create public room

this is a bulk create room method, you can create one or many.

createPublicRoom = requests.post('http://devbox:3000/api/bulk/createRoom', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'}, data='{"rooms": [{"name": "roomp1", "members": ["ST", "no"]}, {"name": "roomp2", "members": ["ST", "jeff"]}, {"name": "roomp3", "members": ["ST", "jeff"]}]}')

returns: {u'status': u'success', u'ids': [{u'rid': u'S5MXEkemKuhj4s9n5'}, {u'rid': u'hKDtoQNDPQ6sxanH7'}, {u'rid': u'gwBuhfvz66fbagRC5'}]}

Rocketchat-api

info-v1

info=requests.get('http://devbox:3000/api/v1/info') 

returns Rocketchat version info in json.

me

displays information about self:

me = request.get('http://devbox:3000/api/v1/me',headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'})

returns json structure: {u'status': u'away', u'username': u'james', u'name': u'james', u'utcOffset': -6, u'statusConnection': u'away', u'active': True, u'_id': u'5CudAzNnNYbwAQ99z', u'emails': [{u'verified': True, u'address': u'jgreen@XXXXXXXXX'}]}

chat message examples

example=requests.get('http://devbox:3000/api/v1/chat.messageExamples',headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'})

returns json:

   "body": [
      {
         "user_id": "peowQhLWyqKku9n2v", 
         "channel_name": "general", 
         "timestamp": "2016-08-12T20:18:11.932Z", 
         "trigger_word": "Sample", 
         "channel_id": "Pcjsqqsr755WP5Jwv", 
         "token": "gizt4sopv59cLxQWFX5AEiYW", 
         "text": "Sample text 1", 
         "user_name": "rocket.cat"
      }, 
      {
         "user_id": "kzzdvhFsn2ceisDug", 
         "channel_name": "general", 
         "timestamp": "2016-08-12T20:18:11.934Z", 
         "trigger_word": "Sample", 
         "channel_id": "C2E39BGYNdHKvNvZv", 
         "token": "5qZ7hX9ARKbueYXaphviDenz", 
         "text": "Sample text 2", 
         "user_name": "rocket.cat"
      }, 
      {
         "user_id": "TZXudFJL4rJhN79wd", 
         "channel_name": "general", 
         "timestamp": "2016-08-12T20:18:11.935Z", 
         "trigger_word": "Sample", 
         "channel_id": "dqdARuijtF6R3eR6K", 
         "token": "BgqEb9qRN78dJCrcqScGvAau", 
         "text": "Sample text 3", 
         "user_name": "rocket.cat"
      }
   ], 
   "success": true
}

channel post message

 messageSend = requests.post('http://devbox:3000/api/v1/chat.postMessage', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}, data='{"username":"fred", "msg": "WOW DUDE","channel":"@fred"}')

returns json: {u'ts': 1471037222903, u'success': True}

channels topic set

TODO:

channels create

creates one room only:

createPublicRoom=requests.post('http://devbox:3000/api/v1/channels.create', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}, data='{"name": "roomp1", "members": ["ST", "no"]}')

returns json: {u'success': True, u'channel': {u'usernames': [u'james'], u'name': u'roomp1', u'msgs': 0, u'ts': u'2016-08-12T21:41:36.501Z', u'u': {u'username': u'james', u'_id': u'5CudAzNnNYbwAQ99z'}, u't': u'c', u'_id': u'DNQMpBwBDqtH3r4MG', u'_updatedAt': u'2016-08-12T21:41:36.505Z'}}

group list

grouplist=requests.get('http://devbox:3000/api/v1/groups.list', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'})

returns json: {u'groups': [{u'usernames': [u'ST', u'jeff', u'james', u'james'], u'name': u'room5', u'msgs': 12, u'lm': u'2016-08-11T23:18:27.740Z', u'ts': u'2016-08-08T21:08:10.610Z', u'u': {u'username': u'james', u'_id': u'5CudAzNnNYbwAQ99z'}, u't': u'p', u'_id': u'9TQ7ZAA8t4Dj54gNE', u'_updatedAt': u'2016-08-11T23:18:27.762Z'}]}

channel add all

requests.post('http://devbox:3000/api/v1/channel.addall', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}, data ='{"roomId":"DNQMpBwBDqtH3r4MG"}')

returns json: {u'success': True, u'channel': {u'usernames': [u'james', u'no', u'jeffers', u'rocket.cat', u'jeff', u'fred', u'Dicky', u'booobb', u'ST', u'Joe', u'Dicky1', u'booobb1'], u'name': u'roomp1', u'msgs': 0, u'ts': u'2016-08-12T21:41:36.501Z', u'u': {u'username': u'james', u'_id': u'5CudAzNnNYbwAQ99z'}, u't': u'c', u'_id': u'DNQMpBwBDqtH3r4MG', u'_updatedAt': u'2016-08-12T22:10:03.087Z'}}

user create

Create new users

create = request.post('http://devbox:3000/api/v1/users.create', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}, data='{TODO:}')

returns json:

TODO

user update

userUpdate=request.post('http://devbox:3000/api/v1/users.update', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}, data='{TODO:}')

returns json:

TODO:

user list

list=requests.get('http://devbox:3000/api/v1/users.list', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'})

returns json: { "users": [ { "username": "no", "status": "offline", "name": "Nobody", "roles": [ "user" ], "settings": { "preferences": { "viewMode": 0 } }, "utcOffset": -6, "active": true, "statusConnection": "offline", "lastLogin": "2016-05-18T22:48:07.656Z", "services": { "password": { "bcrypt": "$2a$10$6AmEJcf4MScdeegTTBb.RITddNrXND5qJb/rD6KXpUIXFtXgOJC" }, "resume": { "loginTokens": [ { "hashedToken": "kZuBWnkSefundsfwfb2EBrxjpUCZNyoG67MADT2wk=", "when": "2016-05-18T21:13:02.420Z" } ] } }, "_id": "txS97Kre5fx48isP3", "type": "user", "emails": [ { "verified": false, "address": "nobody@XXX" } ], "createdAt": "2016-05-18T21:10:47.607Z" }, ....

user info

list=requests.post('http://devbox:3000/api/v1/user.info',headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}, data='{"name":"james"}')

returns json:

###user get presence

presence=requests.post('http://devbox:3000/api/v1/user.getpresence', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}, data='{"name":"james"}')

returns json: {u'user': {u'status': u'away', u'_id': u'5CudAzNnNYbwAQ99z'}}

users delete

list=requests.post('http://devbox:3000/api/v1/users.delete', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}, data='{"userId":"f4XJwqDvLjyWKFHua"}')

returns error on server TODO fix**

groups create

this is a bulk create room method, you can create one or many.

createPrivateRoom = requests.post('http://devbox:3000/api/v1/groups.create', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'}, data='{"name": "room4", "members": ["ST", "jeff"]}')

returns: {u'group': {u'usernames': [u'ST', u'jeff', u'james'], u'name': u'room4', u'msgs': 0, u'ts': u'2016-08-12T23:04:09.986Z', u'u': {u'username': u'james', u'_id': u'5CudAzNnNYbwAQ99z'}, u't': u'p', u'_id': u'FStTijSRDNFXP42jz', u'_updatedAt': u'2016-08-12T23:04:09.991Z'}, u'success': True}

list all groups

prlist = requests.get('http://devbox:3000/api/v1/privateRooms.list', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'0-AYN8lHncQfRIhArEX5deAakD4p_jMf--6QFwLISkr'})

returns json:

{
   "list": [
      {
         "usernames": [
            "ST", 
            "jeff", 
            "james", 
            "james"
         ], 
         "name": "room5", 
         "msgs": 12, 
         "lm": "2016-08-11T23:18:27.740Z", 
         "ts": "2016-08-08T21:08:10.610Z", 
         "u": {
            "username": "james", 
            "_id": "5CudAzNnNYbwAQ99z"
         }, 
         "t": "p", 
         "_id": "9TQ7ZAA8t4Dj54gNE", 
         "_updatedAt": "2016-08-12T22:52:23.068Z"
      }, 
      {
         "usernames": [
            "ST", 
            "jeff", 
            "james"
         ], 
         "name": "room4", 
         "msgs": 0, 
         "ts": "2016-08-12T23:04:09.986Z", 
         "u": {
            "username": "james", 
            "_id": "5CudAzNnNYbwAQ99z"
         }, 
         "t": "p", 
         "_id": "FStTijSRDNFXP42jz", 
         "_updatedAt": "2016-08-12T23:04:09.991Z"
      }
   ], 
   "success": true
}

add user to room

use list private/public rooms to acquire room id, list users to acquire user name

adduser1 = requests.post('http://devbox:3000/api/v1/addUser', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'},data='{"room":"QJXqxrqazNGYNNwPt","username":"jeff"}')

returns json: {u'status': u'success', u'username': u'james', u'rid': u'8tyamtuaEtDLBeAGj'}

remove room

remove room takes data name and room _id (data='{"name":"room _id"}')

remove=requests.delete('http://devbox:3000/api/v1/bulk/removeGroup',headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'},data='{"name":["NGhzmWK6sk5CDPpDb"]}')

returns json: {u'status': u'success', u'ids': [1, 1, 1]}

list integrations for specific room

room name must be uri encoded before being sent in API call.

    id = requests.get('http://devbox:3000/api/v1/roomIntgrations.id/%23bob(**%23bob=uri encoded room name=#bob**)/list', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'})

returns all integration for room id:

{
   "status": "success", 
   "Integrations": [
      {
         "username": "james", 
         "_createdBy": {
            "username": "james", 
            "_id": "5CudAzNnNYbwAQ99z"
         }, 
         "triggerWords": null, 
         "name": "test", 
         "script": null, 
         "_createdAt": "2016-07-28T23:27:20.623Z", 
         "userid": "5CudAzNnNYbwAQ99z", 
         "enabled": "True", 
         "userId": "5CudAzNnNYbwAQ99z", 
         "auth": "cj7ufTK7YU7fQRCZcy-I2ohi35-AYrNH8wvoHkHV7Cy", 
         "_updatedAt": "2016-07-28T23:27:20.625Z", 
         "alias": null, 
         "token": null, 
         "avatar": null, 
         "urls": [
            "http://devbox:8000/send", 
            "http://devbox:8000/send1", 
            "http://devbox:8000/send2"
         ], 
         "scriptEnable": null, 
         "_id": "eMYmZ3rEWpBuEEE3D", 
         "type": "webhook-outgoing", 
         "channel": "#room2", 
         "emoji": null
      }
   ]
}

list all integrations

id = requests.get('http://devbox:3000/api/v1/roomIntegrations', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'}

use "print json.dumps(id.json(), indent=4) for a structured print out.

{
    "status": "success", 
    "Integrations": [
        {
            "username": "james", 
            "_createdBy": {
                "username": "james", 
                "_id": "5CudAzNnNYbwAQ99z"
            }, 
            "triggerWords": null, 
            "name": "test", 
            "script": null, 
            "_createdAt": "2016-07-28T22:40:46.427Z", 
            "userid": "5CudAzNnNYbwAQ99z", 
            "enabled": "True", 
            "userId": "5CudAzNnNYbwAQ99z", 
            "auth": "cj7ufTK7YU7fQRCZcy-I2ohi35-AYrNH8wvoHkHV7Cy", 
            "_updatedAt": "2016-07-28T22:40:46.430Z", 
            "alias": null, 
            "token": null, 
            "avatar": null, 
            "urls": [
                "http://devbox:8000/send", 
                "http://devbox:8000/send1", 
                "http://devbox:8000/send2"
            ], 
            "scriptEnable": null, 
            "_id": "Dt9LsysEMENnajRso", 
            "type": "webhook-outgoing", 
            "channel": "#room2", 
            "emoji": null
        },
        { ...
        }
    ]
}

create outgoing integrations

Method for creating Integrations (webhooks).

Pass it multiple urls to send out to multiple endpoints.

authToken is the user authtoken from login.

webhook = requests.delete('http://devbox:3000/api/v1/outgoingWebhook', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'},data='{"name":"test", "userid":"5CudAzNnNYbwAQ99z", "authToken":"cj7ufTK7YU7fQRCZcy-I2ohi35-AYrNH8wvoHkHV7Cy", "enabled":true, "roomName":"test", "channel":"#room2", "urls":["http://devbox:8000/send","http://devbox:8000/send1","http://devbox:8000/send2"], "username":"james","avatar":null, "emoji":null, "alias":null, "triggerWords":[ ], "script":null , "scriptEnabled":false, "scriptCompiled":null, "scriptError":null}')

returns {u'list': {u'username': u'james', u'name': u'test2', u'script': None, u'userid': u'5CudAzNnNYbwAQ99z', u'enabled': True, u'auth': u'cj7ufTK7YU7fQRCZcy-I2ohi35-AYrNH8wvoHkHV7Cy', u'alias': None, u'avatar': None, u'urls': [u'http://devbox:8000/send', u'http://devbox:8000/send1', u'http://devbox:8000/send2'], u'scriptEnable': False, u'triggerWords': [], u'channel': u'#room5', u'emoji': None}, u'success': True}

remove outgoing integrations

removeWebhook = requests.post('http://devbox:3000/api/v1/removeOutgoingWebhook', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'},data='{"integrationId":["urZGY3fMNM2PdwW3j",”one or more _ids”]}')

returns {u'status': u'success', u'deleted': [u'rt5YKMND5TTvc3R6J']}

direct message room list

this take a urlParam at the end of url (room _id ):

directMessageRoomList = requests.get('http://devbox:3000/api/v1/directMessageRooms.list/5CudAzNnNYbwAQ99zSw2BTuQ884JeQA62Z ', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'})

return json: {u'status': u'success', u'rooms': [{u'usernames': [u'james', u'fred'], u'msgs': 3, u'lm': u'2016-08-12T23:24:19.463Z', u'ts': u'2016-08-12T21:25:10.032Z', u'_updatedAt': u'2016-08-12T23:24:19.500Z', u'_id': u'5CudAzNnNYbwAQKHhI77Q884JeQA62Z', u't': u'd'},.....]}

direct message list all

this will list all direct messages tagged as "d"

directMessageRoomList = requests.get('http://devbox:3000/api/v1/directMessage.list', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'})

return json: {u'status': u'success', u'rooms': [{u'usernames': [u'james', u'fred'], u'msgs': 3, u'lm': u'2016-08-12T23:24:19.463Z', u'ts': u'2016-08-12T21:25:10.032Z', u'_updatedAt': u'2016-08-12T23:24:19.500Z', u'_id': u'5CudAzNnNYbwAQKHhI77Q884JeQA62Z', u't': u'd'},.....]}

room update

This method will update room account information

roomUpdate = requests.post ('http://devbox:3000/api/v1/room.update', headers={'X-User-Id':'5CudAzNnNYbwAQ99z','X-Auth-Token':'HO7TJmbOq4h1skzDPgNXlsoGth4f3dGTJ5fzB8BgU8x'}, data='{"roomName":"maddy","roomTopic":"new Stuff","newName":"Robs favorite room ","roomDescription":"test data","roomType":"p"}')

returns json: '{"_id":"mmqX23pD64HiCYcJ5","name":"maddy","t":"p","usernames":["jgreen-1","jgreen"],"msgs":0,"u":{"_id":null,"username":null},"ts":"2016-09-12T21:13:02.998Z","ro":false,"sysMes":true,"_updatedAt":"2016-09-14T23:10:05.389Z","topic":"new Stuff"}'

room info

This method returns a specific room information, it takes a _id or a room name.

request with _id:

rlist= requests.post ('http://devbox:3000/api/v1/room.info', headers=jg,data='{"rid":"mmqX23pD64HiCYcJ5"}')

request with room name:

rlist= requests.post ('http://devbox:3000/api/v1/room.info', headers=jg,data='{"name":"rob"}')

returns json: {u'room': {u'usernames': [u'jgreen-1', u'jgreen'], u'ro': False, u'name': u'rob', u'msgs': 0, u'description': u'cats', u'ts': u'2016-09-12T21:13:02.998Z', u'topic': u'Stuff', u'u': {u'username': None, u'_id': None}, u't': u'p', u'_id': u'mmqX23pD64HiCYcJ5', u'sysMes': True, u'_updatedAt': u'2016-09-15T01:20:20.417Z'}, u'success': True}

⚠️ **GitHub.com Fallback** ⚠️