npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

insomnia-plugin-verint-token

v1.0.0

Published

Insomnia plugin that automatically generates Verint API authentication headers using HMAC-SHA256 signing algorithm. The plugin reads api_key_id and api_key from environment variables and creates the proper Authorization header for Verint API requests, eli

Readme

Verint Authentication Plugin for Insomnia

An Insomnia plugin that automatically generates Verint API authentication headers using HMAC-SHA256 signing algorithm. This plugin eliminates the need to manually generate authentication tokens for Verint API requests.

Features

  • 🔐 Automatic Authentication: Automatically generates and adds Authorization headers for Verint API requests
  • 🔑 HMAC-SHA256 Signing: Uses industry-standard HMAC-SHA256 algorithm for secure authentication
  • 🌍 Environment Variable Support: Reads credentials from Insomnia environment variables
  • Smart Detection: Only processes requests to Verint URLs
  • 📱 User Notifications: Provides success/error alerts for authentication status
  • 🔄 Variable Replacement: Supports Insomnia template variables in URLs and headers

Installation

Method 1: Manual Installation

  1. Clone or download this repository
  2. Copy the plugin folder to your Insomnia plugins directory:
    • macOS: ~/Library/Application Support/Insomnia/plugins/
    • Windows: %APPDATA%/Insomnia/plugins/
    • Linux: ~/.config/Insomnia/plugins/
  3. Restart Insomnia

Method 2: Development Installation

  1. Navigate to your Insomnia plugins directory
  2. Clone this repository:
    git clone https://github.com/samer-koda/insomnia-plugin-verint-authentication.git
  3. Install dependencies:
    cd insomnia-plugin-verint-authentication
    npm install
  4. Restart Insomnia

Configuration

Required Environment Variables

You need to set the following environment variables in your Insomnia environment:

  • api_key_id: Your Verint API Key ID
  • api_key: Your Verint API Key (base64url encoded)

Setting Environment Variables

  1. In Insomnia, go to Manage Environments (gear icon in the top left)
  2. Select your environment or create a new one
  3. Add the required variables:
    {
      "api_key_id": "your-api-key-id",
      "api_key": "your-base64url-encoded-api-key"
    }

Usage

Once installed and configured, the plugin works automatically:

  1. Make a Request: Create any HTTP request to a Verint API endpoint
  2. Automatic Detection: The plugin detects Verint URLs and automatically processes them
  3. Header Generation: The Authorization header is automatically generated and added
  4. Notifications: Success or error notifications will appear

Example Request

GET https://api.verint.com/your-endpoint
Content-Type: application/json

The plugin will automatically add:

Authorization: Vrnt-1-HMAC-SHA256 salt=abc123...,iat=2025-09-15T10:30:00Z,kid=your-api-key-id,sig=signature...

How It Works

The plugin implements the Verint authentication specification:

  1. Request Hook: Intercepts all outgoing requests
  2. URL Detection: Checks if the request URL contains "verint"
  3. Credential Validation: Ensures api_key_id and api_key are available
  4. Signature Generation:
    • Generates a random salt (16 bytes)
    • Creates a canonical string to sign with method, path, timestamp, and headers
    • Signs using HMAC-SHA256 with the provided API key
    • Formats the authorization header according to Verint specifications
  5. Header Injection: Adds the Authorization header to the request

Supported Headers

The plugin supports canonicalization of custom headers with the verint- prefix. These headers will be included in the signature calculation.

Example:

verint-custom-header: custom-value
verint-request-id: 12345

Error Handling

The plugin provides comprehensive error handling:

  • Missing Credentials: Alerts when api_key_id or api_key are not set
  • Generation Errors: Displays specific error messages for authentication failures
  • Graceful Fallback: Non-Verint requests are not affected by the plugin

Development

Project Structure

insomnia-plugin-verint-authentication/
├── main.js                    # Plugin entry point and request hook
├── package.json              # Plugin metadata and dependencies
├── src/
│   └── verint_authentication.js  # Core authentication logic
└── README.md                 # This file

Dependencies

  • crypto-js: For HMAC-SHA256 signing and base64 operations

Testing

To test the plugin locally:

  1. Install the plugin in your Insomnia plugins directory
  2. Set up the required environment variables
  3. Make a request to any Verint API endpoint
  4. Check that the Authorization header is automatically added

Troubleshooting

Common Issues

  1. "Missing Credentials" Alert

    • Ensure api_key_id and api_key are set in your environment
    • Check that the variable names are spelled correctly
  2. Authentication Failures

    • Verify your API key is properly base64url encoded
    • Ensure your API key ID is correct
    • Check that your Verint API credentials are valid
  3. Plugin Not Working

    • Restart Insomnia after installation
    • Check the plugins directory path is correct
    • Verify npm install completed successfully

Debug Mode

For debugging, check the Insomnia console for error messages:

  • macOS/Linux: Cmd/Ctrl + Option + I
  • Windows: Ctrl + Shift + I

License

ISC License

Author

Samer Koda

Keywords

  • insomnia
  • plugin
  • verint
  • authentication
  • hmac
  • api
  • auth

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

Support

For issues and questions:

  1. Check the troubleshooting section above
  2. Review Insomnia plugin documentation
  3. Open an issue in the project repository

Note: This plugin is designed specifically for Verint API authentication. Ensure you have valid Verint API credentials before using this plugin.