Skip to main content

How do I send LaunchNotes data to other tools in real time?

Use webhooks to automatically push event data from LaunchNotes to other tools

Written by Chelsea Davis
Updated today

Summary

Webhooks let you automatically send real-time data to other tools whenever something happens in your LaunchNotes project. Instead of checking LaunchNotes for updates, webhooks push event data to a URL you choose — like a Slack integration, Zapier, or your own server.


What you'll need

  • Admin access to your LaunchNotes project

  • A destination URL that can receive HTTP POST requests (this could be a tool like Zapier, Make, or a custom endpoint)

Creating a webhook

  1. Go to Admin → Webhooks

  2. Click Create Webhook

  3. Fill in the following:

    • Webhook name — A label to help you identify this webhook (e.g., "Slack feedback alerts" or "Zapier sync")

    • Webhook URL — The destination URL where event data will be sent. This is typically provided by the tool you're connecting to.

    • Event types — Choose which events should trigger this webhook. You can select all events for a category (e.g., all Feedback events) or pick specific ones (e.g., only Feedback → Submitted).

  4. Click Create

Authentication (optional)

If your receiving server requires credentials to accept incoming requests, expand the Authentication section and enter a username and password. LaunchNotes will include these credentials with every webhook request so the receiving server can verify the request is legitimate.

Most users can skip this section. If you're using a tool like Zapier or Make, you typically don't need to set this up.

Verifying your webhook

After creating a webhook, it starts in a Pending status. To confirm your endpoint is reachable:

  1. Open the webhook from the list

  2. Click Verify webhook

  3. LaunchNotes will send a test request to your URL

If successful, the status changes to Verified. If it fails, double-check that your URL is correct and publicly accessible.

Testing your webhook

Before relying on a webhook in production, you can send test events:

  1. Open your webhook and go to the Test webhook tab

  2. Select an event type from the dropdown

  3. Review the sample payload

  4. Click Send test event

This sends a realistic sample payload to your URL so you can confirm your integration handles it correctly.

Enabling and disabling

You can enable or disable a webhook at any time from the webhook's Info tab. When a webhook is disabled, events will not be sent and will not be queued — no data is lost, but events that occur while disabled are not recorded for that webhook.

Monitoring events

The Events tab shows a log of every event sent to your webhook over the last 30 days. For each event you can see:

  • Who triggered it

  • The event type

  • When it was triggered

  • Whether it was delivered or failed

Click any event to view the full payload. If an event failed, you can retry it directly from the detail view.

Available event types

Webhooks can be triggered by events across these categories:

Category

Example events

Announcement

Created, published, scheduled, archived, updated, pinned

Feedback

Submitted, organized, updated, archived

Idea

Created, voted, promoted, published, archived

Work item

Created, transitioned, published, update added, archived

Subscriber

Created, confirmed, unsubscribed, resubscribed, blocked

Digest

Created, published

Category

Created, updated, deleted

Stage

Created, updated, archived, reordered

Template

Created, updated, used, archived

Project

Created, updated, feedback/ideas/voting enabled or disabled

Payload format

Every webhook event is sent as an HTTP POST request with a JSON body. Here's an example for a feedback.submitted event:

{   "timestamp": "2024-01-15T17:30:52.812Z",   "type": "feedback.submitted",   "data": {     "project": {       "id": "pro_bn4kwe56j",       "name": "Project Launch"     },     "organization": {       "id": "org_1x54ca95",       "name": "Moonshots"     },     "actor": {       "type": "User",       "id": "usr_09adgf0as",       "name": "Mike Dexter"     },     "object": {       "id": "fee_345nklfgj",       "content": "This is some serious context that you need to understand",       "reporter": {         "type": "User",         "name": "Liz Lemon",         "id": "ll_alskdnflk4"       },       "affected_customer": {         "email": "[email protected]"       },       "importance": "High"     }   } }

Use cases

1. Get notified in Slack when new feedback is submitted

Stay on top of customer feedback without leaving Slack.

  • Event: Feedback → Submitted

  • How: Create a webhook pointing at a Slack incoming webhook URL. When a customer submits feedback, you'll get a message in your chosen Slack channel with the feedback content, reporter name, and importance level.

2. Sync announcement data to an external system when published

Keep an external CMS, knowledge base, or internal tool up to date whenever an announcement goes live.

  • Event: Announcement → Published

  • How: Point the webhook at a Zapier or Make trigger URL. When an announcement is published, the payload includes the announcement name, content, categories, and public link — everything you need to create or update a record in the external system.

3. Track idea engagement and route popular ideas

Get notified when ideas gain traction so you can prioritize what matters to customers.

  • Event: Idea → Voted

  • How: Use a webhook to send vote events to a Zapier workflow or custom endpoint. The payload includes the idea name, current vote count, and categories. You could set up logic to notify your product team when an idea crosses a vote threshold, or automatically create a ticket in your project management tool.


Troubleshooting

  • Webhook stuck in "Pending" — Click Verify webhook to test connectivity. Make sure the URL is correct and publicly accessible.

  • Webhook status is "Failed" — The verification request could not reach your URL. Check for typos, confirm the server is running, and ensure it accepts POST requests.

  • Events showing as "Failed" — Open the event detail to see the payload. You can retry failed events from the event detail view. Common causes: destination server downtime, URL changes, or authentication issues.

Did this answer your question?