AppNavi Firefox Extension

Starting with Release 3.5.0, the AppNavi Firefox Extension supports the Discovery feature. This enables organizations using Mozilla Firefox to take advantage of AppNavi Discovery while providing a consistent experience across supported browsers.

Getting Started

Your AppNavi administrator will provide the build Firefox extension source package (.zip). This package contains the extension resources which required to generate a signed Firefox extension.

Before the extension can be installed, Mozilla requires it to be digitally signed.

This guide explains how to:

  • Install Mozilla's web-ext tool.
  • Create Mozilla API credentials.
  • Sign the AppNavi Firefox extension.
  • Install the signed extension.
  • Deploy the signed extension across your organization.
📘

Note

Firefox only allows digitally signed extensions to be installed in standard Firefox releases. The original .zip package cannot be installed directly.


Signing the Firefox Extension

Before the AppNavi Firefox Extension can be installed, it must be digitally signed using Mozilla's official signing service.

Prerequisites

Before you begin, ensure you have:

  • Node.js and npm installed
  • A Mozilla Add-ons (AMO) Developer account
  • Mozilla API credentials (JWT Issuer and JWT Secret)
  • The AppNavi Firefox extension source package provided by your administrator

Step 1 – Install web-ext

Install Mozilla's official extension tool:

npm install -g web-ext

Verify the installation:

web-ext --version

Step 2 – Create Mozilla API Credentials

  1. Sign in to your Mozilla Add-ons Developer account.

  2. Open the Developer Hub.

  3. Navigate to API Keys.

  4. Create a new API key.

  5. Save the following values:

    • JWT Issuer (API Key)
    • JWT Secret

These credentials are required to sign the extension.


Step 3 – Extract the Extension Package

Extract the .zip package provided by the AppNavi administrator.

The extracted folder should contain the extension source files, including the manifest.json file.

Example:

appnavi-firefox-extension/
├── manifest.json
├── lib
├── css/
├── images/
└── ...

Open a terminal or command prompt in this directory.


Step 4 – Sign the Extension

Run the following command from the extension directory:

web-ext sign \
  --channel unlisted \
  --api-key YOUR_API_KEY \
  --api-secret YOUR_API_SECRET

Replace:

  • YOUR_API_KEY with your Mozilla JWT Issuer
  • YOUR_API_SECRET with your Mozilla JWT Secret

When the signing process completes successfully, a signed .xpi file will be generated inside:

web-ext-artifacts/

Example:

web-ext-artifacts/
└── appnavi-firefox-extension.xpi

The generated .xpi file is the Firefox extension that should be installed or deployed.

📘

Important

The AppNavi extension already contains a predefined Firefox extension ID (browser_specific_settings.gecko.id).

Do not modify or remove this value. Mozilla uses this ID to identify the extension and to publish future updates. Changing the extension ID will cause Firefox to treat the extension as a new add-on, preventing existing installations from receiving updates.


Organization-wide Deployment

The signed .xpi file can also be deployed across managed devices using Firefox Enterprise deployment methods

It includes:

  • Firefox Enterprise Policies (policies.json)

JSON Policy

For non-Windows environments, create or update the policies.json file:

Path (system-wide):

Windows C:\Program Files\Mozilla Firefox\distribution\policies.json

Example policies.json:

{
  "policies": {
    "3rdparty": {
      "Extensions": {
        "appnavi@gldjdbpbhhpcpimpiicmglaeeehegflh": {
          "DefaultTenant": "tenantid",
          "EnvironmentConfigurationEnabled": "true",
          "OrganizationalUnit": "org_unit"
        }
      }
    }
  }
}

Restart Firefox, and the extension installs automatically for all users.



Verifying the Installation

To verify that the extension has been installed successfully:

  • Confirm that the AppNavi extension appears in the Firefox toolbar.
  • Open a supported web application.
  • Verify that the Discovery functionality is available and operating as expected.

Troubleshooting

IssueResolution
JWT iat (issued at time) is invalidVerify that your system date, time, and time zone are correct, then retry the signing process.
UnauthorizedVerify that the Mozilla JWT Issuer and JWT Secret are correct.
Signing validation failedRun web-ext lint to validate the extension and resolve any reported issues before signing again.
Extension cannot be installedEnsure that you are installing the signed .xpi file rather than the original .zip package.

Notes

  • Firefox currently supports the Discovery feature only.
  • Additional AppNavi features may be supported in future releases.
  • The original .zip package provided by your administrator is intended only for signing and should not be installed directly in Firefox.
  • If you encounter issues during signing or installation, contact your IT administrator or AppNavi administrator for assistance.