Skip to main content

FastAPI Custom Responses

Project description

FastAPI Custom Responses

Provides normalized response objects and error handling

Example

from http import HTTPStatus
from fastapi_custom_responses import EXCEPTION_HANDLERS, Response
from fastapi import APIRouter

# Initialize FastAPI
router = APIRouter()

app = FastAPI(
    title="API",
    description="My API",
    version="1.0.0",
    lifespan=lifespan,
    exception_handlers=EXCEPTION_HANDLERS, # Use error handler from library
)

# Define data model
class Data(Response):
    example: str

# Routes
@router.get(
    "/",
    response_model=Response[Data], # Use Data model
)
async def index(_: FastAPIRequest) -> Response[Data]:
    """Index route."""

    return Response(
        success=True,
        data=Data(example="hello"),
    )

@router.get(
    "/return-error",
    response_model=Response[Data], # Use Data model
)
async def error_route(_: FastAPIRequest) -> Response:
    """Index route."""

    raise ErrorResponse(error="Your request is invalid.", status_code=HTTPStatus.BAD_REQUEST)

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_custom_responses-0.0.9.tar.gz (3.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fastapi_custom_responses-0.0.9-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

Details for the file fastapi_custom_responses-0.0.9.tar.gz.

File metadata

  • Download URL: fastapi_custom_responses-0.0.9.tar.gz
  • Upload date:
  • Size: 3.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fastapi_custom_responses-0.0.9.tar.gz
Algorithm Hash digest
SHA256 50f18070d59705128d3c20982425a7041da092451045e110fc77a661a92e8ec8
MD5 762c34a7e0400cab9e253220eb3435e5
BLAKE2b-256 d6231ddde238fdef8cb57b3f991051033d1e0732757416a8b1e1181a500b0d08

See more details on using hashes here.

Provenance

The following attestation bundles were made for fastapi_custom_responses-0.0.9.tar.gz:

Publisher: publish-to-pypi.yml on julien777z/fastapi-custom-responses

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fastapi_custom_responses-0.0.9-py3-none-any.whl.

File metadata

File hashes

Hashes for fastapi_custom_responses-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 53328533d7da9c2b76cbf8a41a581980c0aee7b807d86dbd4c5797e5339fe7a3
MD5 abea8659d81722c158901926d38d84f1
BLAKE2b-256 7c0ef37eb16b9d47095155a368c322289b430eb07e7c7fa09f1fa8509d5216af

See more details on using hashes here.

Provenance

The following attestation bundles were made for fastapi_custom_responses-0.0.9-py3-none-any.whl:

Publisher: publish-to-pypi.yml on julien777z/fastapi-custom-responses

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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