chrome.history

refresh date: 2026-09-25 robots: noindex

ब्यौरा

ब्राउज़र में विज़िट किए गए पेजों के रिकॉर्ड से इंटरैक्ट करने के लिए, chrome.history एपीआई का इस्तेमाल करें. ब्राउज़र के इतिहास में यूआरएल जोड़े जा सकते हैं, हटाए जा सकते हैं, और क्वेरी की जा सकती है. इतिहास वाले पेज को अपने वर्शन से बदलने के लिए, पेज बदलना देखें.

अनुमतियां

history

मेनिफ़ेस्ट

इतिहास एपीआई का इस्तेमाल करने के लिए, आपको एक्सटेंशन मेनिफ़ेस्ट में "इतिहास" की अनुमति का एलान करना होगा. उदाहरण के लिए:

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

ट्रांज़िशन के टाइप

History API, ट्रांज़िशन के टाइप का इस्तेमाल करके यह बताता है कि ब्राउज़र ने किसी खास विज़िट के दौरान, किसी खास यूआरएल पर कैसे नेविगेट किया. उदाहरण के लिए, अगर कोई उपयोगकर्ता किसी दूसरे पेज पर मौजूद लिंक पर क्लिक करके किसी पेज पर जाता है, तो ट्रांज़िशन टाइप "लिंक" होगा.

यहां दी गई टेबल में, हर ट्रांज़िशन टाइप के बारे में बताया गया है.

ट्रांज़िशन का टाइपब्यौरा
"टाइप किया गया"उपयोगकर्ता को यह पेज, पता बार में यूआरएल टाइप करने पर मिला. इसका इस्तेमाल, नेविगेशन से जुड़ी अन्य कार्रवाइयों के लिए भी किया जाता है. जनरेट किया गया भी देखें. इसका इस्तेमाल उन मामलों में किया जाता है जहां उपयोगकर्ता ने ऐसा विकल्प चुना जो यूआरएल जैसा नहीं दिखता.
"auto_bookmark"उपयोगकर्ता, यूज़र इंटरफ़ेस (यूआई) में दिए गए किसी सुझाव की मदद से इस पेज पर पहुंचा हो. उदाहरण के लिए, मेन्यू आइटम की मदद से.
"auto_subframe"सबफ़्रेम नेविगेशन. यह ऐसा कॉन्टेंट होता है जो नॉन-टॉप-लेवल फ़्रेम में अपने-आप लोड होता है. उदाहरण के लिए, अगर किसी पेज पर विज्ञापनों वाले कई फ़्रेम हैं, तो उन विज्ञापन यूआरएल में इस तरह का ट्रांज़िशन होगा. ऐसा हो सकता है कि उपयोगकर्ता को यह भी न पता चले कि इन पेजों का कॉन्टेंट एक अलग फ़्रेम है. इसलिए, हो सकता है कि वह यूआरएल पर ध्यान न दे. manual_subframe भी देखें.
"manual_subframe"सबफ़्रेम नेविगेशन के लिए, जिनके लिए उपयोगकर्ता ने साफ़ तौर पर अनुरोध किया है और जो बैक/फ़ॉरवर्ड सूची में नई नेविगेशन एंट्री जनरेट करते हैं. साफ़ तौर पर अनुरोध किया गया फ़्रेम, अपने-आप लोड होने वाले फ़्रेम से ज़्यादा अहम हो सकता है. ऐसा इसलिए, क्योंकि उपयोगकर्ता को शायद इस बात की परवाह होती है कि अनुरोध किया गया फ़्रेम लोड हुआ है या नहीं.
"जनरेट किया गया"उपयोगकर्ता, पता बार में टाइप करके और ऐसी एंट्री चुनकर इस पेज पर पहुंचा जो यूआरएल जैसी नहीं दिखती थी. उदाहरण के लिए, किसी मैच में Google पर खोज नतीजों के पेज का यूआरएल हो सकता है. हालांकि, उपयोगकर्ता को यह "Google पर ... खोजें" के तौर पर दिख सकता है. ये टाइप किए गए नेविगेशन से काफ़ी अलग होते हैं, क्योंकि उपयोगकर्ता ने डेस्टिनेशन यूआरएल को टाइप नहीं किया या देखा नहीं. कीवर्ड भी देखें.
"auto_toplevel"पेज को कमांड लाइन में बताया गया था या यह शुरुआती पेज है.
"form_submit"उपयोगकर्ता ने फ़ॉर्म में वैल्यू भरीं और उसे सबमिट किया. ध्यान दें कि कुछ मामलों में, फ़ॉर्म सबमिट करने पर इस तरह का ट्रांज़िशन नहीं होता. जैसे, जब कोई फ़ॉर्म, कॉन्टेंट सबमिट करने के लिए स्क्रिप्ट का इस्तेमाल करता है.
"फिर से लोड करें"उपयोगकर्ता ने पेज को फिर से लोड किया. इसके लिए, उसने 'फिर से लोड करें' बटन पर क्लिक किया या पता बार में Enter दबाया. सेशन को वापस लाने और बंद किए गए टैब को फिर से खोलने के लिए भी, इस ट्रांज़िशन टाइप का इस्तेमाल किया जाता है.
"कीवर्ड"यूआरएल को, डिफ़ॉल्ट सर्च इंजन की सुविधा देने वाली कंपनी के अलावा, किसी ऐसे कीवर्ड से जनरेट किया गया था जिसे बदला जा सकता है. keyword_generated भी देखें.
"keyword_generated"किसी कीवर्ड के लिए जनरेट की गई विज़िट से मेल खाता है. कीवर्ड भी देखें.

उदाहरण

इस एपीआई को आज़माने के लिए, chrome-extension-samples रिपॉज़िटरी से history API का उदाहरण इंस्टॉल करें.

टाइप

HistoryItem

इतिहास की क्वेरी के एक नतीजे को एनकैप्सुलेट करने वाला ऑब्जेक्ट.

प्रॉपर्टी

  • आईडी

    स्ट्रिंग

    आइटम के लिए यूनीक आइडेंटिफ़ायर.

  • lastVisitTime

    number ज़रूरी नहीं

    इस पेज को पिछली बार कब लोड किया गया था. इसे Epoch के बाद से मिलीसेकंड में दिखाया जाता है.

  • title

    string ज़रूरी नहीं

    पेज को पिछली बार लोड किए जाने के समय उसका टाइटल.

  • typedCount

    number ज़रूरी नहीं

    उपयोगकर्ता ने पता टाइप करके, इस पेज पर कितनी बार नेविगेट किया है.

  • url

    string ज़रूरी नहीं

    वह यूआरएल जिस पर उपयोगकर्ता ने नेविगेट किया.

  • visitCount

    number ज़रूरी नहीं

    उपयोगकर्ता ने इस पेज पर कितनी बार नेविगेट किया है.

TransitionType

Chrome 44 या इसके बाद का वर्शन

रेफ़रर से इस विज़िट के लिए, ट्रांज़िशन टाइप.

Enum

"लिंक"
उपयोगकर्ता किसी दूसरे पेज पर मौजूद लिंक पर क्लिक करके इस पेज पर पहुंचा.

"typed"
उपयोगकर्ता, पता बार में यूआरएल टाइप करके इस पेज पर पहुंचा. इसका इस्तेमाल, नेविगेशन से जुड़ी अन्य कार्रवाइयों के लिए भी किया जाता है.

"auto_bookmark"
उपयोगकर्ता, यूज़र इंटरफ़ेस (यूआई) में दिए गए सुझाव की मदद से इस पेज पर पहुंचा है. उदाहरण के लिए, मेन्यू आइटम की मदद से.

"auto_subframe"
उपयोगकर्ता इस पेज पर सबफ़्रेम नेविगेशन की मदद से पहुंचा है. उसने इस नेविगेशन का अनुरोध नहीं किया था. जैसे, पिछले पेज पर किसी फ़्रेम में लोड होने वाले विज्ञापन की मदद से. इनसे, बैक और फ़ॉरवर्ड मेन्यू में हमेशा नई नेविगेशन एंट्री जनरेट नहीं होती हैं.

"manual_subframe"
उपयोगकर्ता, सबफ़्रेम में मौजूद किसी विकल्प को चुनकर इस पेज पर पहुंचा है.

"generated"
उपयोगकर्ता ने पता बार में टाइप करके और ऐसी एंट्री चुनकर इस पेज को ऐक्सेस किया जो यूआरएल जैसी नहीं दिखती थी. जैसे, Google Search से जुड़ा सुझाव. उदाहरण के लिए, हो सकता है कि किसी मैच में Google पर खोज नतीजों के पेज का यूआरएल हो, लेकिन उपयोगकर्ता को वह "Google पर ... खोजें" के तौर पर दिखे. ये टाइप किए गए नेविगेशन से अलग होते हैं, क्योंकि उपयोगकर्ता ने डेस्टिनेशन यूआरएल को टाइप नहीं किया या देखा नहीं. ये कीवर्ड नेविगेशन से भी जुड़े होते हैं.

"auto_toplevel"
पेज को कमांड लाइन में बताया गया था या यह शुरुआती पेज है.

"form_submit"
उपयोगकर्ता, फ़ॉर्म में वैल्यू भरकर और फ़ॉर्म सबमिट करके इस पेज पर पहुंचा. सभी फ़ॉर्म सबमिशन के लिए, इस ट्रांज़िशन टाइप का इस्तेमाल नहीं किया जाता.

"reload"
उपयोगकर्ता ने पेज को फिर से लोड किया. इसके लिए, उसने 'फिर से लोड करें' बटन पर क्लिक किया या पता बार में Enter दबाया. सेशन को वापस लाने और बंद किए गए टैब को फिर से खोलने के लिए भी इस ट्रांज़िशन टाइप का इस्तेमाल किया जाता है.

"keyword"
इस पेज का यूआरएल, डिफ़ॉल्ट सर्च इंजन की सुविधा देने वाली कंपनी के अलावा, किसी अन्य कंपनी के बदले जा सकने वाले कीवर्ड से जनरेट किया गया था.

"keyword_generated"
यह किसी कीवर्ड के लिए जनरेट की गई विज़िट से जुड़ा है.

UrlDetails

Chrome 88 या इसके बाद का वर्शन

प्रॉपर्टी

  • url

    स्ट्रिंग

    कार्रवाई के लिए यूआरएल. यह उसी फ़ॉर्मैट में होना चाहिए जो history.search() को कॉल करने पर मिलता है.

VisitItem

किसी यूआरएल पर एक विज़िट को एनकैप्सुलेट करने वाला ऑब्जेक्ट.

प्रॉपर्टी

  • आईडी

    स्ट्रिंग

    इससे जुड़े history.HistoryItem के लिए यूनीक आइडेंटिफ़ायर.

  • isLocal

    बूलियन

    Chrome 115+

    अगर विज़िट इस डिवाइस से शुरू हुई है, तो True. अगर इसे किसी दूसरे डिवाइस से सिंक किया गया है, तो False.

  • referringVisitId

    स्ट्रिंग

    रेफ़रर का विज़िट आईडी.

  • ट्रांज़िशन

    रेफ़रर से इस विज़िट के लिए, ट्रांज़िशन टाइप.

  • visitId

    स्ट्रिंग

    इस विज़िट के लिए यूनीक आइडेंटिफ़ायर.

  • visitTime

    number ज़रूरी नहीं

    यह विज़िट कब हुई, इसे epoch के बाद से मिलीसेकंड में दिखाया जाता है.

तरीके

addUrl()

वादा
chrome.history.addUrl(
  details: UrlDetails,
  callback?: function,
)
: Promise<void>

यह "लिंक" के ट्रांज़िशन टाइप के साथ, मौजूदा समय में इतिहास में एक यूआरएल जोड़ता है.

पैरामीटर

  • विवरण
  • कॉलबैक

    function ज़रूरी नहीं

    callback पैरामीटर कुछ ऐसा दिखता है:

    () => void

रिटर्न

  • वादा<शून्य>

    Chrome 96+

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

deleteAll()

वादा
chrome.history.deleteAll(
  callback?: function,
)
: Promise<void>

इस निर्देश से इतिहास में मौजूद सभी आइटम मिट जाते हैं.

पैरामीटर

  • कॉलबैक

    function ज़रूरी नहीं

    callback पैरामीटर कुछ ऐसा दिखता है:

    () => void

रिटर्न

  • वादा<शून्य>

    Chrome 96+

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

deleteRange()

वादा
chrome.history.deleteRange(
  range: object,
  callback?: function,
)
: Promise<void>

यह इतिहास से, तय की गई तारीख की सीमा के सभी आइटम हटा देता है. पेजों को इतिहास से तब तक नहीं हटाया जाएगा, जब तक कि सभी विज़िट, चुनी गई समयावधि के अंदर न हों.

पैरामीटर

  • सीमा

    ऑब्जेक्ट

    • endTime

      संख्या

      इस तारीख से पहले इतिहास में जोड़े गए आइटम. इन्हें Epoch के बाद से मिलीसेकंड में दिखाया जाता है.

    • startTime

      संख्या

      इस तारीख के बाद इतिहास में जोड़े गए आइटम. इन्हें Epoch के बाद से मिलीसेकंड में दिखाया जाता है.

  • कॉलबैक

    function ज़रूरी नहीं

    callback पैरामीटर कुछ ऐसा दिखता है:

    () => void

रिटर्न

  • वादा<शून्य>

    Chrome 96+

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

deleteUrl()

वादा
chrome.history.deleteUrl(
  details: UrlDetails,
  callback?: function,
)
: Promise<void>

इतिहास से दिए गए यूआरएल के सभी इंस्टेंस हटाता है.

पैरामीटर

  • विवरण
  • कॉलबैक

    function ज़रूरी नहीं

    callback पैरामीटर कुछ ऐसा दिखता है:

    () => void

रिटर्न

  • वादा<शून्य>

    Chrome 96+

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

getVisits()

वादा
chrome.history.getVisits(
  details: UrlDetails,
  callback?: function,
)
: Promise<VisitItem[]>

यह किसी यूआरएल पर की गई विज़िट की जानकारी हासिल करता है.

पैरामीटर

  • विवरण
  • कॉलबैक

    function ज़रूरी नहीं

    callback पैरामीटर कुछ ऐसा दिखता है:

    (results: VisitItem[]) => void

रिटर्न

  • <VisitItem[]> प्रॉमिस करें

    Chrome 96+

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

वादा
chrome.history.search(
  query: object,
  callback?: function,
)
: Promise<HistoryItem[]>

क्वेरी से मैच करने वाले हर पेज पर पिछली बार विज़िट किए जाने का समय जानने के लिए, इतिहास खोजता है.

पैरामीटर

  • क्वेरी

    ऑब्जेक्ट

    • endTime

      number ज़रूरी नहीं

      नतीजों को इस तारीख से पहले विज़िट किए गए पेजों तक सीमित करें. इसे epoch के बाद से मिलीसेकंड में दिखाया जाता है.

    • maxResults

      number ज़रूरी नहीं

      ज़्यादा से ज़्यादा कितने नतीजे दिखाए जाएं. डिफ़ॉल्ट वैल्यू 100 होती है.

    • startTime

      number ज़रूरी नहीं

      नतीजों को इस तारीख के बाद विज़िट किए गए पेजों तक सीमित करें. इसे epoch के बाद से मिलीसेकंड में दिखाया जाता है. अगर प्रॉपर्टी की वैल्यू नहीं दी जाती है, तो डिफ़ॉल्ट रूप से 24 घंटे की वैल्यू सेट हो जाएगी.

    • टेक्स्ट

      स्ट्रिंग

      इतिहास की सेवा के लिए फ़्री-टेक्स्ट क्वेरी. सभी पेज वापस पाने के लिए, इसे खाली छोड़ दें.

  • कॉलबैक

    function ज़रूरी नहीं

    callback पैरामीटर कुछ ऐसा दिखता है:

    (results: HistoryItem[]) => void

रिटर्न

  • वादा<HistoryItem[]>

    Chrome 96+

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

इवेंट

onVisited

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

यह इवेंट तब ट्रिगर होता है, जब किसी यूआरएल पर विज़िट किया जाता है. इससे उस यूआरएल के लिए HistoryItem डेटा मिलता है. यह इवेंट, पेज लोड होने से पहले ट्रिगर होता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर कुछ ऐसा दिखता है:

    (result: HistoryItem) => void

onVisitRemoved

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

इतिहास से एक या उससे ज़्यादा यूआरएल हटाए जाने पर ट्रिगर होता है. सभी विज़िट हटा दिए जाने के बाद, यूआरएल को इतिहास से मिटा दिया जाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर कुछ ऐसा दिखता है:

    (removed: object) => void

    • निकाला गया

      ऑब्जेक्ट

      • allHistory

        बूलियन

        अगर पूरा इतिहास हटा दिया गया है, तो True. अगर यह वैल्यू 'सही है' पर सेट है, तो यूआरएल खाली रहेंगे.

      • यूआरएल

        string[] ज़रूरी नहीं