--- id: drf-exceptions-hog version: "0.4.0" license: unclear license_treatment: permissive maintenance: active --- # drf-exceptions-hog — Standardized and easy-to-parse API error responses for DRF. License: permissive · Maintenance: active · Downloads: 2.1M/mo ## What it is and what it does DRF Exceptions Hog wraps Django REST Framework's exception handling to transform inconsistent error responses into a predictable, structured format. Instead of varying response shapes—some with field-level errors as arrays, others with a single detail string—it normalizes all exceptions to a consistent schema with type, code, detail, attr, and optional list fields. This makes frontend error parsing deterministic across languages and frameworks. The package is configured via a single settings entry that replaces DRF's default exception handler. It supports optional error reporting hooks (useful for Sentry or NewRelic integration), nested field error flattening with customizable separators, and an opt-in mode to collect and return multiple validation errors in a single response rather than failing on the first. It requires only djangorestframework as a runtime dependency and works with Python 3.7+. Use it for: - Simplify frontend error parsing by ensuring all API errors follow a single, predictable JSON schema across your DRF endpoints. - Integrate error reporting to external services (Sentry, NewRelic) by configuring the EXCEPTION_REPORTING handler. - Display all validation failures to users in a single form submission instead of stopping at the first error. - Provide consistent error codes and messages across multiple frontend frameworks or mobile apps consuming the same API. - Customize error attribute naming for nested serializers using the NESTED_KEY_SEPARATOR setting. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Standardizes Django REST Framework exception responses into a consistent, machine-parseable JSON format with type, code, detail, and attribute fields to simplify frontend error handling. Yes. Low install friction, active maintenance, no known vulnerabilities, and permissive MIT license. Install if you use Django REST Framework and want to eliminate frontend error-parsing complexity by standardizing exception responses. Skip only if you have already built custom exception handling or do not expose DRF errors to frontend clients. ## Install pip install drf-exceptions-hog uv add drf-exceptions-hog poetry add drf-exceptions-hog ## Installing drf-exceptions-hog Before you install: Low install friction; single runtime dependency on djangorestframework. Actively maintained with recent commits; last release was over a year ago but repository remains active with no archived status. License in practice: MIT license (permissive); you may use, modify, and distribute this package freely in commercial and private projects with minimal restrictions. Quickstart: pip install drf-exceptions-hog # In settings.py: REST_FRAMEWORK = { "EXCEPTION_HANDLER": "exceptions_hog.exception_handler", } # Exceptions now return standardized JSON: # {"type": "validation_error", "code": "required", "detail": "...", "attr": "field_name"} Requires Django 3.1+ and Python 3.7+; only supports JSON responses. Verify before relying: - Whether the package handles all DRF exception types or only a documented subset. - Performance impact when exception reporting is enabled in production. - Compatibility with Django versions beyond 3.2.x (latest tested version in fact sheet). ## Package facts - License: not declared (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 2.1M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags DRF error response standardization, Django REST Framework exception handler, API error formatting, consistent error responses, frontend-friendly error parsing, DRF exception middleware, structured API errors, django-rest-framework, error-handling, api-standardization [View on SkillFed](https://skillfed.io/packages/drf-exceptions-hog) · [View on PyPI](https://pypi.org/project/drf-exceptions-hog/)