[- {
- "id": "57c960e21f6fd2fa1bde699a",
- "domain": "quobis",
- "urgency": "medium",
- "type": "call",
- "timestamp": 1471934540760,
- "payload": {
- "callid": "57bbf135a4eabe4d1d38e5aa",
- "value": {
- "ssrc": [
- {
- "id": "string",
- "packetsSent": 0,
- "packetsLost": 0,
- "packetesReceived": 0,
- "bytesSent": 0,
- "bytesReceived": 0,
- "CodecName": "string"
}
]
}, - "alarm": {
- "id": "main",
- "section": "ssrc",
- "value": "packetsLost",
- "cond": ">",
- "threshold": 2,
- "relative": true
}
}
}
]
Retrieve the call alarm with the specified id
id required | string The ID of the alarm we want to retrieve |
{- "id": "57c960e21f6fd2fa1bde699a",
- "domain": "quobis",
- "urgency": "medium",
- "type": "call",
- "timestamp": 1471934540760,
- "payload": {
- "callid": "57bbf135a4eabe4d1d38e5aa",
- "value": {
- "ssrc": [
- {
- "id": "string",
- "packetsSent": 0,
- "packetsLost": 0,
- "packetesReceived": 0,
- "bytesSent": 0,
- "bytesReceived": 0,
- "CodecName": "string"
}
]
}, - "alarm": {
- "id": "main",
- "section": "ssrc",
- "value": "packetsLost",
- "cond": ">",
- "threshold": 2,
- "relative": true
}
}
}
Fetches all the available address books from all sources
contacts | boolean Default: false Get user contacts as an address book |
domain | boolean Default: false Get domain users as an address book |
phonebooks | boolean Default: false Get phonebooks as address books |
static | boolean Default: true Get static contacts as address books |
{- "addressBooks": [
- {
- "id": "string",
- "name": "string",
- "type": "contacts",
- "contacts": [
- {
- "id": "string",
- "name": "string",
- "phones": [
- "string"
], - "emails": [
- "string"
], - "user": "string"
}
]
}
]
}
Fetches all the available credentials for the requesting user
id | string |
type | string |
user | string |
data | object |
[- {
- "source": "string",
- "type": "basic",
- "context": {
- "src": "string",
- "useragent": "string",
- "language": "string",
- "location": "string",
- "platform": "string",
- "vendor": "string",
- "deviceId": "string"
}, - "domain": "string",
- "user": "string",
- "data": { },
- "lease": 0,
- "id": "string"
}
]
Adds a new credential object to the system's storage
The credential to be created
source required | string |
type required | string Enum: "basic" "ims" "oauth2" "token" "wac-ims" |
object | |
domain required | string |
user | string |
data required | object |
lease required | integer |
{- "source": "string",
- "type": "basic",
- "context": {
- "src": "string",
- "useragent": "string",
- "language": "string",
- "location": "string",
- "platform": "string",
- "vendor": "string",
- "deviceId": "string"
}, - "domain": "string",
- "user": "string",
- "data": { },
- "lease": 0
}
{- "source": "string",
- "type": "basic",
- "context": {
- "src": "string",
- "useragent": "string",
- "language": "string",
- "location": "string",
- "platform": "string",
- "vendor": "string",
- "deviceId": "string"
}, - "domain": "string",
- "user": "string",
- "data": { },
- "lease": 0,
- "id": "string"
}
Obtains the credential identified by the given ID
id required | string The ID of the credential we want to get |
{- "source": "string",
- "type": "basic",
- "context": {
- "src": "string",
- "useragent": "string",
- "language": "string",
- "location": "string",
- "platform": "string",
- "vendor": "string",
- "deviceId": "string"
}, - "domain": "string",
- "user": "string",
- "data": { },
- "lease": 0,
- "id": "string"
}
Changes the given credential with provided data
id required | string |
The credential to be updated.
Please note that the id
parameter must be provided without the @source suffix.
source | string |
type | string Enum: "basic" "ims" "oauth2" "token" "wac-ims" |
object | |
domain | string |
user | string |
data | object |
lease | integer |
{- "source": "string",
- "type": "basic",
- "context": {
- "src": "string",
- "useragent": "string",
- "language": "string",
- "location": "string",
- "platform": "string",
- "vendor": "string",
- "deviceId": "string"
}, - "domain": "string",
- "user": "string",
- "data": { },
- "lease": 0
}
{- "source": "string",
- "type": "basic",
- "context": {
- "src": "string",
- "useragent": "string",
- "language": "string",
- "location": "string",
- "platform": "string",
- "vendor": "string",
- "deviceId": "string"
}, - "domain": "string",
- "user": "string",
- "data": { },
- "lease": 0,
- "id": "string"
}
Fetches all the available domains for the requesting user
[- {
- "id": "string",
- "parent": "string",
- "origins": [
- "string"
], - "enableAnonymous": true,
- "anonymousExpiration": 0,
- "anonymousCapabilities": [
- [
- "string"
]
], - "services": { }
}
]
Create the domain represented by the request's body
The data used to create a domain
domain required | string The name of the domain to be created |
parent | string Parent domain, defaults to user domain |
origins | Array of strings An array of regular expressions taht will match this domain |
enableAnonymous | boolean Whether the domain accepts anonymous users or not |
anonymousCapabilities | Array of Array of strings Capabilities for anonymous users under the domain |
services | object Enabled services for the domain |
{- "domain": "demo.quobis.com",
- "parent": "quobis",
- "origins": [
- "demo.quobis.*"
], - "enableAnonymous": true,
- "anonymousCapabilities": [ ],
- "services": {
- "login": [ ],
- "presence": [ ]
}
}
{- "id": "string",
- "parent": "string",
- "origins": [
- "string"
], - "enableAnonymous": true,
- "anonymousExpiration": 0,
- "anonymousCapabilities": [
- [
- "string"
]
], - "services": { }
}
Fetch the given domain
id required | string |
{- "id": "string",
- "parent": "string",
- "origins": [
- "string"
], - "enableAnonymous": true,
- "anonymousExpiration": 0,
- "anonymousCapabilities": [
- [
- "string"
]
], - "services": { }
}
Updates the domain with given ID
id required | string |
The data used to update a domain
domain required | string The name of the domain to be created |
parent | string Parent domain, defaults to user domain |
origins | Array of strings An array of regular expressions taht will match this domain |
enableAnonymous | boolean Whether the domain accepts anonymous users or not |
anonymousCapabilities | Array of Array of strings Capabilities for anonymous users under the domain |
services | object Enabled services for the domain |
{- "domain": "demo.quobis.com",
- "parent": "quobis",
- "origins": [
- "demo.quobis.*"
], - "enableAnonymous": true,
- "anonymousCapabilities": [ ],
- "services": {
- "login": [ ],
- "presence": [ ]
}
}
{- "id": "string",
- "parent": "string",
- "origins": [
- "string"
], - "enableAnonymous": true,
- "anonymousExpiration": 0,
- "anonymousCapabilities": [
- [
- "string"
]
], - "services": { }
}
Resolve a pending notification by :id with a given action
id required | string |
Request Example
action | string |
{- "action": "string"
}
"string"
Get all available sessions
string or Array of strings | |
string or Array of strings | |
string or Array of strings | |
string or Array of strings | |
string or number | |
string or number | |
number or Array of numbers | |
string or Array of strings | |
string or Array of strings | |
users | Array of strings |
string or number | |
string or number |
[- {
- "id": "58171339e63de4ec5af1448b",
- "token": "qQ6UclyTcmJSWarEW4bWg8mGBOptMTtz",
- "user": "5808c9e2f5b1aeec70a4b0c0",
- "domain": "quobis",
- "from": 1477907257747,
- "to": 1477907573413,
- "expires": 30000,
- "registered": "08768f74n987f6n7648nf89fn",
}
]
Create the session represented by the request body
The data used to create a session
object |
{- "context": {
- "src": "test@example.com",
- "language": "es"
}
}
{- "id": "58171339e63de4ec5af1448b",
- "token": "qQ6UclyTcmJSWarEW4bWg8mGBOptMTtz",
- "user": "5808c9e2f5b1aeec70a4b0c0",
- "domain": "quobis",
- "from": 1477907257747,
- "to": 1477907573413,
- "expires": 30000,
- "registered": "08768f74n987f6n7648nf89fn",
- "context": {
- "src": "test@example.com",
- "language": "es"
}
}
Retrieve a session by the specified id
id required | string The ID of the session |
{- "id": "58171339e63de4ec5af1448b",
- "token": "qQ6UclyTcmJSWarEW4bWg8mGBOptMTtz",
- "user": "5808c9e2f5b1aeec70a4b0c0",
- "domain": "quobis",
- "from": 1477907257747,
- "to": 1477907573413,
- "expires": 30000,
- "registered": "08768f74n987f6n7648nf89fn",
}
Update a session with the data of the request body
id required | string |
The data to update the session
domain | string |
from | number |
object |
{- "domain": "demo.quobis",
- "from": 1481111815000,
- "context": {
- "src": "test2@example.com",
- "language": "en"
}
}
{- "id": "58171339e63de4ec5af1448b",
- "token": "qQ6UclyTcmJSWarEW4bWg8mGBOptMTtz",
- "user": "5808c9e2f5b1aeec70a4b0c0",
- "domain": "demo.quobis",
- "from": 1481111815000,
- "to": -1,
- "expires": 30000,
- "registered": "123",
- "context": {
- "src": "test2@example.com",
- "language": "en"
}
}
Revoke a session so it can not be recovered
The data used to revoke a session
id | string |
{- "id": "58171339e63de4ec5af1448b"
}
{- "id": "58171339e63de4ec5af1448b",
- "token": "qQ6UclyTcmJSWarEW4bWg8mGBOptMTtz",
- "user": "5808c9e2f5b1aeec70a4b0c0",
- "domain": "quobis",
- "from": 1477907257747,
- "to": 1477907573413,
- "expires": 30000,
- "registered": "08768f74n987f6n7648nf89fn",
}
Update a set of Session with the same data
The data to update the sessions
ids | Array of strings |
object |
{- "ids": [
- "58171339e63de4ec5af1448b"
], - "data": {
- "registered": 123
}
}
[- {
- "id": "58171339e63de4ec5af1448b",
- "token": "qQ6UclyTcmJSWarEW4bWg8mGBOptMTtz",
- "user": "5808c9e2f5b1aeec70a4b0c0",
- "domain": "demo.quobis",
- "from": 1481111815000,
- "to": -1,
- "expires": 30000,
- "registered": "123",
- "context": {
- "src": "test2@example.com",
- "language": "en"
}
}
]
Retrieve the WAC users. If some filter options are sent will return a list of users that match this options
limit | number Max number of users to retrieve |
sort_by | string Example: sort_by=created.asc Sorting criteria, can be key.asc or key.desc |
last_item | number Time of creation of the last user retrieved |
last_match | string Value of the sorting element in the last user retrieved |
loggedBefore | number Used to search all users that logged before given date |
loggedAfter | number Used to search all users that logged after given date |
createdBefore | number Used to search all users that was created before given date |
createdAfter | number Used to search all users that was created after given date |
capabilities | Array of strings Used to search all users that have given capabilities. |
username | string Used to filter by username |
registered | boolean Used to filter all users registered in system (user, admin). If false return all anonymous users. |
[- {
- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}
]
Create the user represented by the request body
The user to be created
id | string Deprecated This field is mantained because of backawards compatibility and will be ignored. |
username required | string |
domain required | string |
role required | string Enum: "user" "admin" |
string | |
created | number |
lastLogin | number |
capabilities | Array of strings |
mobilePhone | Array of strings |
landLineNumber | string |
alias | string |
{- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}
{- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}
Retrieve the WAC user identified by id
id required | string |
{- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}
Update the user identified by :id with the request body
id required | string |
The user to be updated
id | string Deprecated This field is mantained because of backawards compatibility and will be ignored. |
username | string |
domain | string |
role | string Enum: "user" "admin" |
string | |
created | number |
lastLogin | number |
capabilities | Array of strings |
mobilePhone | Array of strings |
landLineNumber | string |
alias | string |
{- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}
{- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}
Endpoint that validates an user's mobile phone
id required | string |
code required | string Random string to check if the phone is correct |
field required | string Phone to validate |
{- "code": "string",
- "field": "string"
}
{- "code": 0,
- "message": "string"
}
{- "agents": [
- {
- "id": "string",
- "online": true,
- "displayName": "string",
- "activity": "string",
- "channels": {
- "chat": [
- {
- "chatId": "string",
- "timestamp": 0,
- "users": [
- "string"
]
}
], - "voice": [
- {
- "conferenceId": "string",
- "timestamp": 0,
- "users": [
- "string"
]
}
], - "c2c": [
- {
- "conferenceId": "string",
- "timestamp": 0,
- "users": [
- "string"
]
}
]
}
}
]
}
{- "skills": [
- {
- "skill": "string",
- "agents": [
- "string"
]
}
]
}
Endpoint that creates a new AgentSkill
The data to create a skill
skill required | string |
agents | Array of strings |
{- "skill": "string",
- "agents": [
- "string"
]
}
"Created"
{- "agents": [
- "string"
]
}
Endpoint that set an existing user as an agent
The data used to the operation
userId required | string ID of the user that will be set as Agent |
{- "userIds": [
- "string"
]
}
"OK"
Endpoint that attaches an agent to an existing skill
The data used to attach the agent
skill required | string Name of the skill the agent will be attached to |
agent required | string ID of the agent to attach |
{- "skill": "string",
- "agent": "string"
}
"OK"
Endpoint that attaches agents to an existing skill
The data used to attach the agents
skill required | string Name of the skill the agent will be attached to |
agents required | Array of strings IDs of the agents to attach |
{- "skill": "string",
- "agents": [
- "string"
]
}
"OK"
Endpoint that detaches an agent from an existing skill
The data used to detach the agent
skill required | string Name of the skill the agent will be detached from |
agent required | string ID of the agent to detach |
{- "skill": "string",
- "agent": "string"
}
"OK"
Endpoint that retrieves the capabilities of the user domain
domain | string |
{- "domain": [
- "stats",
- "alarms",
- "callcontrol",
- "chat",
- "contacts",
- "datapipe",
- "filetransfer",
- "forms",
- "ldap",
- "login",
- "meetings",
- "login-token",
- "presence",
- "log",
- "settings",
- "recording"
], - "user": [
- "[+c2cagent]"
]
}
Endpoint that retrieves a call list associated with an authenticated user
after | number Oldest timestamp (in ms) for returned calls (since) |
before | number Newest timestamp (in ms) for returned calls (up to) |
limit | number Limit returned calls lenght |
sortBy | string Sort returned elements in descending order of the given field |
caller | string The caller of the desired calls |
callee | string The callee of the desired calls |
target | string The target of the desired calls |
queueposition | string Queue position of the desired calls |
[- {
- "id": "57c82b0763d8f2f3717b1dd2",
- "caller": "100@demo.quobis.com",
- "calle": "",
- "target": "",
- "users": [
- "57985e3781a0d1b014e74a06"
], - "sessions": [
- "57c80fb163d8f2f3717b1dc9"
], - "date": 1472736007901,
- "from": 1472736007901,
- "to": 1472736007901,
- "state": "servererror",
- "data": { },
- "queueposition": 0,
- "context": { },
- "anonymousSessionId": "",
- "attempts": [ ]
}
]
Endpoint that creates a call
The data used to create a call
calle | string |
caller | string |
context | object |
anonymousSessionId | string |
attempts | Array of objects |
{- "calle": "c2cagent",
- "caller": "100@demo.quobis.com",
- "context": { },
- "anonymousSessionId": "",
- "attempts": [ ]
}
{- "id": "57c82b0763d8f2f3717b1dd2",
- "caller": "100@demo.quobis.com",
- "calle": "",
- "target": "",
- "users": [
- "57985e3781a0d1b014e74a06"
], - "sessions": [
- "57c80fb163d8f2f3717b1dc9"
], - "date": 1472736007901,
- "from": 1472736007901,
- "to": 1472736007901,
- "state": "servererror",
- "data": { },
- "queueposition": 0,
- "context": { },
- "anonymousSessionId": "",
- "attempts": [ ]
}
Endpoint that retrieves a call by id
id required | string |
{- "id": "57c82b0763d8f2f3717b1dd2",
- "caller": "100@demo.quobis.com",
- "calle": "",
- "target": "",
- "users": [
- "57985e3781a0d1b014e74a06"
], - "sessions": [
- "57c80fb163d8f2f3717b1dc9"
], - "date": 1472736007901,
- "from": 1472736007901,
- "to": 1472736007901,
- "state": "servererror",
- "data": { },
- "queueposition": 0,
- "context": { },
- "anonymousSessionId": "",
- "attempts": [ ]
}
Endpoint that udpates a call by id
id required | string |
The data used to update a call
calle | string |
caller | string |
context | object |
anonymousSessionId | string |
queueposition | number |
state | string |
{- "calle": "101@demo.quobis.com",
- "caller": "100@demo.quobis.com",
- "context": { },
- "anonymousSessionId": "",
- "queueposition": 1,
- "state": "rejected"
}
{- "id": "57c82b0763d8f2f3717b1dd2",
- "caller": "100@demo.quobis.com",
- "calle": "101@demo.quobis.com",
- "target": "",
- "users": [
- "57985e3781a0d1b014e74a06"
], - "sessions": [
- "57c80fb163d8f2f3717b1dc9"
], - "date": 1472736007901,
- "from": 1472736007901,
- "to": 1472736007901,
- "state": "rejected",
- "data": { },
- "queueposition": 1,
- "context": { },
- "anonymousSessionId": "",
- "attempts": [ ]
}
Fetches all available conferences for the requesting user
createdAt | integer If this param is defined, conferences older than the specified value are fetched |
limit | string returned conferences length |
sortBy | string Example: sortBy=createdAt.desc sort returned elements in ascending (asc) or descending (desc) order of given field. Note that if order is not specifed, desc will be used as default |
createdAtAfter | integer If this param is defined, get conrefences created after the specified value |
createdAtBefore | integer If this param is defined, get conferences created before the specified value |
lastItem | integer Time of creation of the last conference retrieved |
lastMatch | integer Value of the sorting element of the last conference retrieved |
state | string Example: state=finished If this param is defined, get conferences that are in the specifed state. |
roomId | string Example: roomId=5c8d538d1c857e000ea8a5ef If this param is defined, get conferences with the given roomId. |
[- {
- "id": "string",
- "roomId": "string",
- "finishedAt": 0,
- "createdAt": 0,
- "invites": [
- {
- "from": "string",
- "to": "string",
- "state": "string",
- "group": true,
- "inviteRequest": true,
- "error": 0,
- "mediatypes": {
- "audio": true,
- "video": true
}, - "candidates": [
- {
- "address": "string",
- "endReason": 0
}
]
}
], - "participants": [
- {
- "address": "string",
- "createdAt": 0,
- "finishedAt": 0,
- "sessionId": "string"
}
], - "transfers": [ ],
- "state": "string",
- "domains": [
- "string"
]
}
]
Fetches a conference identified by the given ID
id required | string |
{- "id": "string",
- "roomId": "string",
- "finishedAt": 0,
- "createdAt": 0,
- "invites": [
- {
- "from": "string",
- "to": "string",
- "state": "string",
- "group": true,
- "inviteRequest": true,
- "error": 0,
- "mediatypes": {
- "audio": true,
- "video": true
}, - "candidates": [
- {
- "address": "string",
- "endReason": 0
}
]
}
], - "participants": [
- {
- "address": "string",
- "createdAt": 0,
- "finishedAt": 0,
- "sessionId": "string"
}
], - "transfers": [ ],
- "state": "string",
- "domains": [
- "string"
]
}
Updates a conference based on the received one and notifies the users
The conference to be updated and the wacUris of the users
object | |
wacUris | Array of strings |
{- "conferenceLog": {
- "id": "string",
- "roomId": "string",
- "finishedAt": 0,
- "createdAt": 0,
- "invites": [
- {
- "from": "string",
- "to": "string",
- "state": "string",
- "group": true,
- "inviteRequest": true,
- "error": 0,
- "mediatypes": {
- "audio": true,
- "video": true
}, - "candidates": [
- {
- "address": "string",
- "endReason": 0
}
]
}
], - "participants": [
- {
- "address": "string",
- "createdAt": 0,
- "finishedAt": 0,
- "sessionId": "string"
}
], - "transfers": [ ],
- "state": "string",
- "domains": [
- "string"
]
}, - "wacUris": [
- "string"
]
}
{- "id": "string",
- "roomId": "string",
- "finishedAt": 0,
- "createdAt": 0,
- "invites": [
- {
- "from": "string",
- "to": "string",
- "state": "string",
- "group": true,
- "inviteRequest": true,
- "error": 0,
- "mediatypes": {
- "audio": true,
- "video": true
}, - "candidates": [
- {
- "address": "string",
- "endReason": 0
}
]
}
], - "participants": [
- {
- "address": "string",
- "createdAt": 0,
- "finishedAt": 0,
- "sessionId": "string"
}
], - "transfers": [ ],
- "state": "string",
- "domains": [
- "string"
]
}
Updates a conference based on the received one
The conference to be updated
object |
{- "conferenceLog": {
- "id": "string",
- "roomId": "string",
- "finishedAt": 0,
- "createdAt": 0,
- "invites": [
- {
- "from": "string",
- "to": "string",
- "state": "string",
- "group": true,
- "inviteRequest": true,
- "error": 0,
- "mediatypes": {
- "audio": true,
- "video": true
}, - "candidates": [
- {
- "address": "string",
- "endReason": 0
}
]
}
], - "participants": [
- {
- "address": "string",
- "createdAt": 0,
- "finishedAt": 0,
- "sessionId": "string"
}
], - "transfers": [ ],
- "state": "string",
- "domains": [
- "string"
]
}
}
{- "id": "string",
- "roomId": "string",
- "finishedAt": 0,
- "createdAt": 0,
- "invites": [
- {
- "from": "string",
- "to": "string",
- "state": "string",
- "group": true,
- "inviteRequest": true,
- "error": 0,
- "mediatypes": {
- "audio": true,
- "video": true
}, - "candidates": [
- {
- "address": "string",
- "endReason": 0
}
]
}
], - "participants": [
- {
- "address": "string",
- "createdAt": 0,
- "finishedAt": 0,
- "sessionId": "string"
}
], - "transfers": [ ],
- "state": "string",
- "domains": [
- "string"
]
}
Fetches all available conferences for the requesting user
createdAt | integer If this param is defined, conferences older than the specified value are fetched |
limit | string returned conferences length |
sortBy | string Example: sortBy=createdAt.desc sort returned elements in ascending (asc) or descending (desc) order of given field. Note that if order is not specifed, desc will be used as default |
createdAtAfter | integer If this param is defined, get conrefences created after the specified value |
createdAtBefore | integer If this param is defined, get conferences created before the specified value |
lastItem | integer Time of creation of the last conference retrieved |
lastMatch | integer Value of the sorting element of the last conference retrieved |
state | string Example: state=finished If this param is defined, get conferences that are in the specifed state. |
roomId | string Example: roomId=5c8d538d1c857e000ea8a5ef If this param is defined, get conferences with the given roomId. |
{- "conferences": [
- {
- "id": "string",
- "roomId": "string",
- "finishedAt": 0,
- "createdAt": 0,
- "invites": [
- {
- "from": "string",
- "to": "string",
- "state": "string",
- "group": true,
- "inviteRequest": true,
- "error": 0,
- "mediatypes": {
- "audio": true,
- "video": true
}, - "candidates": [
- {
- "address": "string",
- "endReason": 0
}
]
}
], - "participants": [
- {
- "address": "string",
- "createdAt": 0,
- "finishedAt": 0,
- "sessionId": "string"
}
], - "transfers": [ ],
- "state": "string",
- "domains": [
- "string"
]
}
]
}
Fetches all available contacts for the requesting user
source | Array of strings A list of backends used to get contacts |
deviceId | string If defined, get the contacts for this deviceId. This param needs to be defined with param source='device' |
name | string If this param is defined, get the contacts using pattern matching with this param |
favorite | boolean If defined, get the contacts by favorite field. |
limit | number If defined, limit the number of contacts retrieved |
offset | number If defined, skip the number given in the returned contacts |
[- {
- "id": "string",
- "source": "string",
- "user": "string",
- "name": "string",
- "favorite": true,
- "phones": [
- {
- "name": "string",
- "address": "string",
- "attachedUserId": "string"
}
], - "unnormalizedPhones": [
- { }
], - "emails": [
- { }
], - "deviceId": "string",
- "contactDeviceId": "string"
}
]
Create a new contact. If it wants to create a group contact, the string "group" must be provided as source as well as a "participants" object must be provided instead of a "phones" object.
The contact to be created
source | string |
user | string |
name | string |
favorite | boolean |
Array of objects | |
emails | Array of objects |
deviceId | string |
contactDeviceId | string |
Array of objects |
{- "source": "string",
- "user": "string",
- "name": "string",
- "favorite": true,
- "phones": [
- {
- "name": "string",
- "address": "string"
}
], - "emails": [
- { }
], - "deviceId": "string",
- "contactDeviceId": "string",
- "participants": [
- {
- "name": "string",
- "address": "string"
}
]
}
{- "id": "string",
- "source": "string",
- "user": "string",
- "name": "string",
- "favorite": true,
- "phones": [
- {
- "name": "string",
- "address": "string",
- "attachedUserId": "string"
}
], - "unnormalizedPhones": [
- { }
], - "emails": [
- { }
], - "deviceId": "string",
- "contactDeviceId": "string"
}
Retrieve the contact identified by id
id required | string |
{- "id": "string",
- "source": "string",
- "user": "string",
- "name": "string",
- "favorite": true,
- "phones": [
- {
- "name": "string",
- "address": "string",
- "attachedUserId": "string"
}
], - "unnormalizedPhones": [
- { }
], - "emails": [
- { }
], - "deviceId": "string",
- "contactDeviceId": "string"
}
Updates the given contact with the body payload
id required | string |
The contact data to be updated
id | string |
source | string |
user | string |
name | string |
favorite | boolean |
Array of objects | |
unnormalizedPhones | Array of objects |
emails | Array of objects |
deviceId | string |
contactDeviceId | string |
{- "id": "string",
- "source": "string",
- "user": "string",
- "name": "string",
- "favorite": true,
- "phones": [
- {
- "name": "string",
- "address": "string",
- "attachedUserId": "string"
}
], - "unnormalizedPhones": [
- { }
], - "emails": [
- { }
], - "deviceId": "string",
- "contactDeviceId": "string"
}
{- "id": "string",
- "source": "string",
- "user": "string",
- "name": "string",
- "favorite": true,
- "phones": [
- {
- "name": "string",
- "address": "string",
- "attachedUserId": "string"
}
], - "unnormalizedPhones": [
- { }
], - "emails": [
- { }
], - "deviceId": "string",
- "contactDeviceId": "string"
}
Deletes the contact with the given ID
id required | string |
{- "id": "string",
- "source": "string",
- "user": "string",
- "name": "string",
- "favorite": true,
- "phones": [
- {
- "name": "string",
- "address": "string",
- "attachedUserId": "string"
}
], - "unnormalizedPhones": [
- { }
], - "emails": [
- { }
], - "deviceId": "string",
- "contactDeviceId": "string"
}
Insert a list of contacts in the given backend
The contacts and the backend to insert them
source | string The destination backend for the contacts |
Array of objects |
{- "source": "string",
- "contacts": [
- {
- "id": "string",
- "source": "string",
- "user": "string",
- "name": "string",
- "favorite": true,
- "phones": [
- {
- "name": "string",
- "address": "string",
- "attachedUserId": "string"
}
], - "unnormalizedPhones": [
- { }
], - "emails": [
- { }
], - "deviceId": "string",
- "contactDeviceId": "string"
}
]
}
"CREATED"
Fetches all available contacts as an object for the requesting user
source | Array of strings A list of backends used to get contacts |
deviceId | string If defined, get the contacts for this deviceId. This param needs to be defined with param source='device' |
name | string If this param is defined, get the contacts using pattern matching with this param |
favorite | boolean If defined, get the contacts by favorite field. |
limit | number If defined, limit the number of contacts retrieved |
offset | number If defined, skip the number given in the returned contacts |
{- "contacts": [
- {
- "id": "string",
- "source": "string",
- "user": "string",
- "name": "string",
- "favorite": true,
- "phones": [
- {
- "name": "string",
- "address": "string",
- "attachedUserId": "string"
}
], - "unnormalizedPhones": [
- { }
], - "emails": [
- { }
], - "deviceId": "string",
- "contactDeviceId": "string"
}
]
}
Get all unfinished datapipes where a user is a participant
[- {
- "id": "58a8343c5d1f203d1675ea87",
- "label": "labelDatapipe",
- "participants": [
- "120@demo.quobis.com",
- "121@demo.quobis.com"
], - "connected": [
- "120@demo.quobis.com",
- "121@demo.quobis.com"
], - "rejected": [ ],
- "data": [ ]
}
]
Create a new datapipe with given data
The data used to create a datapipe
label | string |
participants | Array of strings |
{- "label": "labelDatapipe",
- "participants": [
- "120@demo.quobis.com",
- "121@demo.quobis.com"
]
}
{- "id": "58a8343c5d1f203d1675ea87",
- "label": "labelDatapipe",
- "participants": [
- "120@demo.quobis.com",
- "121@demo.quobis.com"
], - "connected": [
- "120@demo.quobis.com",
- "121@demo.quobis.com"
], - "rejected": [ ],
- "data": [ ]
}
Retrieve a datapipe by the specified id
id required | string The ID of the datapipe |
{- "id": "58a8343c5d1f203d1675ea87",
- "label": "labelDatapipe",
- "participants": [
- "120@demo.quobis.com",
- "121@demo.quobis.com"
], - "connected": [
- "120@demo.quobis.com",
- "121@demo.quobis.com"
], - "rejected": [ ],
- "data": [ ]
}
Send new data through the datapipe identified by id
id required | string |
The data to send to the datapipe
data | string |
{- "data": "new data"
}
{- "code": 0,
- "message": "string"
}
Update a datapipe with new values
id required | string |
The data to update the datapipe
session | string |
{- "session": "58a89f28e1c9a36f1f7e5951"
}
{- "id": "58a8343c5d1f203d1675ea87",
- "label": "labelDatapipe",
- "participants": [
- "120@demo.quobis.com",
- "121@demo.quobis.com"
], - "connected": [
- "120@demo.quobis.com",
- "121@demo.quobis.com"
], - "rejected": [ ],
- "data": [ ]
}
Start a new authenticated session in the WAC
provider | string The OAuth2 provider to use for authentication |
token | string The token used for log in |
object The login context (browser, language...) |
{- "provider": "wac",
- "token": "52c20...7e043c31d",
- "context": {
- "src": "127.0.0.1",
- "useragent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36",
- "language": "es-ES",
- "platform": "Linux x86_64",
- "vendor": "Google Inc."
}
}
{- "access_token": "52c20...7e043c31d;",
- "expires_in": 29991,
- "token_type": "WACSessionToken",
- "session_id": "57b6f6b9cffcde4149cbe060",
- "session": { },
- "credential": { },
- "capabilities": {
- "domain": [
- { }
], - "user": [
- { }
]
}
}
Endpoint that retrieves a list of meetings created by the authenticated user
all | boolean Get all the meetings including the one the user participates in |
language | string Meetings with the specified language |
phone | string If this param is defined, get meetings by phone |
name | string If this param is defined, get meetings by name |
validUntil | number Get meetings older than the value of this param |
[- {
- "name": "exampleName",
- "user": {
- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}, - "users": [
- { }
], - "language": "string",
- "participants": [
- {
- "email": "othertest@quobis.com"
}, - {
- "phone": "+34654789654",
- "sendSMS": true
}
], - "validSince": 1471615380000,
- "validUntil": 1471615380000,
- "phone": "string",
- "ddi": {
- "extension": "string",
- "pin": "string"
}, - "id": "string"
}
]
Endpoint that creates a meeting associated with an user
The data used to create a meeting
name | string |
participants | Array of objects |
language | string |
validSince | number |
validUntil | number |
{- "name": "exampleName",
- "participants": [
- {
- "email": "othertest@quobis.com"
}, - {
- "phone": "+34654789654",
- "sendSMS": true
}
], - "language": "es",
- "validSince": 1471615380000,
- "validUntil": 1471615380000
}
{- "name": "exampleName",
- "user": {
- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}, - "users": [
- { }
], - "language": "string",
- "participants": [
- {
- "email": "othertest@quobis.com"
}, - {
- "phone": "+34654789654",
- "sendSMS": true
}
], - "validSince": 1471615380000,
- "validUntil": 1471615380000,
- "phone": "string",
- "ddi": {
- "extension": "string",
- "pin": "string"
}, - "id": "string"
}
Endpoint that retrieves a meeting by id
id required | string |
{- "name": "exampleName",
- "user": {
- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}, - "users": [
- { }
], - "language": "string",
- "participants": [
- {
- "email": "othertest@quobis.com"
}, - {
- "phone": "+34654789654",
- "sendSMS": true
}
], - "validSince": 1471615380000,
- "validUntil": 1471615380000,
- "phone": "string",
- "ddi": {
- "extension": "string",
- "pin": "string"
}, - "id": "string"
}
Endpoint that updates a meeting by id
id required | string |
sendInvites | boolean Default: false Flag to know if the service sends invitations to the participants |
The data used to update a meeting
name required | string |
required | Array of objects |
language required | string |
{- "name": "string",
- "participants": [
- {
- "userId": "string",
- "email": "string",
- "phone": "string",
- "sendSMS": true
}
], - "language": "string"
}
{- "name": "exampleName",
- "user": {
- "id": "string",
- "username": "string",
- "domain": "string",
- "role": "user",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}, - "users": [
- { }
], - "language": "string",
- "participants": [
- {
- "email": "othertest@quobis.com"
}, - {
- "phone": "+34654789654",
- "sendSMS": true
}
], - "validSince": 1471615380000,
- "validUntil": 1471615380000,
- "phone": "string",
- "ddi": {
- "extension": "string",
- "pin": "string"
}, - "id": "string"
}
Asks the server for the list of available OAuth2 tokens for a user
username required | string Example: username=alice@quobis The username to obtain the tokens from |
type_hint | string Default: "access_token" Enum: "access_token" "refresh_token" "all" The type of token to retrieve |
{- "accessTokens": [
- {
- "id": "590afb25f778090c2e65de9b",
- "token": "20e04aeec09164eb4ee40b35fc875bf11cfa94282da06dd5984f0c6c94da5d8fa5ca4010f1dc7011382a0484176fe04ce96f974c3edf190da617ad253f8e3fc2",
- "userID": "58ed080b3c0fcf6941155997",
- "clientId": "",
- "expiresAt": "2017-05-04T12:57:57+02:00"
}
], - "refreshTokens": [
- {
- "id": "590afc2fd2ea1c10c6cf4b76",
- "token": "8bd0d58388e356c2b695ee72374ea14fa41f6f0f1f37632fb561e5ab1bda9d54e25b3e25f2ee7a1d05b8ffe0bd86e7699dec9435d5eb6870f73f34d4b419a4de",
- "userID": "58ed080b3c0fcf6941155997",
- "clientId": "",
- "expiresAt": "2017-05-04T12:02:23+02:00"
}
]
}
Asks the server to issue a new OAuth2 bearer token
The data provided to issue a token
grant_type | string |
username | string |
password | string |
{- "grant_type": "anonymous",
- "username": "@quobis"
}
{- "access_token": "ffda919214b7d8cfafcb2c67fc4bf27a68f6120a4dd7de2ac2ce61009dc9ee6bab04bebfa89fb4949d2f808dbed6409b16cbd8c8d05417c1cfda88d0f01a441f",
- "refresh_token": "2947926b49285a734a577a0343d6a824c0e77d52824cfd460df89042919ad495f6dcf9be49dc77312fe2487f327b39b5383a03e6433f684606014badd53c5968",
- "expires_in": 3599,
- "token_type": "Bearer"
}
Asks the server to drop tokens belonging to a given user
username required | string Example: username=alice@quobis The username to delete the tokens from |
type_hint | string Default: "access_token" Enum: "access_token" "refresh_token" "all" The type of token to delete |
{- "code": 0,
- "message": "string"
}
Asks the server for the list of registered OAuth2 clients
[- {
- "id": "5889b0a5a9d237ee2970f676",
- "name": "wacInitializer",
- "redirectURI": "",
- "clientId": "1a6e5eb915c3b6a717f5bd2dc8f9762e315b4babeb831a576979d0bd9cf375b9@wac",
- "clientSecret": "d38809fb88eecd348d7be3118e92b3fb3054b20a3e348680e70af328a97c3698"
}
]
Asks the server to register a new OAuth2 client
The data to create a OAuth2 client
name | string |
redirectURI | string |
{- "name": "Fancy App v1.2.3",
}
{- "id": "5889b0a5a9d237ee2970f676",
- "name": "Fancy App v1.2.3",
- "clientId": "1a6e5eb915c3b6a717f5bd2dc8f9762e315b4babeb831a576979d0bd9cf375b9@wac",
- "clientSecret": "d38809fb88eecd348d7be3118e92b3fb3054b20a3e348680e70af328a97c3698"
}
Asks the server for the registered OAuth2 client with the given id
id required | string The id of the OAuth2 client to be retrieved |
{- "id": "5889b0a5a9d237ee2970f676",
- "name": "wacInitializer",
- "redirectURI": "",
- "clientId": "1a6e5eb915c3b6a717f5bd2dc8f9762e315b4babeb831a576979d0bd9cf375b9@wac",
- "clientSecret": "d38809fb88eecd348d7be3118e92b3fb3054b20a3e348680e70af328a97c3698"
}
Asks the server for information about an OAuth2 bearer token. Note that for backwards compatibility, access_token is also accepted
token required | string Example: token=ffda919214b7d8cfafcb2c67fc4bf27a68f6120a4dd7de2ac2ce61009dc9ee6bab04bebfa89fb4949d2f808dbed6409b16cbd8c8d05417c1cfda88d0f01a441f |
{- "audience": "8c0786627376adc29b4fa479e62c2d424357d5981ad2ceff294c9387956dc2af",
- "scope": "string",
- "user_id": "5889b0a5a9d237ee2970f678",
- "expires_in": 634
}
Asks the server to revoke a token (access or refresh)
The data to revoke a token
token required | string |
token_type_hint | string Default: "access_token" Enum: "access_token" "refresh_token" |
{- "token": "96b45988bdb30361a9e3e21fe3d48d666cfdc6bf130f4bbd95cc71fab029742d22b1a2d5c0f1034654a57dda49b0f6a276f502f3a1d79c8ac60f88f951894401",
- "token_type_hint": "access_token"
}
{- "code": 0,
- "message": "string"
}
Get all phonebooks a subscriber is subscribed to
subscriberId required | string |
[- {
- "id": "5bb5e8a13d428d2ebce767b9",
- "name": "phonebookNameExample",
- "contacts": [
- {
- "name": "exampleName",
- "address": "exampleAddress",
- "id": "0ak87akuBUfSu56UrdXb"
}
], - "subscribers": [
- "5bb5bfdee1d2e200133b9137"
]
}
]
Create a new phonebook
The data used to create a phonebook
phonebookName required | string Name for the new phonebook |
{- "phonebookName": "customPhonebookName"
}
{- "phonebook": {
- "id": "5bb5e8a13d428d2ebce767b8",
- "name": "customPhonebookName",
- "contacts": [ ],
- "subscribers": [ ]
}
}
Remove a phonebook from the system
phonebookId required | string |
{- "phonebook": {
- "id": "5bb5e8a13d428d2ebce767b9",
- "name": "phonebookNameExample",
- "contacts": [
- {
- "name": "exampleName",
- "address": "exampleAddress",
- "id": "0ak87akuBUfSu56UrdXb"
}
], - "subscribers": [
- "5bb5bfdee1d2e200133b9137"
]
}
}
Add a new subscriber to a phonebook
phonebookId required | string |
subscriberId required | string |
{- "subscriberId": "5bb5bfdee1d2e200133b9137"
}
{- "phonebook": {
- "id": "5bb5e8a13d428d2ebce767b9",
- "name": "phonebookNameExample",
- "contacts": [
- {
- "name": "exampleName",
- "address": "exampleAddress",
- "id": "0ak87akuBUfSu56UrdXb"
}
], - "subscribers": [
- "5bb5bfdee1d2e200133b9137"
]
}
}
Remove a subscriber from a phonebook
phonebookId required | string |
subscriberId required | string |
{- "phonebook": {
- "id": "5bb5e8a13d428d2ebce767b9",
- "name": "phonebookNameExample",
- "contacts": [
- {
- "name": "exampleName",
- "address": "exampleAddress",
- "id": "0ak87akuBUfSu56UrdXb"
}
], - "subscribers": [
- "5bb5bfdee1d2e200133b9137"
]
}
}
Add a new contact to a phonebook
phonebookId required | string |
name | string |
address | string |
{- "name": "exampleName",
- "address": "exampleAddress"
}
{- "phonebook": {
- "id": "5bb5e8a13d428d2ebce767b9",
- "name": "phonebookNameExample",
- "contacts": [
- {
- "name": "exampleName",
- "address": "exampleAddress",
- "id": "0ak87akuBUfSu56UrdXb"
}
], - "subscribers": [
- "5bb5bfdee1d2e200133b9137"
]
}, - "createdContact": {
- "name": "exampleName",
- "address": "exampleAddress",
- "id": "0ak87akuBUfSu56UrdXb"
}
}
Remove a contact from a phonebook
phonebookId required | string |
contactId required | string |
{- "phonebook": {
- "id": "5bb5e8a13d428d2ebce767b8",
- "name": "customPhonebookName",
- "contacts": [ ],
- "subscribers": [ ]
}
}
Endpoint that retrieves presences subscribed previously
withoutAvatar | boolean If true, the result will not have avatars |
addresses | Array of strings If not null, the result will only contain the presence of the given user addresses |
[- {
- "id": "57986f1081a0d1b014e74a15",
- "address": "wac-user:58cbbee08b0389d760ece803",
- "online": false,
- "activity": "unknown",
- "mood": "unknown",
- "note": "",
- "avatar": "",
- "displayName": ""
}
]
Endpoint that subscribes to a user address and returns its current presence
The address to subscribe to
address | string |
{- "address": "wac-user:58cbbee38b0389d760ece803"
}
{- "id": "57986f1081a0d1b014e74a15",
- "address": "wac-user:58cbbee08b0389d760ece803",
- "online": false,
- "activity": "unknown",
- "mood": "unknown",
- "note": "",
- "avatar": "",
- "displayName": ""
}
Endpoint that retrieves a presence object by address
address required | string The address to retrieve a presence |
{- "id": "57986f1081a0d1b014e74a15",
- "address": "wac-user:58cbbee08b0389d760ece803",
- "online": false,
- "activity": "unknown",
- "mood": "unknown",
- "note": "",
- "avatar": "",
- "displayName": ""
}
Endpoint that updates the presence of an authenticated user
address required | string The address to update a presence |
The data to update the presence
online | boolean |
activity | string |
mood | string |
note | string |
avatar | string |
displayName | string |
{- "online": true,
- "activity": "unknown",
- "mood": "unknown",
- "note": "",
- "avatar": "",
- "displayName": "John Doe"
}
{- "id": "57986f1081a0d1b014e74a15",
- "address": "wac-user:58cbbee08b0389d760ece803",
- "online": true,
- "activity": "unknown",
- "mood": "unknown",
- "note": "",
- "avatar": "",
- "displayName": "John Doe"
}
Endpoint that enables subscription to multiple addresses
The presences' addresses to subscribe to
[- "wac-user:58cbbee38b0389d760ece803"
]
[- {
- "id": "57986f1081a0d1b014e74a15",
- "address": "wac-user:58cbbee08b0389d760ece803",
- "online": false,
- "activity": "unknown",
- "mood": "unknown",
- "note": "",
- "avatar": "",
- "displayName": ""
}
]
Notify a push token used to send push notifications
deviceId | string Identifies the deviceId where the token was generated, which is useful to match with previous tokens |
tokenType | string Identifies the client which must be used to send the push |
token | string Token used to send the push |
{- "deviceId": "string",
- "tokenType": "string",
- "token": "string"
}
"No Content"
Delete every push token taht belongs to a device
deviceId | string Id of the device every token should be deleted |
{- "deviceId": "string"
}
"No Content"
Send a push notification
tokenId | string The token used to send the notification |
notification | object The object intended to send as notification |
{- "tokenId": "string",
- "notification": { }
}
"No Content"
[- {
- "id": "588211ee8569997806dc1292",
- "source": "dialogic",
- "ts": 1484919278570,
- "caller": "801@bob.quobis.com",
- "callee": "802@bob.quobis.com",
- "callId": "8f11bd06-8abc-4d1a-b5e5-e29c288d7722",
- "callIdWAC": "588211ed8569997806dc1291",
- "audioFile": [
- "file://verification/2017-01-5T14:36:34:214Z-fileRecodring1.callee.x-wav",
- "file://verification/2017-01-5T14:36:34:214Z-fileRecodring1.caller.x-wav"
], - "videoFile": [
- "file://verification/2017-01-5T14:36:34:214Z-fileRecodring1.callee.x-vid",
- "file://verification/2017-01-5T14:36:34:214Z-fileRecodring1.caller.x-vid"
]
}
]
Start the recording for a call identified by id
id required | string |
The data to start the recording
filename required | string The name of the filename where the recording will be saved |
source | string The backend to use |
{- "filename": "filename-test",
- "source": "string"
}
{- "code": 0,
- "message": "string"
}
Stop the recording for a call identified by id
id required | string |
The data to stop the recording
source | string The backend to use |
{- "source": "string"
}
{- "code": 0,
- "message": "string"
}
Endpoint that creates a remote log to a user
level | string |
file | string |
text | string |
{- "level": "DEBUG_0",
- "file": "services/presence",
- "text": "example"
}
{- "code": 0,
- "message": "string"
}
Endpoint that retrieve the previously resolved addresses
{- "resolved": [
- {
- "id": "57cfc14cf52bb286665f7d6e",
- "domain": "quobis",
- "username": "alice",
- "email": "user@example.com",
- "capabilities": [
- "+c2cagent, whiteboard"
], - "mobilePhone": [ ],
- "landLineNumber": "",
- "alias": "",
- "gatewayUsername": "130@demo.quobis.com"
}
], - "subscribed": [
- "alice",
- "alice@quobis",
- "bob"
]
}
Endpoint used to resolve new addresses. Resolved elementes and the updated subscription list are returned
[- "alice@jt",
- "alice"
]
{- "resolved": [
- {
- "id": "57cfc14cf52bb286665f7d6e",
- "domain": "quobis",
- "username": "alice",
- "email": "user@example.com",
- "capabilities": [
- "+c2cagent, whiteboard"
], - "mobilePhone": [ ],
- "landLineNumber": "",
- "alias": "",
- "gatewayUsername": "130@demo.quobis.com"
}
], - "subscribed": [
- "alice",
- "alice@quobis",
- "bob"
]
}
Endpoint used to update subscription list.
resolved required | Array of strings |
subscribed required | Array of strings |
{- "resolved": [
- "57cfc14cf52bb286665f7d6e"
], - "subscribed": [
- "alice@jt",
- "alice",
- "bob"
]
}
{- "resolved": [
- {
- "id": "57cfc14cf52bb286665f7d6e",
- "domain": "quobis",
- "username": "alice",
- "email": "user@example.com",
- "capabilities": [
- "+c2cagent, whiteboard"
], - "mobilePhone": [ ],
- "landLineNumber": "",
- "alias": "",
- "gatewayUsername": "130@demo.quobis.com"
}
], - "subscribed": [
- "alice",
- "alice@quobis",
- "bob"
]
}
Get a gateway's username by user id
id | string |
{- "id": "cafecafecafecafe"
}
"100@kamdev.quobis.com"
Get a user's username given its gateway username
value required | string |
username | string |
{- "username": "100@kamdev.quobis.com"
}
"5c518cbd13670802a4db28f3"
Resolve an address to an user without subscribing
{- "id": "57cfc14cf52bb286665f7d6e",
- "domain": "quobis",
- "username": "alice",
- "email": "user@example.com",
- "capabilities": [
- "+c2cagent, whiteboard"
], - "mobilePhone": [ ],
- "landLineNumber": "",
- "alias": "",
- "gatewayUsername": "130@demo.quobis.com"
}
Resolve an address to an user without subscribing
addresses | string |
{- "addresses": "wac-user:58cbbee08b0389d760ece803"
}
{- "id": "57cfc14cf52bb286665f7d6e",
- "domain": "quobis",
- "username": "alice",
- "email": "user@example.com",
- "capabilities": [
- "+c2cagent, whiteboard"
], - "mobilePhone": [ ],
- "landLineNumber": "",
- "alias": "",
- "gatewayUsername": "130@demo.quobis.com"
}
Endpoint that creates a mapping
The data to create a mapping
ownerUri required | string SippoURI representing the credential's owner. It can be both a group or a user URI |
required | object |
{- "ownerUri": "wac-user:aliceId",
- "credential": {
- "username": "foo",
- "password": "bar"
}
}
{- "username": "alice",
- "password": "foo"
}
Endpoint that updates a mapping's username or password
The data to update a mapping
ownerUri required | string SippoURI representing the credential's owner. It can be both a group or a user URI |
required | object |
{- "ownerUri": "wac-user:aliceId",
- "credential": {
- "username": "foo",
- "password": "bar"
}
}
{- "username": "alice",
- "password": "foo"
}
Endpoint that creates a call stat associated with a user
The data to be create the call stat
message | string |
object | |
ts | number |
{- "message": "call-brief",
- "payload": {
- "ssrc": [
- {
- "id": "ssrc_469794178_send",
- "packetsSent": 49,
- "packetsLost": 0,
- "packetsReceived": 48,
- "bytesSent": 4989,
- "bytesReceived": 4926,
- "CodecName": "opus"
}
]
}, - "ts": 1471934540760
}
{- "code": 0,
- "message": "string"
}
Endpoint that enables stat for given user
The data to enable a stat
user | string |
enable | boolean |
callid | string |
{- "user": "57985e3781a0d1b014e74a06",
- "enable": true,
- "callid": "57c6b9fe2f90f1264134c58a"
}
{- "callid": "57c6b9fe2f90f1264134c58a",
- "enable": true
}
Endpoint that enables stat for a given user
id required | string The ID of the call to get a stat |
{- "domain": "quobis",
- "user": "57985e3781a0d1b014e74a06",
- "service": "CallStats",
- "type": "call-brief",
- "timestamp": 1471934540760,
- "payload": {
- "ssrc": [
- {
- "id": "ssrc_469794178_send",
- "packetsSent": 49,
- "packetsLost": 0,
- "packetsReceived": 48,
- "bytesSent": 4989,
- "bytesReceived": 4926,
- "CodecName": "opus"
}
]
}, - "ts": 1471934540760
}
{- "activeUsers": [ ],
- "activeCalls": [ ],
- "calls": {
- "sinceReboot": 0,
- "last15": 0,
- "last30": 0,
- "last60": 0,
- "all": 0
}, - "uptime": 69347983,
- "memoryUsage": {
- "rss": 69347983,
- "heapTotal": 60055136,
- "heapUsed": 52268752
}
}
Endpoint that creates a new setting and associates it to the given user
The data used to create a UserSetting
source | string |
key | string |
value | string |
{- "source": "wac",
- "key": "test",
- "value": "test"
}
{- "id": "57c817cff28b6f1b47b01d0b@wac",
- "source": "wac",
- "user": "57985e3781a0d1b014e74a06",
- "key": "test",
- "value": "test"
}
Endpoint that retrieves a user setting by id
id required | string The ID of the user setting |
{- "id": "57c817cff28b6f1b47b01d0b@wac",
- "source": "wac",
- "user": "57985e3781a0d1b014e74a06",
- "key": "test",
- "value": "test"
}
Endpoint that updates a setting with the provided data
id required | string The ID of the user setting |
The data to update the setting
source | string |
key | string |
value | string |
{- "source": "wac",
- "key": "keyTestValue",
- "value": "testValue"
}
{- "id": "57c817cff28b6f1b47b01d0b@wac",
- "source": "wac",
- "user": "57985e3781a0d1b014e74a06",
- "key": "keyTestValue",
- "value": "testValue"
}
Get a list of all groups
participating | boolean If this flag exists, get the groups where the user is participating |
targetUserId | string If this flag exists, get the groups where the targetUserId is participating |
{- "groupList": [
- {
- "id": "5b6404336bcfa52826affe5c",
- "name": "myGroup",
- "groupId": "myGroupID",
- "participants": [ ],
- "owner": {
- "id": "5b64037e6bcfa52826affe57",
- "domain": "quobis",
- "username": "admin",
- "email": "info@quobis.com",
- "created": 1533281150740,
- "lastLogin": 0,
- "role": "admin",
- "capabilities": [ ],
- "mobilePhone": [ ],
- "landLineNumber": "",
- "alias": "admin"
}
}
]
}
Create a new group
groupId | string Id of the group to create, which will be used to be resolved. Note that it must be unique. If not provided, a random one will be generated |
name required | string Name of the group. Useful to provide a familiar name. |
{- "groupId": "myGroupID",
- "name": "myGroup"
}
{- "id": "5b6404336bcfa52826affe5c",
- "name": "myGroup",
- "groupId": "myGroupID",
- "participants": [ ],
- "owner": {
- "id": "5b64037e6bcfa52826affe57",
- "domain": "quobis",
- "username": "admin",
- "email": "info@quobis.com",
- "created": 1533281150740,
- "lastLogin": 0,
- "role": "admin",
- "capabilities": [ ],
- "mobilePhone": [ ],
- "landLineNumber": "",
- "alias": "admin"
}
}
Makes an user leave each group she belongs to. If the request author has an user role, she will be the target of the action, whereas if her role is admin, she can remove other users.
targetUserId | string |
{- "targetUserId": "string"
}
"No Content"
Get a group information by groupId
groupId required | boolean The identifier of the group |
{- "id": "5b6404336bcfa52826affe5c",
- "name": "myGroup",
- "groupId": "myGroupID",
- "participants": [ ],
- "owner": {
- "id": "5b64037e6bcfa52826affe57",
- "domain": "quobis",
- "username": "admin",
- "email": "info@quobis.com",
- "created": 1533281150740,
- "lastLogin": 0,
- "role": "admin",
- "capabilities": [ ],
- "mobilePhone": [ ],
- "landLineNumber": "",
- "alias": "admin"
}
}
Update group by groupId
groupId required | boolean The identifier of the group |
The data to update the group
key | any |
{- "key": "value"
}
"No Content"
Add a participant to a group. Note that the user that performs the action must be the owner
groupId required | boolean The identifier of the group |
The data to update the group
targetUserId | string |
{- "targetUserId": "string"
}
"No Content"
Remove a user from a group. Note that the user that performs the action must be the owner
groupId required | boolean The identifier of the group |
The data to update the group
targetUserId | string |
{- "targetUserId": "string"
}
"No Content"
Create several groups
The data to create the groups
Array of objects |
{- "groups": [
- {
- "groupId": "myGroupID",
- "name": "myGroup"
}
]
}
{- "groups": [
- {
- "id": "5b6404336bcfa52826affe5c",
- "name": "myGroup",
- "groupId": "myGroupID",
- "participants": [ ],
- "owner": {
- "id": "5b64037e6bcfa52826affe57",
- "domain": "quobis",
- "username": "admin",
- "email": "info@quobis.com",
- "created": 1533281150740,
- "lastLogin": 0,
- "role": "admin",
- "capabilities": [ ],
- "mobilePhone": [ ],
- "landLineNumber": "",
- "alias": "admin"
}
}
]
}
{- "id": "string",
- "domain": "string",
- "username": "string",
- "email": "string",
- "created": 0,
- "lastLogin": 0,
- "role": "string",
- "capabilities": [
- "string"
], - "mobilePhone": [
- "string"
], - "landLineNumber": "string",
- "alias": "string"
}
Builds a push notification for the given XMPP payload
The XMPP data for the push notification
node | string The device the push notification is for |
sender | string The sender of the XMPP message originating the push notification |
body | string The body, if any, of the XMPP message originating the push notification |
{http://quobis.com/xmpp/push}oob | string The OOB URL, if any, of the XMPP message originating the push notification |
{http://quobis.com/xmpp/push}muc | string The JID of the muc generating the push, if any |
{http://quobis.com/xmpp/push}muc-name | string The friendly name for the MUC |
{http://quobis.com/xmpp/push}is-muc-invite | boolean Whether the push is for a MUC invite or not |
{http://quobis.com/xmpp/push}muc-invite-from | string The JID of the user who invites |
{- "node": "cafecafe",
- "sender": "alice@example.org",
- "body": "Hi there!",
- "{http://quobis.com/xmpp/push}muc": "group@conference.quobis",
- "{http://quobis.com/xmpp/push}muc-name": "Family group",
- "{http://quobis.com/xmpp/push}is-muc-invite": true,
- "{http://quobis.com/xmpp/push}muc-invite-from": "alice@quobis"
}
{- "error": "string"
}
Registers a new push token to be used for XMPP notifications
The data about the new XMPP push token
token | string The Push Token as informed by the provider |
tokenType | string The identifier for the push provider |
node | string The identifier of the device registering the push token |
{- "token": "906119f96a4fa2c55962d3fe681f774abdcadc4373a2a25c552da5db7402cf45",
- "tokenType": "firebase, apn",
- "node": "efDaLHCPOZGuj8QaJ7L3uflKQHmBuunC;"
}
{- "node": "efDaLHCPOZGuj8QaJ7L3uflKQHmBuunC;",
- "secret": "gae6pha8eu2ahchie0ooza8Phaeroo8AeD0jo9kooqueicheeCeereivaitahgie"
}
Unregisters an XMPP push token from the server
The data for the unregistration
node | string The identifier of the device unregistering the push token |
tokenType | string The identifier for the push provider |
{- "node": "efDaLHCPOZGuj8QaJ7L3uflKQHmBuunC;",
- "tokenType": "firebase, apn"
}
{- "node": "efDaLHCPOZGuj8QaJ7L3uflKQHmBuunC;",
- "secret": "gae6pha8eu2ahchie0ooza8Phaeroo8AeD0jo9kooqueicheeCeereivaitahgie"
}
Builds a push notification for the given XMPP payload
The XMPP data for the push notification
node | string The device the push notification is for |
sender | string The sender of the XMPP message originating the push notification |
body | string The body, if any, of the XMPP message originating the push notification |
{http://quobis.com/xmpp/push}oob | string The OOB URL, if any, of the XMPP message originating the push notification |
{http://quobis.com/xmpp/push}muc | string The JID of the muc generating the push, if any |
{http://quobis.com/xmpp/push}muc-name | string The friendly name for the MUC |
{http://quobis.com/xmpp/push}is-muc-invite | boolean Whether the push is for a MUC invite or not |
{http://quobis.com/xmpp/push}muc-invite-from | string The JID of the user who invites |
{- "node": "cafecafe",
- "sender": "alice@example.org",
- "body": "Hi there!",
- "{http://quobis.com/xmpp/push}muc": "group@conference.quobis",
- "{http://quobis.com/xmpp/push}muc-name": "Family group",
- "{http://quobis.com/xmpp/push}is-muc-invite": true,
- "{http://quobis.com/xmpp/push}muc-invite-from": "alice@quobis"
}
{- "error": "string"
}
Registers a new push token to be used for XMPP notifications
The data about the new XMPP push token
token | string The Push Token as informed by the provider |
tokenType | string The identifier for the push provider |
node | string The identifier of the device registering the push token |
{- "token": "906119f96a4fa2c55962d3fe681f774abdcadc4373a2a25c552da5db7402cf45",
- "tokenType": "firebase, apn",
- "node": "efDaLHCPOZGuj8QaJ7L3uflKQHmBuunC;"
}
{- "node": "efDaLHCPOZGuj8QaJ7L3uflKQHmBuunC;",
- "secret": "gae6pha8eu2ahchie0ooza8Phaeroo8AeD0jo9kooqueicheeCeereivaitahgie"
}
Unregisters an XMPP push token from the server
The data for the unregistration
node | string The identifier of the device unregistering the push token |
tokenType | string The identifier for the push provider |
{- "node": "efDaLHCPOZGuj8QaJ7L3uflKQHmBuunC;",
- "tokenType": "firebase, apn"
}
{- "node": "efDaLHCPOZGuj8QaJ7L3uflKQHmBuunC;",
- "secret": "gae6pha8eu2ahchie0ooza8Phaeroo8AeD0jo9kooqueicheeCeereivaitahgie"
}
Initiates the request of a new support chat
id required | string the request ID |
context | object an arbitrary context for the agent assigner |
{- "id": "string",
- "context": { }
}
{- "code": 0,
- "message": "string"
}
An agent wants to transfer the support chat to another agent
id required | string |
required | object |
{- "id": "string",
- "destination": {
- "id": "string",
- "username": "string",
- "domain": "string"
}
}
{- "code": 0,
- "message": "string"
}