GramJS

messages.GetDocumentByHash

Get a document by its SHA256 hash, mainly used for gifs

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.GetDocumentByHash({
      sha256: Buffer.from("arbitrary data here"),
      size: BigInt("-4156887774564"),
      mimeType: "some string here",
    })
  );
  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.Document = await client.invoke(
    new Api.messages.GetDocumentByHash({
      sha256: Buffer.from("arbitrary data here"),
      size: BigInt("-4156887774564"),
      mimeType: "some string here",
    })
  );
  console.log(result); // prints the result
})();

Parameters

NameTypeDescription
sha256bytesSHA256 of file
sizeintSize of the file in bytes
mimeTypestringMime type

Result

Document

Possible errors

CodeTypeDescription
400SHA256_HASH_INVALIDThe provided SHA256 hash is invalid.

Can bots use this method?

Yes