Skip to main content
Tutorial
Beginner

How to test webhooks locally with ngrok

When Starton sends a notification, Monitor sends an HTTP request to a web server. If your server is actually localhost, the request will fail. Starton cannot actually reach localhost. We need a tool to make that possible. The tool we're using is called ngrok.

Installing ngrok​

  1. Go to Ngrok.
  2. Install ngrok on your system.

Launching your ngrok URL

  1. Launch your web application.
  2. Go to your localhost port. For example, http://localhost:3001.
  3. Launch ngrok with the command ngrok http 3001.
  4. Go to your Ngrok Web Interface http://127.0.0.1:4040.
  5. Click the Status tab.
  6. Copy the URL of the tunnel which should look like this https://xxxxxxxx.ngrok.io.

Creating your watcher in Starton

You can use this Webhook URL in Starton to create your watcher.

To create a watcher from the code of you application, use the following snippet. You can find the full list of networks and event types in our API reference.

const axios = require("axios");
// First, authenticate to the API
const startonApi = axios.create({
baseURL: "https://api.starton.com",
headers: {
"x-api-key": "YOUR_API_KEY",
},
});
// Use the watcher creation endpoint
startonApi.post(
"/v3/watcher",
{
name: "Name of your watcher", // Enter a name for your watcher
description: "Describe your watcher", // Enter a description for your watcher
address: "0x000000000000", // Enter the address to watch (either a wallet or a smart contract)
network: "polygon-mumbai",// Enter the network of your address.
type: "ADDRESS_ACTIVITY",// Select an event type
webhookUrl: "https://xxxxxxx/", // Here, enter the webhook url you got from ngrok.
confirmationsBlocks: 50 // Depending on your needs, select the number of confirmed blocks before an event triggers your watcher
}
).then((response) => {
console.log(response.data)
})

Loubna Benzaama

Lead technical writer


Created:

May 29, 2024

Reading time:

2 min


Content
  • Installing ngrok