chrome.history

refresh date: 2026-09-25 robots: noindex

বিবরণ

ব্রাউজারের ভিজিট করা পৃষ্ঠার রেকর্ডের সাথে ইন্টার‍্যাক্ট করতে chrome.history API ব্যবহার করুন। আপনি ব্রাউজারের ইতিহাসে URL যোগ করতে, সরাতে এবং কোয়েরি করতে পারবেন। আপনার নিজস্ব ভার্সন দিয়ে ইতিহাস পৃষ্ঠা ওভাররাইড করতে, ওভাররাইড পৃষ্ঠা দেখুন।

অনুমতি

history

ম্যানিফেস্ট

ইতিহাস API ব্যবহার করতে আপনাকে অবশ্যই এক্সটেনশন ম্যানিফেস্টে "ইতিহাস" সংক্রান্ত অনুমতি ঘোষণা করতে হবে। যেমন:

{
  "name": "My extension",
  ...
  "permissions": [
    "history"
  ],
  ...
}

ট্রানজিশনের ধরন

কোনও নির্দিষ্ট ভিজিটে ব্রাউজার কীভাবে কোনও নির্দিষ্ট URL-এ নেভিগেট করেছে তা বর্ণনা করতে, ইতিহাস API ট্রানজিশনের প্রকার ব্যবহার করে। যেমন, কোনও ব্যবহারকারী অন্য পৃষ্ঠার লিঙ্কে ক্লিক করে কোনও পৃষ্ঠা দেখলে, ট্রানজিশনের ধরন হল "লিঙ্ক"।

নিম্নলিখিত সারণীতে প্রতিটি ট্রানজিশনের প্রকারের বর্ণনা দেওয়া হয়েছে।

স্থানান্তরের প্রকারবিবরণ
"টাইপ করা"ব্যবহারকারী অ্যাড্রেস বারে URL টাইপ করে এই পৃষ্ঠায় এসেছেন। এছাড়াও, অন্যান্য স্পষ্ট নেভিগেশন অ্যাকশনের জন্য ব্যবহার করা হয়। এছাড়াও, জেনারেট করা দেখুন, যা এমন ক্ষেত্রে ব্যবহার করা হয় যেখানে ব্যবহারকারী এমন একটি পছন্দ বেছে নিয়েছেন যা একেবারেই URL-এর মতো দেখায় না।
"auto_bookmark"ব্যবহারকারী UI-তে সাজেশন থেকে এই পৃষ্ঠায় এসেছেন—যেমন, মেনু আইটেমের মাধ্যমে।
"auto_subframe"সাবফ্রেম নেভিগেশন। এটি হল এমন যেকোনও কন্টেন্ট যা নন-টপ-লেভেল ফ্রেমে অটোমেটিক লোড হয়। যেমন, কোনও পৃষ্ঠায় বিজ্ঞাপন সহ একাধিক ফ্রেম থাকলে, সেইসব বিজ্ঞাপনের URL-এ এই ট্রানজিশনের প্রকার থাকে। ব্যবহারকারী হয়ত বুঝতেই পারবেন না যে এইসব পৃষ্ঠার কন্টেন্ট একটি আলাদা ফ্রেম, তাই তিনি URL-এর ব্যাপারে মাথা ঘামাবেন না (manual_subframe-ও দেখুন)।
"manual_subframe"সাবফ্রেম নেভিগেশনের জন্য যা ব্যবহারকারী স্পষ্টভাবে অনুরোধ করেছেন এবং ব্যাক/ফরওয়ার্ড তালিকায় নতুন নেভিগেশন এন্ট্রি তৈরি করে। অটোমেটিক লোড হওয়া ফ্রেমের চেয়ে স্পষ্টভাবে অনুরোধ করা ফ্রেম সম্ভবত বেশি গুরুত্বপূর্ণ, কারণ ব্যবহারকারী সম্ভবত অনুরোধ করা ফ্রেম লোড হওয়ার ব্যাপারে বেশি আগ্রহী।
"তৈরি করা হয়েছে"ব্যবহারকারী অ্যাড্রেস বারে টাইপ করে এবং URL-এর মতো দেখতে নয় এমন একটি এন্ট্রি বেছে নিয়ে এই পৃষ্ঠায় এসেছেন। যেমন, কোনও মিলে Google সার্চ ফলাফল পৃষ্ঠার URL থাকতে পারে, তবে এটি ব্যবহারকারীর কাছে "...-এর জন্য Google-এ সার্চ করুন" হিসেবে দেখা যেতে পারে। এগুলি টাইপ করা নেভিগেশনের মতো নয় কারণ ব্যবহারকারী গন্তব্য URL টাইপ করেননি বা দেখেননি। এছাড়াও কীওয়ার্ড দেখুন।
"auto_toplevel"পৃষ্ঠাটি কমান্ড লাইনে নির্দিষ্ট করা হয়েছে বা এটি শুরুর পৃষ্ঠা।
"form_submit"ব্যবহারকারী একটি ফর্মে ভ্যালু পূরণ করে জমা দিয়েছেন। মনে রাখবেন যে কিছু পরিস্থিতিতে—যেমন কোনও ফর্ম কন্টেন্ট জমা দেওয়ার জন্য স্ক্রিপ্ট ব্যবহার করলে—ফর্ম জমা দেওয়ার ফলে এই ট্রানজিশনের প্রকার হয় না।
"রিলোড করুন"ব্যবহারকারী রিলোড বোতামে ক্লিক করে অথবা অ্যাড্রেস বারে Enter প্রেস করে পৃষ্ঠাটি রিলোড করেছেন। সেশন রিস্টোর করা এবং বন্ধ করা ট্যাব আবার খোলার ক্ষেত্রেও এই ট্রানজিশনের প্রকার ব্যবহার করা হয়।
"কীওয়ার্ড"ডিফল্ট সার্চ পরিষেবা প্রদানকারী ছাড়া অন্য কোনও পরিবর্তনযোগ্য কীওয়ার্ড থেকে URL তৈরি করা হয়েছে। এছাড়াও keyword_generated দেখুন।
"keyword_generated"কোনও কীওয়ার্ডের জন্য জেনারেট করা ভিজিটের সাথে সম্পর্কিত। এছাড়াও কীওয়ার্ড দেখুন।

উদাহরণ

এই API ব্যবহার করে দেখতে, chrome-extension-samples রিপোজিটরি থেকে history API-এর উদাহরণ ইনস্টল করুন।

ধরন

HistoryItem

ইতিহাস কোয়েরির একটি ফলাফল এনক্যাপসুলেট করা অবজেক্ট।

প্রপার্টি

  • id

    স্ট্রিং

    আইটেমের জন্য অনন্য শনাক্তকারী।

  • lastVisitTime

    নম্বর ঐচ্ছিক

    এই পৃষ্ঠাটি শেষবার কখন লোড করা হয়েছিল, তা যুগ থেকে মিলিসেকেন্ডে দেখানো হয়েছে।

  • শীর্ষক

    স্ট্রিং ঐচ্ছিক

    শেষবার লোড হওয়ার সময় পৃষ্ঠার শীর্ষক।

  • typedCount

    নম্বর ঐচ্ছিক

    ব্যবহারকারী কতবার অ্যাড্রেস টাইপ করে এই পৃষ্ঠায় নেভিগেট করেছেন।

  • URL

    স্ট্রিং ঐচ্ছিক

    ব্যবহারকারী যে URL-এ নেভিগেট করেছেন।

  • visitCount

    নম্বর ঐচ্ছিক

    ব্যবহারকারী যতবার এই পৃষ্ঠায় নেভিগেট করেছেন।

TransitionType

Chrome 44+

এই ভিজিটের জন্য রেফারার থেকে ট্রানজিশনের ধরন।

Enum

"লিঙ্ক"
ব্যবহারকারী অন্য পৃষ্ঠার লিঙ্কে ক্লিক করে এই পৃষ্ঠায় এসেছেন।

"টাইপ করা"
ব্যবহারকারী অ্যাড্রেস বারে URL টাইপ করে এই পৃষ্ঠায় এসেছেন। এছাড়াও, এটি অন্যান্য স্পষ্ট নেভিগেশন অ্যাকশনের জন্য ব্যবহার করা হয়।

"auto_bookmark"
ব্যবহারকারী UI-তে দেখানো সাজেশন থেকে এই পৃষ্ঠায় এসেছেন, যেমন, মেনু আইটেমের মাধ্যমে।

"auto_subframe"
ব্যবহারকারী সাবফ্রেম নেভিগেশনের মাধ্যমে এই পৃষ্ঠায় এসেছেন, যার জন্য তিনি অনুরোধ করেননি, যেমন আগের পৃষ্ঠার ফ্রেমে লোড হওয়া বিজ্ঞাপনের মাধ্যমে। এগুলি সবসময় 'পিছনে যান' ও 'সামনে যান' মেনুতে নতুন নেভিগেশন এন্ট্রি তৈরি করে না।

"manual_subframe"
ব্যবহারকারী সাবফ্রেমের কোনও কিছু বেছে নিয়ে এই পৃষ্ঠায় এসেছেন।

"জেনারেট করা"
ব্যবহারকারী অ্যাড্রেস বারে টাইপ করে এবং URL-এর মতো দেখতে নয় এমন একটি এন্ট্রি বেছে নিয়ে এই পৃষ্ঠায় এসেছেন, যেমন Google Search সাজেশন। যেমন, কোনও মিলে Google Search ফলাফল পৃষ্ঠার URL থাকতে পারে, কিন্তু ব্যবহারকারীকে "...-এর জন্য Google-এ সার্চ করুন" হিসেবে দেখানো হতে পারে। এগুলি টাইপ করা নেভিগেশনের থেকে আলাদা কারণ ব্যবহারকারী গন্তব্য URL টাইপ করেননি বা দেখেননি। এগুলি কীওয়ার্ড নেভিগেশনের সাথেও সম্পর্কিত।

"auto_toplevel"
পৃষ্ঠাটি কমান্ড লাইনে নির্দিষ্ট করা হয়েছে বা এটি শুরুর পৃষ্ঠা।

"form_submit"
ব্যবহারকারী একটি ফর্মে ভ্যালু পূরণ করে এবং ফর্মটি জমা দিয়ে এই পৃষ্ঠায় এসেছেন। সব ফর্ম জমা দেওয়ার ক্ষেত্রে এই ট্রানজিশনের ধরন ব্যবহার করা হয় না।

"রিলোড"
ব্যবহারকারী রিলোড বোতামে ক্লিক করে অথবা অ্যাড্রেস বারে Enter প্রেস করে পৃষ্ঠাটি রিলোড করেছেন। সেশন ফিরিয়ে আনা এবং বন্ধ করা ট্যাব আবার খোলার ক্ষেত্রেও এই ট্রানজিশনের ধরন ব্যবহার করা হয়।

"কীওয়ার্ড"
এই পৃষ্ঠার URL ডিফল্ট সার্চ পরিষেবা প্রদানকারী ছাড়া অন্য কোনও পরিবর্তনযোগ্য কীওয়ার্ড থেকে তৈরি করা হয়েছে।

"keyword_generated"
কোনও কীওয়ার্ডের জন্য তৈরি হওয়া ভিজিটের সাথে সম্পর্কিত।

UrlDetails

Chrome 88+

প্রপার্টি

  • URL

    স্ট্রিং

    অপারেশনের জন্য URL। history.search()-এ কল করার পরে যে ফর্ম্যাটে উত্তর পাওয়া যায়, এটি সেই ফর্ম্যাটে হতে হবে।

VisitItem

একটি URL-এ একটি ভিজিট এনক্যাপসুলেট করা অবজেক্ট।

প্রপার্টি

  • id

    স্ট্রিং

    সংশ্লিষ্ট history.HistoryItem-এর অনন্য শনাক্তকারী।

  • isLocal

    বুলিয়ান

    Chrome 115+

    এই ডিভাইস থেকে ভিজিট শুরু হলে ট্রু। অন্য ডিভাইস থেকে সিঙ্ক করা হলে, সেটি 'ফল্স' বলে গণ্য করা হবে।

  • referringVisitId

    স্ট্রিং

    রেফারারের ভিজিট আইডি।

  • ট্রানজিশন

    এই ভিজিটের জন্য রেফারার থেকে ট্রানজিশনের ধরন।

  • visitId

    স্ট্রিং

    এই ভিজিটের জন্য অনন্য শনাক্তকারী।

  • visitTime

    নম্বর ঐচ্ছিক

    এই ভিজিট কখন হয়েছে, যা যুগ থেকে মিলিসেকেন্ডে দেখানো হয়েছে।

পদ্ধতি

addUrl()

প্রতিশ্রুতি
chrome.history.addUrl(
  details: UrlDetails,
  callback?: function,
)
: Promise<void>

"লিঙ্ক" ট্রানজিশন টাইপ সহ বর্তমান সময়ে ইতিহাসে একটি URL যোগ করে।

প্যারামিটারগুলি

  • বিস্তারিত বিবরণ
  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    () => void

রিটার্ন

  • <void> প্রমিস

    Chrome 96+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

deleteAll()

প্রতিশ্রুতি
chrome.history.deleteAll(
  callback?: function,
)
: Promise<void>

ইতিহাস থেকে সব আইটেম মুছে দেয়।

প্যারামিটারগুলি

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    () => void

রিটার্ন

  • <void> প্রমিস

    Chrome 96+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

deleteRange()

প্রতিশ্রুতি
chrome.history.deleteRange(
  range: object,
  callback?: function,
)
: Promise<void>

ইতিহাস থেকে নির্দিষ্ট তারিখের রেঞ্জের মধ্যে থাকা সব আইটেম সরিয়ে দেয়। সব ভিজিট রেঞ্জের মধ্যে না পড়লে ইতিহাস থেকে পৃষ্ঠা সরানো হবে না।

প্যারামিটারগুলি

  • রেঞ্জ

    অবজেক্ট

    • endTime

      নম্বর

      এই তারিখের আগে ইতিহাসে যোগ করা আইটেম, যা যুগ থেকে মিলিসেকেন্ডে দেখানো হয়েছে।

    • startTime

      নম্বর

      এই তারিখের পরে ইতিহাসে যোগ করা আইটেম, যুগ থেকে মিলিসেকেন্ডে দেখানো হয়েছে।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    () => void

রিটার্ন

  • <void> প্রমিস

    Chrome 96+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

deleteUrl()

প্রতিশ্রুতি
chrome.history.deleteUrl(
  details: UrlDetails,
  callback?: function,
)
: Promise<void>

ইতিহাস থেকে প্রদত্ত URL-এর সব ঘটনা সরিয়ে দেয়।

প্যারামিটারগুলি

  • বিস্তারিত বিবরণ
  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    () => void

রিটার্ন

  • <void> প্রমিস

    Chrome 96+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

getVisits()

প্রতিশ্রুতি
chrome.history.getVisits(
  details: UrlDetails,
  callback?: function,
)
: Promise<VisitItem[]>

কোনও URL-এ ভিজিট সংক্রান্ত তথ্য ফিরিয়ে আনে।

প্যারামিটারগুলি

  • বিস্তারিত বিবরণ
  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (results: VisitItem[]) => void

রিটার্ন

  • <VisitItem[]>প্রতিশ্রুতি

    Chrome 96+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

প্রতিশ্রুতি
chrome.history.search(
  query: object,
  callback?: function,
)
: Promise<HistoryItem[]>

কোয়েরির সাথে ম্যাচ করে এমন প্রতিটি পৃষ্ঠার শেষবার ভিজিট করার সময় হিস্ট্রিতে সার্চ করে।

প্যারামিটারগুলি

  • কোয়েরি

    অবজেক্ট

    • endTime

      নম্বর ঐচ্ছিক

      এই তারিখের আগে ভিজিট করা হয়েছে এমন ফলাফলে সীমাবদ্ধ করুন, যা যুগ থেকে মিলিসেকেন্ডে দেখানো হয়েছে।

    • maxResults

      নম্বর ঐচ্ছিক

      যতগুলি ফলাফল রিট্রিভ করা যাবে। ডিফল্ট হিসেবে ১০০ সেট করা থাকে।

    • startTime

      নম্বর ঐচ্ছিক

      এই তারিখের পরে যারা ভিজিট করেছেন তাদের মধ্যে ফলাফল সীমাবদ্ধ করুন, যা যুগ থেকে মিলিসেকেন্ডে দেখানো হয়েছে। প্রপার্টি উল্লেখ করা না থাকলে, ডিফল্ট হিসেবে ২৪ ঘণ্টা সেট করা হবে।

    • মেসেজ পাঠান

      স্ট্রিং

      ইতিহাস পরিষেবাতে একটি ফ্রি-টেক্সট কোয়েরি। সব পৃষ্ঠা ফিরিয়ে আনতে এটি খালি রাখুন।

  • কলব্যাক

    ফাংশন ঐচ্ছিক

    callback প্যারামিটারটি দেখতে এইরকম:

    (results: HistoryItem[]) => void

রিটার্ন

  • Promise<HistoryItem[]>

    Chrome 96+

    Manifest V3 এবং তার পরবর্তী ভার্সনের জন্য শুধু প্রমিস কাজ করে, অন্যান্য প্ল্যাটফর্মের ক্ষেত্রে কলব্যাক ব্যবহার করতে হবে।

ইভেন্ট

onVisited

chrome.history.onVisited.addListener(
  callback: function,
)

কোনও URL ভিজিট করা হলে, সেই URL-এর জন্য HistoryItem ডেটা প্রদান করে ফায়ার করা হয়। পৃষ্ঠা লোড হওয়ার আগে এই ইভেন্ট ফায়ার হয়।

প্যারামিটারগুলি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এইরকম:

    (result: HistoryItem) => void

onVisitRemoved

chrome.history.onVisitRemoved.addListener(
  callback: function,
)

ইতিহাস থেকে এক বা একাধিক URL সরানো হলে ফায়ার করা হয়। সব ভিজিট মুছে দেওয়া হলে, ইতিহাস থেকে URL মুছে যায়।

প্যারামিটারগুলি

  • কলব্যাক

    ফাংশন

    callback প্যারামিটারটি দেখতে এইরকম:

    (removed: object) => void

    • সরানো হয়েছে

      অবজেক্ট

      • allHistory

        বুলিয়ান

        সব ইতিহাস মুছে দেওয়া হলে ট্রু। সত্য হলে, URL খালি থাকবে।

      • URL

        string[] ঐচ্ছিক