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

feat: add JSON Schema validation for API requests

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

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

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

Research direction

Start by reading the CLI entry point and how API requests are persisted, then check the existing tests and README. The issue suggests adding schema.json, using the jsonschema library, adding a validate command and test_validation.py, and documenting the schema; done means requests are validated before persistence and invalid saved requests are rejected by the command.

Written by the indexing model from the issue text.

Description

enhancement

Context

git-api persists API requests as JSON in a git repository, but it does not support request validation. Users can create requests with invalid JSON, missing required fields, or incorrect content types, which are only discovered when the request is replayed.

Motivation

Early validation would catch errors before they are committed to the repository. A JSON Schema-based validation would ensure that all requests have the required fields (method, url, headers, body) and that the values are of the correct type.

Acceptance Criteria

  • Define a JSON Schema for API requests
  • Validate requests before persisting them
  • Add a validate CLI command to check existing requests
  • Add a test that verifies invalid requests are rejected
  • Document the schema in README.md

Suggested Implementation

  1. Define a JSON Schema in schema.json
  2. Use jsonschema library to validate requests
  3. Add a validate CLI command
  4. Add a test_validation.py with valid and invalid requests

Related

  • No existing issue covers request validation
Dominant language
Python
Stars
0
Forks
1
Avg merge
37m
Merged PRs (30d)
9

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 yunaremaia/git-api

All issues in yunaremaia/git-api

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.