history.addUrl()

Adds a record to the browser's history of a visit to the given URL. The visit's time is recorded as the time of the call, and the TransitionType is recorded as "link".

This is an asynchronous function that returns a Promise.

Syntax

let addingUrl = browser.history.addUrl(
  details         // object
)

Parameters

details

object. Object containing the URL to add.

url

string. The URL to add.

titleOptional

string: The title of the page. If this is not supplied, the title will be recorded as null.

transitionOptional

history.TransitionType. Describes how the browser navigated to the page on this occasion. If this is not supplied, a transition type of "link" will be recorded.

visitTimeOptional

number or string or object. A value indicating a date and time. This can be represented as: a Date object, an ISO 8601 date string, or the number of milliseconds since the epoch. Sets the visit time to this value. If this is not supplied, the current time will be recorded.

Return value

A Promise will be fulfilled with no parameters when the item has been added.

Browser compatibility

BCD tables only load in the browser

Examples

Add a record of a visit to "https://example.org/", then check that the new visit was recorded by searching history for the most recent item and logging it:

function onGot(results) {
  if (results.length) {
    console.log(results[0].url);
    console.log(new Date(results[0].lastVisitTime));
  }
}

function onAdded() {
  let searching = browser.history.search({
    text: "https://example.org/",
    startTime: 0,
    maxResults: 1
  });
  searching.then(onGot);
}

let addingUrl = browser.history.addUrl({url: "https://example.org/"});
addingUrl.then(onAdded);

Add a record of a visit to "https://example.org", but give it a visitTime 24 hours in the past, and a transition of "typed":

const DAY = 24 * 60* 60 * 1000;

function oneDayAgo() {
  return Date.now() - DAY;
}

function onGot(visits) {
  for (visit of visits) {
    console.log(new Date(visit.visitTime));
    console.log(visit.transition);
  }
}

function onAdded() {
  let gettingVisits = browser.history.getVisits({
    url: "https://example.org/"
  });

  gettingVisits.then(onGot);
}

let addingUrl = browser.history.addUrl({
  url: "https://example.org/",
  visitTime: oneDayAgo(),
  transition: "typed"
});

addingUrl.then(onAdded);

Note: This API is based on Chromium's chrome.history API. This documentation is derived from history.json in the Chromium code.

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.