{% note tip "" %}
If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the MCP server so that the assistant can utilize the official REST documentation.
{% endnote %}
Scope:
imWho can execute the method: any user
The method im.recent.hide removes a dialog from the list of recent chats for the current user.
You can retrieve the list of recent chats using the im.recent.get method.
{% include Note on required parameters %}
#|
|| Name
type | Description ||
|| DIALOG_ID*
string | Identifier of the chat in the format:
chatXXX— chatsgXXX— group or project chatXXX— identifier of the personal chat user
The chat identifier can be obtained using the im.chat.get method. The user identifier can be retrieved using the user.get and user.search methods || |#
{% include Note on examples %}
{% list tabs %}
-
cURL (Webhook)
curl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"DIALOG_ID":"chat1489"}' \ https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/im.recent.hide
-
cURL (OAuth)
curl -X POST \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"DIALOG_ID":"chat1489","auth":"**put_access_token_here**"}' \ https://**put_your_bitrix24_address**/rest/im.recent.hide
-
JS (TS)
// This snippet is an ES module: top-level await requires type="module" or a bundler. // $b24 is an already-initialized SDK instance (see the SDK "Get started" guide). import { Text } from '@bitrix24/b24jssdk' import type { B24Frame } from '@bitrix24/b24jssdk' declare const $b24: B24Frame try { const response = await $b24.actions.v2.call.make<boolean>({ method: 'im.recent.hide', params: { DIALOG_ID: 'chat1489', }, requestId: Text.getUuidRfc4122() }) // The payload is available only on a successful response if (!response.isSuccess) { console.error(response.getErrorMessages().join('; ')) } else { const result = response.getData()!.result console.info('Dialog hidden:', result) } } catch (error) { // Thrown on transport or SDK failures (AjaxError, SdkError, etc.) console.error(error) }
-
JS (UMD)
<!-- Load the SDK (UMD build); it is exposed as the global B24Js --> <script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script> <script> async function hideRecentDialog() { try { // Initialize the SDK inside a Bitrix24 frame const $b24 = await B24Js.initializeB24Frame() const response = await $b24.actions.v2.call.make({ method: 'im.recent.hide', params: { DIALOG_ID: 'chat1489', }, requestId: B24Js.Text.getUuidRfc4122() }) // The payload is available only on a successful response if (!response.isSuccess) { console.error(response.getErrorMessages().join('; ')) return } const result = response.getData().result console.info('Dialog hidden:', result) } catch (error) { // Thrown on transport or SDK failures (AjaxError, SdkError, etc.) console.error(error) } } document.addEventListener('DOMContentLoaded', hideRecentDialog) </script>
-
PHP
try { $response = $b24Service ->core ->call( 'im.recent.hide', [ 'DIALOG_ID' => 'chat1489' ] ); $result = $response ->getResponseData() ->getResult(); echo 'Success: ' . print_r($result, true); processData($result); } catch (Throwable $e) { error_log($e->getMessage()); echo 'Error hiding dialog: ' . $e->getMessage(); }
-
BX24.js
BX24.callMethod( 'im.recent.hide', { DIALOG_ID: 'chat1489' }, function(result) { if (result.error()) { console.error(result.error()); } else { console.log(result.data()); } } );
-
PHP CRest
require_once('crest.php'); $result = CRest::call( 'im.recent.hide', [ 'DIALOG_ID' => 'chat1489' ] ); echo '<PRE>'; print_r($result); echo '</PRE>';
-
Go
// client and ctx are already created — see the Go SDK section res, err := client.Core().Call(ctx, "im.recent.hide", b24.Params{ "DIALOG_ID": "chat1489", }) if err != nil { return fmt.Errorf("im.recent.hide: %w", err) } var ok bool if err := json.Unmarshal(res.Result, &ok); err != nil { return fmt.Errorf("parse response: %w", err) } fmt.Println("done:", ok)
{% endlist %}
HTTP Status: 200
{
"result": true,
"time": {
"start": 1772519200,
"finish": 1772519200.456789,
"duration": 0.456789016723633,
"processing": 0,
"date_start": "2026-03-03T09:26:40+01:00",
"date_finish": "2026-03-03T09:26:40+01:00",
"operating_reset_at": 1772519800,
"operating": 0
}
}#|
|| Name
type | Description ||
|| result
boolean | Returns true if the dialog was successfully removed from the list of recent chats ||
|| time
time | Information about the execution time of the request ||
|#
HTTP Status: 400
{
"error": "DIALOG_ID_EMPTY",
"error_description": "Dialog ID can't be empty"
}{% include notitle error handling %}
#|
|| Status | Code | Description | Value ||
|| 400 | DIALOG_ID_EMPTY | Dialog ID can't be empty | The DIALOG_ID parameter was not provided, was empty, or was in an incorrect format ||
|#
{% include system errors %}