{"id":8150,"library":"fastapi-restful","title":"FastAPI RESTful","description":"FastAPI-RESTful provides helper utilities to streamline FastAPI development, particularly for building RESTful APIs using class-based views (CBV) and resource inferring routers. It aims to reduce boilerplate when defining API endpoints and integrates well with common patterns like SQLAlchemy sessions. The current version is 0.6.0, and it has a moderate release cadence, with minor versions released every few months, often incorporating dependency updates and bug fixes.","status":"active","version":"0.6.0","language":"python","source_language":"en","source_url":"https://github.com/yuval9313/FastApi-RESTful","tags":["fastapi","rest","api","cbv","resource","pydantic","sqlalchemy"],"install":[{"cmd":"pip install fastapi-restful","lang":"bash","label":"Base installation"},{"cmd":"pip install fastapi-restful[session]","lang":"bash","label":"Installation with SQLAlchemy session support"}],"dependencies":[{"reason":"Core dependency for building web APIs.","package":"fastapi","optional":false},{"reason":"Used by FastAPI for data validation and serialization.","package":"pydantic","optional":false},{"reason":"Required for the `[session]` extra to enable database session management.","package":"sqlalchemy","optional":true}],"imports":[{"wrong":"from fastapi_restful import Resource","symbol":"Resource","correct":"from fastapi_restful import Resource"}],"quickstart":{"code":"from fastapi import FastAPI\nfrom fastapi_restful.resource import Resource\nfrom fastapi_restful.cbv import cbv\nfrom fastapi_restful.inferring_router import InferringRouter\n\napp = FastAPI()\nrouter = InferringRouter()\n\n@cbv(router)\nclass HelloWorldResource(Resource):\n    def get_hello(self):\n        return {\"message\": \"Hello World from CBV!\"}\n\napp.include_router(router)\n\n# To run this:\n# 1. Save as main.py\n# 2. uvicorn main:app --reload\n# 3. Access http://127.0.0.1:8000/hello\n","lang":"python","description":"This quickstart demonstrates how to define a class-based view (CBV) using `fastapi-restful`'s `Resource` and `InferringRouter`. The `cbv` decorator automatically registers methods as API endpoints based on their names (e.g., `get_hello` becomes a GET endpoint at `/hello`)."},"warnings":[{"fix":"Review and update your Pydantic models and SQLAlchemy query/session patterns to align with Pydantic V2 and SQLAlchemy 2.0 APIs. Consult their respective migration guides.","message":"Version 0.5.0 introduced compatibility with Pydantic V2 and SQLAlchemy 2.0. If you are upgrading from an older version and use Pydantic or SQLAlchemy, you will likely encounter breaking changes.","severity":"breaking","affected_versions":">=0.5.0"},{"fix":"Ensure your project environment uses Python 3.7 or a newer compatible version. Older Python versions will result in installation failures or runtime errors.","message":"Support for older Python versions was dropped. Versions 0.4.2 and later require Python 3.6.2+, and the project currently officially supports Python 3.7+.","severity":"breaking","affected_versions":">=0.4.2"},{"fix":"Upgrade to `fastapi-restful` version 0.4.5 or newer, which removed the strict FastAPI version locking. This allows for greater flexibility in managing your FastAPI version.","message":"Prior to version 0.4.5, `fastapi-restful` used to pin the `FastAPI` dependency more strictly. This could lead to dependency conflicts if your project relied on a different `FastAPI` version.","severity":"gotcha","affected_versions":"<=0.4.4"},{"fix":"If you intend to use SQLAlchemy integration, install the package with `pip install fastapi-restful[session]`.","message":"SQLAlchemy support (e.g., session management) requires installing the `[session]` extra. Without it, you'll encounter `ModuleNotFoundError` if you try to use related features.","severity":"gotcha","affected_versions":">=0.3.1"}],"env_vars":null,"search_vec":"'0.6.0':50 'aim':29 'api':17,35,74 'base':21 'boilerpl':32 'bug':70 'build':15 'cadenc':57 'cbv':23,75 'class':20 'class-bas':19 'common':41 'current':47 'defin':34 'depend':67 'develop':12 'endpoint':36 'everi':62 'fastapi':1,4,11,72 'fastapi-rest':3 'fix':71 'helper':7 'incorpor':66 'infer':26 'integr':38 'like':43 'minor':59 'moder':55 'month':64 'often':65 'particular':13 'pattern':42 'provid':6 'pydant':77 'reduc':31 'releas':56,61 'resourc':25,76 'rest':2,5,16,73 'router':27 'session':45 'sqlalchemi':44,78 'streamlin':10 'updat':68 'use':18 'util':8 'version':48,60 'view':22 'well':39","created_at":"2026-04-16T17:00:41.550239+00:00","updated_at":"2026-04-16T17:00:41.550239+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\n  File \"/tmp/tmphy6n3v2r/venv/lib/python3.12/site-packages/fastapi_restful/__init__.py\", line 4, in <module>\n    from .cbv_base import Api, Resource, set_responses, take_init_parameters\n  File \"/tmp/tmphy6n3v2r/venv/lib/python"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"0.6.0","cli_name":"","cli_version":null,"type":"library","homepage":"https://fastapi-restful.netlify.app","github":"https://github.com/yuval9313/FastApi-RESTful","docs":"https://fastapi-restful.netlify.app","changelog":null,"pypi":"https://pypi.org/project/fastapi-restful/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["web-framework"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"import_fail","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-07-10","install_tag":null}}