GramJS

⚠️ This project is archived and no longer maintained. Development continues in teleproto, an actively maintained fork. It's largely compatible with GramJS for most projects, migration means little more than swapping the package:
npm install teleproto
See the migration guide for details.

messages.SetHistoryTTL

Set maximum Time-To-Live of all messages in the specified chat

Example

const { Api, TelegramClient } = require("telegram");
const { StringSession } = require("telegram/sessions");

const session = new StringSession(""); // You should put your string session here
const client = new TelegramClient(session, apiId, apiHash, {});

(async function run() {
  await client.connect(); // This assumes you have already authenticated with .start()

  const result = await client.invoke(
    new Api.messages.SetHistoryTTL({
      peer: "username",
      period: 43,
    })
  );
  console.log(result); // prints the result
})();
import { Api, TelegramClient } from "telegram";
import { StringSession } from "telegram/sessions";

const session = new StringSession(""); // You should put your string session here
const client = new TelegramClient(session, apiId, apiHash, {});

(async function run() {
  await client.connect(); // This assumes you have already authenticated with .start()

  const result: Api.Updates = await client.invoke(
    new Api.messages.SetHistoryTTL({
      peer: "username",
      period: 43,
    })
  );
  console.log(result); // prints the result
})();

Parameters

NameTypeDescription
peerInputPeerThe dialog
periodintAutomatically delete all messages sent in the chat after this many seconds

Result

Updates

Possible errors

CodeTypeDescription
400CHAT_NOT_MODIFIEDThe pinned message wasn't modified.
400TTL_PERIOD_INVALIDThe specified TTL period is invalid.

Can bots use this method?

No