API ImbaChat
API para crear diálogos y conferencias
1.1 Crear un nuevo grupo con miembros
Descripción Al ejecutar este método, se creará un nuevo grupo y se agregarán 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 es entero. 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 (consulte Posibles errores)login
: parámetro obligatorio, nombre de usuario del usuario del sitio donde está instalado el widget. El tipo de variable es cadena. Si no se pasó el inicio de sesión 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 (consulte Posibles errores)contraseña
: 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)room_title
- Parámetro opcional, define el nombre de la habitación para todos los usuarios, es este parámetro el que el usuario ve en la lista de habitaciones. El tipo de variable es cadena. Si room_title no se pasó a la solicitud, el servidor asignará a esta variable el valor "nueva sala".room_pipe
- Un parámetro opcional, este parámetro es un identificador de cadena del grupo, es necesario para poder definir grupos sin especificar room_id. El tipo de variable es cadena. Si room_pipe no se pasó a la solicitud, el servidor asignará un valor único aleatorio a esta variable.room_is_public
- Parámetro opcional, este parámetro determina si el grupo es público o no. El tipo de variable es entero. Los valores posibles son 1 - grupo público, 0 - grupo cerrado.room_type
- Parámetro opcional, este parámetro determina el tipo de grupo que se creará. El tipo de variable es entero. Valores posibles: 0 - diálogo, 1 - conferencia, 3 - sala de soporte técnico.users_ids
- Parámetro opcional, este parámetro define los miembros del grupo. El tipo de variable es una matriz asociativa. Parámetro de ejemplo: users_ids = [1, 2, 3]; El valor de la matriz son los ID de los usuarios registrados en el sitio externo.
Ejemplo de solicitud: RIZO: `` sh curl --location --request POST 'https://api.imbachat.com/imbachat/v1/widget/imba_rooms' \ --form 'imba_id = 209' \ --form 'login = admin' \ --form 'contraseña = admin' \ --form 'users_ids [0] = 3' \ --form 'tipo_habitación = 1' \ --form 'users_ids [1] = 4' \ --form 'room_title = Тестовая API группа 9' \ --form 'room_pipe =' \ --form 'room_is_public = 1'
''
PHP:
`
php
$ curl = curl_init ();
curl_setopt_array ($ curl, matriz ( CURLOPT_URL => "https://api.imbachat.com/imbachat/v1/widget/imba_rooms", CURLOPT_RETURNTRANSFER => verdadero, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => verdadero, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "PUBLICAR", CURLOPT_POSTFIELDS => array ('imba_id' => '209', 'login' => 'admin', 'password' => 'admin', 'users_ids [0]' => '3', 'room_type' => ' 1 ',' users_ids [1] '=>' 4 ',' room_title '=>' Тестовая API группа 9 ',' room_pipe '=>' ',' room_is_public '=>' 1 '), CURLOPT_HTTPHEADER => matriz ( ), ));
$ respuesta = curl_exec ($ curl);
curl_close ($ curl); echo $ respuesta;
''
Ejemplo de respuesta:
json { "código": 200, "message": "Éxito", "datos": [ { "éxito": cierto, "roomId": 613, "room_id": 613 } ] }
''
1.2 Agregar nuevos miembros al grupo creado por
Descripción La ejecución de este método 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 es entero. 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)login
: parámetro obligatorio, nombre de usuario del usuario del sitio donde está instalado el widget. El tipo de variable es cadena. Si no se pasó el inicio de sesión 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 (consulte Posibles errores)contraseña
: 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)room_title
- Parámetro opcional, define el nombre de la habitación para todos los usuarios, es este parámetro el que el usuario ve en la lista de habitaciones. El tipo de variable es cadena. Si room_title no se pasó a la solicitud, el servidor asignará a esta variable el valor "nueva sala".room_pipe
- Parámetro opcional, este parámetro es un identificador de cadena del grupo, es necesario para que pueda definir grupos sin especificarroom_id
. El tipo de variable es cadena. Si no se pasóroom_pipe
a la solicitud, el servidor asignará un valor único aleatorio a esta variable.room_is_public
- Parámetro opcional, este parámetro determina si el grupo es público o no. El tipo de variable es entero. Los valores posibles son 1 - grupo público, 0 - grupo cerrado.room_type
- Parámetro opcional, este parámetro determina el tipo de grupo que se creará. El tipo de variable es entero. Valores posibles: 0 - diálogo, 1 - conferencia, 3 - sala de soporte técnico.users_ids
- Parámetro opcional, este parámetro define los miembros del grupo. El tipo de variable es una matriz asociativa. Parámetro de ejemplo:users_ids
= [1, 2, 3]; El valor de la matriz son los ID de los usuarios registrados en el sitio externo.room_id
- Parámetro opcional, este parámetro es un identificador numérico del grupo, es necesario para que pueda definir grupos sin especificarroom_pipe
. El tipo de variable es entero. Siroom_ id
yroom_pipe
no se pasaron a la solicitud, el servidor creará una nueva sala
Ejemplo de solicitud:
Request example: CURL:
curl --location --request POST 'https://api.imbachat.com/imbachat/v1/widget/imba_rooms' \
--form 'imba_id=209' \
--form 'login=admin' \
--form 'password=admin' \
--form 'users_ids[0]=1' \
--form 'room_type=1' \
--form 'room_title=Test API group 9' \
--form 'room_pipe=' \
--form 'room_is_public =1' \
--form 'room_id=613'
PHP:
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.imbachat.com/imbachat/v1/widget/imba_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' => '209','login' => 'admin','password' => 'admin','users_ids[0]' => '1','room_type' => '1','room_title' => 'Test API group 9','room_pipe' => '','room_is_public ' => '1','room_id' => '613'),
CURLOPT_HTTPHEADER => array(
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Response example:
{
"code": 200,
"message": "Success",
"data": [
{
"success": true,
"roomId": 613,
"room_id": 613
}
]
}
Response example:
{
"code": 200,
"message": "Success",
"data": [
{
"error": false,
"success": true,
"room_id": "613",
}
]
}
API para obtener una lista de usuarios con filtros aplicados
Descripción
Este método devuelve una lista de usuarios que coincidieron con los filtros pasados 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 mensaje- "prohibido" - 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
}
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 mensaje- "prohibido" - 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
}
API para obtener una lista de mensajes con filtros aplicados
Descripción
Este método devuelve una lista de mensajes 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:
date
- fecha del mensajeid
- Número de identificación en el sistema imbachatroom_type
- tipo de salas (diálogo - 0 / conferencia - 1)user_name
: nombre de usuario del usuario que escribió el mensajeuser_role
: el rol del usuario en la sala
Más documentación: