// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. [ { "namespace": "history", "types": [ { "id": "HistoryItem", "type": "object", "description": "An object encapsulating one result of a history query.", "properties": { "id": {"type": "string", "minimum": 0, "description": "The unique identifier for the item."}, "url": {"type": "string", "optional": true, "description": "The URL navigated to by a user."}, "title": {"type": "string", "optional": true, "description": "The title of the page when it was last loaded."}, "lastVisitTime": {"type": "number", "optional": true, "description": "When this page was last loaded, represented in milliseconds since the epoch."}, "visitCount": {"type": "integer", "optional": true, "description": "The number of times the user has navigated to this page."}, "typedCount": {"type": "integer", "optional": true, "description": "The number of times the user has navigated to this page by typing in the address."} } }, { "id": "VisitItem", "type": "object", "description": "An object encapsulating one visit to a URL.", "properties": { "id": {"type": "string", "minimum": 0, "description": "The unique identifier for the item."}, "visitId": {"type": "string", "description": "The unique identifier for this visit."}, "visitTime": {"type": "number", "optional": true, "description": "When this visit occurred, represented in milliseconds since the epoch."}, "referringVisitId": {"type": "string", "description": "The visit ID of the referrer."}, "transition": { "type": "string", "enum": ["link", "typed", "auto_bookmark", "auto_subframe", "manual_subframe", "generated", "auto_toplevel", "form_submit", "reload", "keyword", "keyword_generated"], "description": "The transition type for this visit from its referrer." } } } ], "functions": [ { "name": "search", "type": "function", "description": "Searches the history for the last visit time of each page matching the query.", "parameters": [ { "name": "query", "type": "object", "properties": { "text": {"type": "string", "description": "A free-text query to the history service. Leave empty to retrieve all pages."}, "startTime": {"type": "number", "optional": true, "description": "Limit results to those visited after this date, represented in milliseconds since the epoch."}, "endTime": {"type": "number", "optional": true, "description": "Limit results to those visited before this date, represented in milliseconds since the epoch."}, "maxResults": {"type": "integer", "optional": true, "minimum": 0, "description": "The maximum number of results to retrieve. Defaults to 100."} } }, { "name": "callback", "type": "function", "parameters": [ { "name": "results", "type": "array", "items": { "$ref": "HistoryItem"} } ] } ] }, { "name": "getVisits", "type": "function", "description": "Retrieves information about visits to a URL.", "parameters": [ { "name": "details", "type": "object", "properties": { "url": {"type": "string", "description": "The URL for which to retrieve visit information. It must be in the format as returned from a call to history.search."} } }, { "name": "callback", "type": "function", "parameters": [ { "name": "results", "type": "array", "items": { "$ref": "VisitItem"} } ] } ] }, { "name": "addUrl", "type": "function", "description": "Adds a URL to the history at the current time with a transition type of \"link\".", "parameters": [ { "name": "details", "type": "object", "properties": { "url": {"type": "string", "description": "The URL to add."} } }, { "name": "callback", "type": "function", "optional": true, "parameters": [] } ] }, { "name": "deleteUrl", "type": "function", "description": "Removes all occurrences of the given URL from the history.", "parameters": [ { "name": "details", "type": "object", "properties": { "url": {"type": "string", "description": "The URL to remove."} } }, { "name": "callback", "type": "function", "optional": true, "parameters": [] } ] }, { "name": "deleteRange", "type": "function", "description": "Removes all items within the specified date range from the history. Pages will not be removed from the history unless all visits fall within the range.", "parameters": [ { "name": "range", "type": "object", "properties": { "startTime": { "type": "number", "description": "Items added to history after this date, represented in milliseconds since the epoch." }, "endTime": { "type": "number", "description": "Items added to history before this date, represented in milliseconds since the epoch." } } }, { "name": "callback", "type": "function", "parameters": [] } ] }, { "name": "deleteAll", "type": "function", "description": "Deletes all items from the history.", "parameters": [ { "name": "callback", "type": "function", "parameters": [] } ] } ], "events": [ { "name": "onVisited", "type": "function", "description": "Fired when a URL is visited, providing the HistoryItem data for that URL. This event fires before the page has loaded.", "parameters": [ { "name": "result", "$ref": "HistoryItem"} ] }, { "name": "onVisitRemoved", "type": "function", "description": "Fired when one or more URLs are removed from the history service. When all visits have been removed the URL is purged from history.", "parameters": [ { "name": "removed", "type": "object", "properties": { "allHistory": { "type": "boolean", "description": "True if all history was removed. If true, then urls will be empty." }, "urls": { "type": "array", "items": { "type": "string" }, "optional": true} } } ] } ] } ]