This method allows you to wrap multiple methodcalls in one service request. This method is compatible with the XML-RPC multicall specification.
Every request should be struct with a "methodName" and a "params" key. The "params" array may not be an associative array, it must be anindexed array. This means that you must provide each parameter in its correct order to the services you are calling.
An example of the REST request syntax is below.
Sample JSON Multical Request
var params = { "method" : 'system.multicall', "requests" : [{ "methodName" : "media.getFiles", "params" : { "vhost" : [VHOST_ID], "sort" : "", "filters" : { "channel" : [CHANNEL_ID] }, "start" : "", "limit" : 2 } }, { "methodName" : "users.getUsers", "params" : { "vhost" : [VHOST_ID], "filters" : { "active" : "true" }, "offset" : "", "limit" : "10", "fields" : ["firstname","lastname","email"], "sort" : "created DESC", "getExternalIds" : "" } }, { "methodName" : "groups.createGroup", "params" : { "vhost" : [VHOST_ID], "name" : "New Group Name", "additionalInfo" : { "email" : "[USER_EMAIL_ADDRESS_REQUIRED]" } } }], "APIKEY" : "[APIKEY]" } $.post('/services/json',params ,function(response){ console.log(response); });
array system.multicall ( array requests )
Name | Type | Required | Default value | Description |
---|---|---|---|---|
requests | array | Required | none | This is an array of service calls that are going to be made using the multicall service. |
http://api.newspark.ca/services/rest/system/multicall? requests[0][methodName]=media.getFiles& requests[0][params][vhost]=[VHOST_ID]& requests[0][params][sort]=& requests[0][params][filters][channel]=[CHANNEL_ID]& requests[0][params][start]=& requests[0][params][limit]=2& requests[1][methodName]=users.getUsers& requests[1][params][vhost]=[VHOST_ID]& requests[2][methodName]=groups.createGroup& requests[2][params][vhost]=[VHOST_ID]& requests[2][params][name]=[NEW_GROUP_NAME]& requests[2][params][additionalInfo][email]=[USER_EMAIL_ADDRESS]& APIKEY=[APIKEY]
<?xml version="1.0" encoding="UTF-8"?> <result> <item> <item> <totalCount>2</totalCount> <data> <item> <avatar>0</avatar> <channel>CHANNEL_ID</channel> <commentcount>0</commentcount> <filetype>1</filetype> <hits>47</hits> <id>MEDIA_ID</id> <message>MEDIA_DESCRIPTION</message> <rating>0</rating> <status>3</status> <tags>these are media tags</tags> <title>MEDIA_TITLE</title> <uid>USER_ID</uid> <upload>2012-01-25 16:36:47</upload> <user_name>USER_NAME</user_name> <vhost>VHOST_ID</vhost> <votecount>0</votecount> <publicUrl>http://fmdevs3.filemobile.com/storage/MEDIA_ID</publicUrl> <thumbUrl>http://fmdev.s3.amazonaws.com/storage/MEDIA_ID</thumbUrl> <location>fmdevs3</location> </item> <item> <avatar>0</avatar> <channel>CHANNEL_ID</channel> <commentcount>0</commentcount> <filetype>4</filetype> <hits>0</hits> <id>MEDIA_ID</id> <message> <p> This is some test text</p> </message> <rating>0</rating> <status>3</status> <tags>media test text example</tags> <title>MEDIA_TITLE</title> <uid>USER_ID</uid> <upload>2012-01-24 15:21:52</upload> <user_name>USER_NAME</user_name> <vhost>VHOST_ID</vhost> <votecount>0</votecount> <publicUrl>http://fmdevs3.filemobile.com/storage/MEDIA_ID</publicUrl> <thumbUrl>http://fmdev.s3.amazonaws.com/storage/MEDIA_ID</thumbUrl> <location>fmdevs3</location> </item> </data> <vhost>VHOST_ID</vhost> </item> </item> <item> <item> <totalCount>3</totalCount> <data> <item> <id>USER_ID</id> <firstname>USER_FIRSTNAME</firstname> <lastname>USER_FIRSTNAME</lastname> <city/> <country/> <avatar>0</avatar> <email>USER_EMAIL_ADDRESS</email> <user>USER_NAME</user> <gender/> <offset>0</offset> </item> <item> <id>USER_ID</id> <firstname/> <lastname/> <city/> <country/> <avatar>0</avatar> <email>USER_EMAIL_ADDRESS</email> <user>USER_NAME</user> <gender/> <offset>1</offset> </item> </data> </item> </item> <item> <item>GROUP_ID</item> </item> </result>
{ "status": true, "result": [ [ { "totalCount": "2", "data": [ { "avatar": "0", "channel": CHANNEL_ID, "commentcount": 0, "filetype": 1, "hits": 49, "id": MEDIA_ID, "message": "Media Example Test Upload YEYEY UPDATE", "rating": 0, "status": 3, "tags": "media example test upload", "title": "Image Example", "uid": USER_ID, "upload": "2012-01-25 16:36:47", "user_name": "USER_NAME", "vhost": VHOST_ID, "votecount": 0, "publicUrl": "http://fmdevs3.filemobile.com/storage/MEDIA_ID", "thumbUrl": "http://fmdev.s3.amazonaws.com/storage/MEDIA_ID", "location": "fmdevs3" }, { "avatar": "0", "channel": CHANNEL_ID, "commentcount": 0, "filetype": 4, "hits": 0, "id": MEDIA_ID, "message": "\r\n\tThis is some test text media
\r\n", "rating": 0, "status": 3, "tags": "media test text example", "title": "Test text media", "uid": USER_ID, "upload": "2012-01-24 15:21:52", "user_name": "USER_NAME", "vhost": VHOST_ID, "votecount": 0, "publicUrl": "http://fmdevs3.filemobile.com/storage/MEDIA_ID", "thumbUrl": "http://fmdev.s3.amazonaws.com/storage/MEDIA_ID", "location": "fmdevs3" } ], "vhost": VHOST_ID } ], [ { "totalCount": "1", "data": [ { "firstname": "USER_FIRSTNAME", "lastname": "USER_LASTNAME", "email": "USER_EMAIL_ADDRESS", "offset": 0 }, { "firstname": "USER_FIRSTNAME", "lastname": "USER_LASTNAME", "email": "USER_EMAIL_ADDRESS", "offset": 1 } ] } ], [ "NEW_GROUP_ID" ] ] }