Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Add `dkit webhooks`: look up Discord webhook types

Open
#67 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
58/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
cli

Research direction

Start with the existing dataset registration in src/dkit/core/data.py and related CLI commands, then inspect developers/resources/webhook.mdx for the “Webhook Types” rows. Add the documented data and command behavior, with tests covering every type, lookups, search, JSON output, and invalid input. Update the README, the [Unreleased] Added block in CHANGELOG.md, and the JSON-file count in .github/workflows/ci.yml; done means the stated coverage and Ruff checks pass.

Written by the indexing model from the issue text.

Description

enhancement new command

Problem

Discord has several webhook types with different roles, but dkit does not provide an offline lookup for their documented values.

Proposed behaviour

Add dkit webhooks to list and look up documented webhook types by numeric value or case-insensitive name.

$ dkit webhooks 1
Incoming

$ dkit webhooks Application
3

$ dkit --json webhooks
  • List all documented types when no value is supplied.
  • Include the value, name, and description in text and JSON output.
  • Support --search across the documented type, name, and description.
  • Unknown values should exit with code 2 and a useful hint.
  • Make clear that this table describes webhook objects, not outgoing webhook events.

Data

  • Add src/dkit/data/webhook_types.json with source, source_rendered, and last_verified.
  • Copy the rows from “Webhook Types” in developers/resources/webhook.mdx:
    https://discord.com/developers/docs/resources/webhook#webhook-object-webhook-types.
  • The documented examples are type 1 = Incoming and type 3 = Application.
  • Register the dataset in src/dkit/core/data.py and increase the exact JSON-file count in .github/workflows/ci.yml by one from the current base branch count.

Acceptance criteria

  • Tests cover each documented type, numeric/name lookups, search, JSON output, and invalid input.
  • Tests fail if a type value, name, or description is changed incorrectly.
  • 100% line and branch coverage; ruff check and ruff format --check pass.
  • Update the README and add one bullet to the existing ### Added block under [Unreleased] in CHANGELOG.md; do not remove existing changelog lines.
  • Please comment on this issue before starting, as required by CONTRIBUTING.md. AI-assisted contributions are welcome; disclose AI use in the PR description.
Dominant language
Python
Stars
1
Forks
7
Avg merge
11h 50m
Merged PRs (30d)
35

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Bytewave1/dkit

All issues in Bytewave1/dkit

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.