Skip to main content

Python package to manage Software Heritage Webhooks built on top of the Svix framework.

API Overview

The webhooks framework for Software Heritage is based on three main concepts:

  • event type: named event and description of associated data

  • endpoint: URL to send events data

  • event: message sent to endpoints

Event type

An event type defines an event and its JSON messages that are sent through webhooks. It is composed of:

  • a name in the form <group>.<event>

  • a description

  • a JSON schema describing the JSON payload sent to endpoints

Endpoint

An endpoint is defined by an HTTP URL where events and their JSON data are sent to. An endpoint is created for a specific event type and an optional channel (each event type has its own list of endpoints).

Channels are an extra dimension of filtering events that is orthogonal to event types. Events are sent (or not sent) to endpoints based on the following conditions:

  • Endpoint has no channel set: this is a catch-all, all events are sent to it, regardless of whether the event had a channel set.

  • Both endpoint and event have a channel set: if there’s the same, the event is sent to the endpoint.

  • Endpoint has a channel set and event has no channel set: the event is not sent to the endpoint.

Event

An event of a given type can be sent with a JSON payload, its delivery will be attempted to all endpoints listening to the event type.

If the JSON payload does not match the JSON schema of the event type, an error is raised.

Event can optionally be sent on a specific channel orthogonal to the event type, the conditions of its delivery is detailed in the previous section.

Metadata

Release files for swh.webhooks 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for swh.webhooks 0.3.2
File Size Uploaded
swh_webhooks-0.3.2.tar.gz 45.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for swh.webhooks 0.3.2
File Interpreter ABI Platform
swh_webhooks-0.3.2-py3-none-any.whl Python 3 none any Details

Total release size: 92.1 kB

Release files / swh_webhooks-0.3.2.tar.gz

Download URL swh_webhooks-0.3.2.tar.gz
Size 45.5 kB
Tags Source
SHA-256 checksum
How to use checksums
da5668dc5cc913fa68faf17f171626364f65ff9aac636946376175200c9b37d5
BLAKE2b-256 checksum
How to use checksums
86b4b24c5587f78b08dcf47227cdca23e0257749ab44ac87c6bceaa630c6f923
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.9

Release files / swh_webhooks-0.3.2-py3-none-any.whl

Download URL swh_webhooks-0.3.2-py3-none-any.whl
Size 46.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
737affcb42bcad68b77c38bb14b2d73c035055c3ec3968ee0672c1724707e4ae
BLAKE2b-256 checksum
How to use checksums
188db85d9c1d280a4845b42133a6c2d02a18eb6b1e3cd55415d48027766264a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.9

Release history Release notifications | RSS feed

This release

0.3.2 This release

2 release files

0.3.1

2 release files

0.2.0

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page