{ "$schema": "http://json-schema.org/draft-07/schema#", "$ref": "#/definitions/TriggerActionSchemas", "definitions": { "TriggerActionSchemas": { "anyOf": [ { "type": "object", "properties": { "id": { "type": "string", "enum": ["openURL"] }, "params": { "type": "array", "items": { "type": "string" }, "description": "List of urls we should match against" }, "patterns": { "type": "array", "items": { "type": "string" }, "description": "List of Match pattern compatible strings to match against" } }, "required": ["id"], "additionalProperties": false, "description": "Happens every time the user loads a new URL that matches the provided `hosts` or `patterns`" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["openArticleURL"] }, "params": { "type": "array", "items": { "type": "string" }, "description": "List of urls we should match against" }, "patterns": { "type": "array", "items": { "type": "string" }, "description": "List of Match pattern compatible strings to match against" } }, "required": ["id"], "additionalProperties": false, "description": "Happens every time the user loads a document that is Reader Mode compatible" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["openBookmarkedURL"] } }, "required": ["id"], "additionalProperties": false, "description": "Happens every time the user adds a bookmark from the URL bar star icon" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["frequentVisits"] }, "params": { "type": "array", "items": { "type": "string" }, "description": "List of urls we should match against" }, "patterns": { "type": "array", "items": { "type": "string" }, "description": "List of Match pattern compatible strings to match against" } }, "required": ["id"], "additionalProperties": false, "description": "Happens every time a user navigates (or switches tab to) to any of the `hosts` or `patterns` arguments but additionally provides information about the number of accesses to the matched domain." }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["newSavedLogin"] } }, "required": ["id"], "additionalProperties": false, "description": "Happens every time the user adds or updates a login" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["formAutofill"] } }, "required": ["id"], "additionalProperties": false, "description": "Happens when the user saves, updates, or uses a credit card or address for form autofill" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["contentBlocking"] }, "params": { "type": "array", "items": { "type": ["string", "integer"], "description": "Events that should trigger this message. String values correspond to ContentBlockingMilestone events and number values correspond to STATE_BLOCKED_* flags on nsIWebProgressListener." } } }, "required": ["id", "params"], "additionalProperties": false, "description": "Happens every time Firefox blocks the loading of a page script/asset/resource that matches the one of the tracking behaviours specifid through params. See https://searchfox.org/mozilla-central/rev/8ccea36c4fb09412609fb738c722830d7098602b/uriloader/base/nsIWebProgressListener.idl#336" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["defaultBrowserCheck"] }, "context": { "type": "object", "properties": { "source": { "type": "string", "enum": ["newtab"], "description": "When the source of the trigger is home/newtab" }, "willShowDefaultPrompt": { "type": "boolean", "description": "When the source of the trigger is startup" } }, "additionalProperties": false } }, "additionalProperties": false, "required": ["id"], "description": "Happens when starting the browser or navigating to about:home/newtab" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["captivePortalLogin"] } }, "additionalProperties": false, "required": ["id"], "description": "Happens when the user successfully goes through a captive portal authentication flow." }, { "description": "Notify when a preference is added, removed or modified", "type": "object", "properties": { "id": { "type": "string", "enum": ["preferenceObserver"] }, "params": { "type": "array", "items": { "type": "string", "description": "Preference names to observe." } } }, "additionalProperties": false, "required": ["id", "params"] }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["featureCalloutCheck"] } }, "additionalProperties": false, "required": ["id"], "description": "Used to display Feature Callouts in Firefox View. Can only be used for Feature Callouts." }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["pdfJsFeatureCalloutCheck"] } }, "additionalProperties": false, "required": ["id"], "description": "Used to display Feature Callouts on PDF.js pages. Can only be used for Feature Callouts." }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["nthTabClosed"] } }, "additionalProperties": false, "required": ["id"], "description": "Happens when the user closes n or more tabs in a session" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["activityAfterIdle"] } }, "additionalProperties": false, "required": ["id"], "description": "Happens when the user resumes activity after n milliseconds of inactivity (keyboard/mouse interactions and audio playback all count as activity)" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["cookieBannerDetected"] } }, "additionalProperties": false, "required": ["id"], "description": "Happens when Firefox detects a cookie consent banner that could otherwise be handled by Cookie Banner Handling" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["cookieBannerHandled"] } }, "additionalProperties": false, "required": ["id"], "description": "Happens when Firefox automatically engages with a cookie consent banner" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["messagesLoaded"] } }, "additionalProperties": false, "required": ["id"], "description": "Happens as soon as a message is loaded" }, { "type": "object", "properties": { "id": { "type": "string", "enum": ["pageActionInUrlbar"] } }, "additionalProperties": false, "required": ["id"], "description": "Happens when a page action appears in the urlbar. The specific page action(s) to watch can be specified by id in the targeting expression." } ] } } }