{"library":"starlette-request-id","title":"starlette-request-id","type":"library","description":"A Starlette middleware that adds a unique request ID to each incoming request, typically used for logging and tracing. Current version 1.2.1 with a release cadence of occasional updates. Requires Python >=3.7.","language":"python","status":"active","last_verified":"Fri May 01","install":{"commands":["pip install starlette-request-id"],"cli":null},"imports":["from starlette_request_id import RequestIDMiddleware"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":null,"github":"https://github.com/bigbag/starlette-request-id","docs":null,"changelog":null,"pypi":"https://pypi.org/project/starlette-request-id/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"from starlette.applications import Starlette\nfrom starlette.routing import Route\nfrom starlette.requests import Request\nfrom starlette.responses import JSONResponse\nfrom starlette_request_id import RequestIDMiddleware\n\nasync def home(request: Request):\n    request_id = request.headers.get('X-Request-ID')\n    return JSONResponse({'request_id': request_id})\n\napp = Starlette(debug=True, routes=[Route('/', home)])\napp.add_middleware(RequestIDMiddleware)\n\nif __name__ == '__main__':\n    import uvicorn\n    uvicorn.run(app, host='0.0.0.0', port=8000)","lang":"python","description":"A minimal Starlette app that adds request ID middleware and returns the ID in the response.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}