Rest Client für ebay mit dem Fokus auf die Verwendung in einer Middleware
Find a file
2026-04-07 09:49:06 +02:00
.venv_codegen Refactor code structure for improved readability and maintainability 2026-04-07 09:10:53 +02:00
ebay_client Add webhook utilities and FastAPI integration for eBay notifications; enhance tests for request handling 2026-04-07 09:49:06 +02:00
examples Add webhook utilities and FastAPI integration for eBay notifications; enhance tests for request handling 2026-04-07 09:49:06 +02:00
scripts Refactor code structure for improved readability and maintainability 2026-04-07 09:10:53 +02:00
tests Add webhook utilities and FastAPI integration for eBay notifications; enhance tests for request handling 2026-04-07 09:49:06 +02:00
.gitignore Add tests for OAuth client and webhook notification handling 2026-04-07 08:40:50 +02:00
commerce_notification_v1_oas3.yaml Add tests for OAuth client and webhook notification handling 2026-04-07 08:40:50 +02:00
pyproject.toml Refactor code structure for improved readability and maintainability 2026-04-07 09:10:53 +02:00
README.md Add webhook utilities and FastAPI integration for eBay notifications; enhance tests for request handling 2026-04-07 09:49:06 +02:00
sell_account_v1_oas3.yaml Add tests for OAuth client and webhook notification handling 2026-04-07 08:40:50 +02:00
sell_feed_v1_oas3.yaml Add tests for OAuth client and webhook notification handling 2026-04-07 08:40:50 +02:00
sell_fulfillment_v1_oas3.yaml Add tests for OAuth client and webhook notification handling 2026-04-07 08:40:50 +02:00
sell_inventory_v1_oas3.yaml Add tests for OAuth client and webhook notification handling 2026-04-07 08:40:50 +02:00

eBay REST Client

This workspace contains a Python-first eBay REST client foundation with:

  • a shared OAuth 2.0 core
  • a shared HTTP transport layer
  • public API wrappers per eBay REST domain
  • an isolated Pydantic model generation script for each contract in this folder

Generate Low-Level Clients

The project uses a dedicated code generation environment because the main runtime is currently on Python 3.14 while the model generator still targets earlier Python versions.

Run the generator script from the project root:

& .\.venv\Scripts\python.exe .\scripts\generate_clients.py

To generate only one API package:

& .\.venv\Scripts\python.exe .\scripts\generate_clients.py --api notification

This regenerates Pydantic v2 models into ebay_client/generated/<api>/models.py.

Webhook Helpers

The Notification package also includes framework-agnostic webhook utilities for:

  • responding to eBay challenge requests
  • parsing and validating the X-EBAY-SIGNATURE header
  • verifying signed notification payloads against the cached public key
  • turning a verified notification body into a normalized WebhookEventEnvelope

A concrete FastAPI integration example is available in examples/fastapi_notification_webhook.py.