Skip to main content

Software Heritage Webhooks management

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

swh_webhooks-0.3.2.tar.gz (45.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

swh_webhooks-0.3.2-py3-none-any.whl (46.7 kB view details)

Uploaded Python 3

File details

Details for the file swh_webhooks-0.3.2.tar.gz.

File metadata

  • Download URL: swh_webhooks-0.3.2.tar.gz
  • Upload date:
  • Size: 45.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for swh_webhooks-0.3.2.tar.gz
Algorithm Hash digest
SHA256 da5668dc5cc913fa68faf17f171626364f65ff9aac636946376175200c9b37d5
MD5 d297a84cbac4bb2a0de59efe1511f8a9
BLAKE2b-256 86b4b24c5587f78b08dcf47227cdca23e0257749ab44ac87c6bceaa630c6f923

See more details on using hashes here.

File details

Details for the file swh_webhooks-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: swh_webhooks-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 46.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for swh_webhooks-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 737affcb42bcad68b77c38bb14b2d73c035055c3ec3968ee0672c1724707e4ae
MD5 ab5b57efe26e8a57698cb041e8cfcf4a
BLAKE2b-256 188db85d9c1d280a4845b42133a6c2d02a18eb6b1e3cd55415d48027766264a2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page