Skip to main content

FastAPI support for RFC9457 problems.

Project description

FastAPI Problems

image image image style tests codecov

fastapi_problem is a set of exceptions and handlers for use in fastapi applications to support easy error management and responses.

Each exception easily marshals to JSON based on the RFC9457 spec for use in api errors.

Check the docs for more details.

Custom Errors

Subclassing the convenience classes provide a simple way to consistently raise the same error with detail/extras changing based on the raised context.

from fastapi_problem.error import NotFoundProblem


class UserNotFoundError(NotFoundProblem):
    title = "User not found."

raise UserNotFoundError(detail="detail")
{
    "type": "user-not-found",
    "title": "User not found",
    "detail": "detail",
    "status": 404,
}

Usage

import fastapi
from fastapi_problem.handler import add_exception_handler


app = fastapi.FastAPI()
add_exception_handler(app)

@app.get("/user")
async def get_user():
    raise UserNotFoundError("No user found.")
$ curl localhost:8000/user
{

    "type": "user-not-found",
    "title": "User not found",
    "detail": "No user found.",
    "status": 404,
}

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

fastapi_problem-0.9.4.tar.gz (66.4 kB view details)

Uploaded Source

Built Distribution

fastapi_problem-0.9.4-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file fastapi_problem-0.9.4.tar.gz.

File metadata

  • Download URL: fastapi_problem-0.9.4.tar.gz
  • Upload date:
  • Size: 66.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for fastapi_problem-0.9.4.tar.gz
Algorithm Hash digest
SHA256 8f97265cbf75066e155c8e78bd2ec9431934e4861209cc6fa9d605cd54704f06
MD5 d6018553298252d566f35e4f131027f7
BLAKE2b-256 bc136d6717b3d95c395ab87417d47e79066961af616f71c6f215b846abeac4bc

See more details on using hashes here.

File details

Details for the file fastapi_problem-0.9.4-py3-none-any.whl.

File metadata

File hashes

Hashes for fastapi_problem-0.9.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b734afd45110280c42b2aa0e77243b032b54ef2d9f40561a1f558737f2b05dfa
MD5 bfcf236ec306deaeaced89894756f83e
BLAKE2b-256 94e6fe4f75d684cbd9b07b288770a2b3257f67923cc02c575b027cc4a0903060

See more details on using hashes here.

Supported by

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