Skip to main content
Notra accepts only four GitHub event types on its webhook endpoint: ping, push, release and pull_request. Notra acknowledges every other event type with 200 and "ignored": true so GitHub does not retry it, and does nothing else with it.
These are events Notra receives from GitHub. For signed post lifecycle, generation and GEO scan events sent to your endpoint, see Outbound webhooks.

Processing order

1

Route check

The organization, integration and repository IDs in the payload URL must exist and belong together, and the integration must be enabled.
2

Event type

X-GitHub-Event must be one of the four supported types, otherwise Notra logs and ignores the delivery.
3

Duplicate check

Notra skips deliveries with an X-GitHub-Delivery ID it has seen in the last 24 hours.
4

Signature

Notra verifies the body against the repository’s secret using X-Hub-Signature-256.
5

Filter

Each event type has its own rules, described below. Notra logs events that do not pass as filtered and returns 200.
6

Dispatch

Notra saves push and release events as context for chat and matches them against your event triggers, while it records merged pull requests for internal use.

Push

GitHub sends this event when someone pushes commits to the repository.
string
required
push
string
required
pushed

Filtering

A push is processed only when both conditions hold:
ref is the repository’s default branch (refs/heads/{default_branch})
The payload contains at least one commit
Notra filters pushes to other branches, tag pushes and empty pushes (for example a branch deletion).

Processed payload

This is the shape Notra passes to event triggers and returns under processed in the webhook response.

Release

GitHub sends this event when a release changes state.
string
required
release
string
required
published or prereleased

Filtering

GitHub’s action is published or prereleased
The release is not a draft
Notra filters created, edited, deleted, released and unpublished actions. Draft releases never pass, so Notra processes a published draft once, when GitHub sends published.

Processed payload

Pull request

GitHub sends this event when a pull request is opened, closed or updated, but Notra only keeps merges.
string
required
pull_request
string
required
merged

Filtering

GitHub’s action is closed
pull_request.merged is true
Notra filters opened, synchronized and closed-without-merge pull requests.

Processed payload

Notra does not store merged pull requests as chat context, and they do not fire event triggers because event triggers can only subscribe to push and release.

Ping

GitHub sends this event when you save the webhook or click Redeliver on the ping in your webhook settings.
string
required
ping
Notra checks the signature of each ping delivery, logs it and answers with:
Pings do not trigger any workflow.

Event triggers

Notra matches push and release events against enabled event triggers whose targets include the repository. The trigger’s sourceConfig decides which events fire it:
  • eventTypes accepts push and release, and triggers created through the API must list at least one.
  • includePreReleases defaults to true, and when it is false the trigger skips prereleased events.
  • Each matching trigger starts one generation run per delivery. Notra keys the run by trigger ID and delivery ID, so a redelivered event does not start a second run.
See Event triggers for creating and managing triggers in the dashboard.

Log entries

Each delivery writes one entry to Settings, then Logs, where the integrationType is github, direction is incoming and referenceId is the X-GitHub-Delivery ID.
string
required
What happened, for example Processed release event, Filtered push event, Unsupported event type: issues, Invalid webhook signature or Webhook ping received
string
required
success for processed, filtered, ignored and ping deliveries and failed for rejected ones
number
The HTTP status Notra returned to GitHub
string
Set on failed entries, for example Missing X-Hub-Signature-256 header
object
Processed events include event, action and the processed data, filtered events include event, action and filtered: true, and unsupported event types include event and ignored: true.

Next steps

Webhooks overview

Payload URL, secret, security checks and polling alternatives

Configure triggers

Generate content automatically from push and release events
Last modified on October 8, 2026