What is a webhook?

Getmany uses webhooks to push real-time notifications to you about your Upwork activity. All webhooks use HTTPS and deliver a JSON payload that can be used by your application. You can use webhook feeds to do things like:

  • Update lead status based on changing proposal status
  • Automatically handle new messages from customers

Steps to receive webhooks

You can start receiving real-time events in your app using the steps:

  1. Create a local endpoint to receive requests
  2. Register your development webhook endpoint
  3. Test that your webhook endpoint is working properly
  4. Deploy your webhook endpoint to production
  5. Register your production webhook endpoint

1. Create a local endpoint to receive requests

In your local application, create a new route that can accept POST requests.

For example, you can add an API route on Express.js:

index.ts
import express from 'express';

const HTTP_PORT = 3000;

const app = express();
app.use(express.json());

app.post('/webhook', (req, res) => {
  console.log("request payload", req.body);

  res.json({ success: true });
});

app.listen(HTTP_PORT, () => {
  console.log(`Example app listening on port ${HTTP_PORT}`);
});

On receiving an event, you should respond with an HTTP 200 OK to signal Getmany that the event was successfully delivered.

2. Register your development webhook endpoint

Register your publicly accessible HTTPS URL in the Getmany dashboard.

You can create a tunnel to your localhost server using a tool like ngrok. For example: https://8733-191-204-177-89.sa.ngrok.io/api/webhooks

3. Test that your webhook endpoint is working properly

Send a few test emails to check that your webhook endpoint is receiving the events.

4. Deploy your webhook endpoint

After you’re done testing, deploy your webhook endpoint to production.

5. Register your production webhook endpoint

Once your webhook endpoint is deployed to production, you can register it in the Getmany dashboard.

FAQ

What is a webhook?

Getmany uses webhooks to push real-time notifications to you about your Upwork activity. All webhooks use HTTPS and deliver a JSON payload that can be used by your application. You can use webhook feeds to do things like:

  • Update lead status based on changing proposal status
  • Automatically handle new messages from customers

Steps to receive webhooks

You can start receiving real-time events in your app using the steps:

  1. Create a local endpoint to receive requests
  2. Register your development webhook endpoint
  3. Test that your webhook endpoint is working properly
  4. Deploy your webhook endpoint to production
  5. Register your production webhook endpoint

1. Create a local endpoint to receive requests

In your local application, create a new route that can accept POST requests.

For example, you can add an API route on Express.js:

index.ts
import express from 'express';

const HTTP_PORT = 3000;

const app = express();
app.use(express.json());

app.post('/webhook', (req, res) => {
  console.log("request payload", req.body);

  res.json({ success: true });
});

app.listen(HTTP_PORT, () => {
  console.log(`Example app listening on port ${HTTP_PORT}`);
});

On receiving an event, you should respond with an HTTP 200 OK to signal Getmany that the event was successfully delivered.

2. Register your development webhook endpoint

Register your publicly accessible HTTPS URL in the Getmany dashboard.

You can create a tunnel to your localhost server using a tool like ngrok. For example: https://8733-191-204-177-89.sa.ngrok.io/api/webhooks

3. Test that your webhook endpoint is working properly

Send a few test emails to check that your webhook endpoint is receiving the events.

4. Deploy your webhook endpoint

After you’re done testing, deploy your webhook endpoint to production.

5. Register your production webhook endpoint

Once your webhook endpoint is deployed to production, you can register it in the Getmany dashboard.

FAQ