API ImbaChat
API para enviar mensajes
1 enviando mensajes
Descripción Este método ayudará a crear un nuevo grupo y agregar los usuarios enumerados en el cuerpo de la solicitud a este grupo.
Solicitar parámetros
imba_id
: parámetro obligatorio, especifica la pertenencia al widget. El tipo de variable esinteger
. Si no se pasóimba_id
a la solicitud, el servidor devolverá un error con el código 422 y un mensaje de que no se pasó el parámetro requerido (ver Posibles errores)user_id
: parámetro obligatorio, ID del usuario (sitio externo) desde el que se envía el mensajeroom_id
- Parámetro obligatorio, este parámetro es el identificador numérico del grupo, es necesario para poder definir los grupos. El tipo de variable es "entero".password
: parámetro obligatorio, contraseña del usuario del sitio donde está instalado el widget. El tipo de variable es "cadena". Si no se pasó la contraseña a la solicitud, el servidor devolverá un error con el código 422 y un mensaje de que no se pasó el parámetro requerido (ver Posibles errores)message
-string
. Parámetro requerido. El texto del mensaje transmitido.
Request example: CURL:
curl --location --request POST 'http://develop.im.awsweb.imbachat.com/imbachat/v2/627/send_msg' \
--user imba_id:secret_key \
--form 'user_id="1"' \
--form 'room_id="1536"' \
--form 'message="api message"'
PHP:
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://develop.im.awsweb.imbachat.com/imbachat/v2/627/send_msg',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('user_id' => '1','room_id' => '1536','message' => 'api message'),
CURLOPT_USERPWD => "imba_id:secret_key",
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Response example:
{
"success": true,
"message": {
"id": 4543,
"uuid": "1536-1608275827-Z6Eq1W",
"message": "api message",
"time": "1608275827",
"answer_to": 0,
"liked": "0",
"user_id": 2046,
"room_id": "1536",
"meta": []
},
"user": {
"name": "spray",
"user_id": "2046",
"user_mail": "danil-kravtsiv@mail.ru",
"chat_role": "admin",
"status": 0,
"avatar_url": false,
"profile_url": false,
"profiles": {
"1": {
"profile_id": 1,
"name": "spray",
"chat_role": "admin",
"avatar_url": false,
"profile_url": false,
"user_id": "2046",
"status": 0,
"lastlogin": -1,
"remote_user_id": 1
}
},
"lastlogin": -1,
"remote_user_id": 1
},
"relation": 0
}
2 API para obtener una lista de usuarios con filtros aplicados
Descripción
Este método devuelve una lista de usuarios que coinciden con los filtros que se pasaron en la solicitud.
Autorización:
Para obtener acceso a la solicitud, debe aprobar la autenticación básica. Inicio de sesión - ID de widget, contraseña - clave secreta.
Filtros:
login
- nombre de usuario registrado en el chatid
- Número de identificación en el sistema imbachatimba_id
- ID de widgetstatus
: estado del usuario (usuario / administrador)last_message_date
- fecha del último mensajebanned
- estado de prohibición
Request example: CURL:
curl --location --request POST 'http://api.imbachat.com/imbachat/v2/627/get_users' \
--user imba_id:secret_key \
--form 'imba_id="627"' \
--form 'status="user"' \
PHP:
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://api.imbachat.com/imbachat/v2/627/get_users',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('imba_id' => 627, 'status' => 'user'),
CURLOPT_USERPWD => "imba_id:secret_key",
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Response example:
{
"success": "true",
"data": [
{
"id": 2046,
"deleted_at": null,
"created_at": "2020-11-23 05:26:41",
"updated_at": "2020-11-24 06:59:54",
"remote_user_id": "1",
"user_data": null,
"imba_id": 627,
"login": "NULL",
"password": "NULL",
"status": "admin",
"avatar_url": "https://secure.gravatar.com/avatar/3875115bacc48cca24ac51ee4b0e7975?s=48&d=identicon"
}
],
"code": 200
}
3 API para obtener una lista de habitaciones con filtros aplicados
Descripción
Este método devuelve una lista de habitaciones que coinciden con los filtros que se pasaron en la solicitud, y también se devuelve una respuesta exitosa si se pasó el encabezado "JWT" con un token.
Filtros:
room_type
- tipo de salas (diálogo - 0 / conferencia - 1)status
: el estado del usuario en la salaimba_id
- ID de widgetcount_users
- número de usuarioslast_message_date
- fecha del último mensajebanned
- estado de prohibición
Request example: CURL:
curl --location --request POST 'http://api.imbachat.com/imbachat/v2/627/get_rooms' \
--user imba_id:secret_key \
--form 'imba_id="627"' \
--form 'room_type="0"'
PHP:
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://api.imbachat.com/imbachat/v2/627/get_rooms',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('imba_id' => 627, 'room_type' => '0'),
CURLOPT_USERPWD => "imba_id:secret_key",
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Response example:
{
"success": "true",
"data": [
{
"id": 1853,
"pipe": "5fde659f0ba18_1608410527",
"name": "Technical support",
"admin_id": 2157,
"type": 3,
"tab": 0,
"is_public": 0,
"created_at": "2020-12-19 20:42:07",
"updated_at": "2020-12-19 20:42:07",
"deleted_at": null,
"status": 0,
"imba_id": 627
},
{
"id": 1314,
"pipe": "5fbcaf6a4ba35_1606201194",
"name": "New conversation",
"admin_id": 2046,
"type": 0,
"tab": 0,
"is_public": 0,
"created_at": "2020-11-24 06:59:54",
"updated_at": "2020-11-24 06:59:54",
"deleted_at": null,
"status": 0,
"imba_id": 627
}
],
"code": 200
}