<prompt> Tengeneza API ya REST inayotokana na Python kwa kutumia Flask ambayo inaruhusu watumiaji kutekeleza shughuli za CRUD kwenye mkusanyiko wa vitu vilivyohifadhiwa katika hifadhidata ya SQLite. Jumuisha hati za SwaggerOpenAPI za miisho ya API. PLINFORMAT  <response>: chatukutoka kwa chupa ya kuingiza chupa, ombi, jsonifykutoka kwa flask_sqlalchemy kuagiza SQLAlchemykutoka kwa flask_marshmallow agiza Marshmallowkutoka kwa flask_swagger_ui kuleta get_swaggerui_blueprintprogramu Chupa__jina__app.configSQLALCHEMY_DATABASE_URI sqlite:items.dbapp.configSQLALCHEMY_TRACK_MODIFICATIONS Si kwelidb SQLAlchemyprogramuma Marshmallow programuKipengee cha darasadb.Model: id db.Safuwimadb.Integer,msingi_ufunguoKweli jina db.Safuwimadb.String100, uniqueKweli maelezo db.Safuwimadb.String200 def __init__binafsi, jina, maelezo: self.name jina self.description maelezodb.create_alldarasa la KipengeeSchemama.Schema: darasa la Meta: fields id, jina, maelezoitem_schema BidhaaSchemaitems_schema mbinuPOSTdef add_item: name request.jsonname maelezo request.jsondescription new_item Bidhaajina, maelezo db.session.addkipengee_kipya db.session.commit rudisha mbinuGETdef get_items: all_items Item.query.all matokeo items_schema.dumpvitu_vyote rudisha mbinuGETdef get_itemid: bidhaa Item.query.getid ikiwa sio kitu: return jsonifyujumbe: Kipengee hakijapatikana, 404 rudisha mbinuPUTdef update_itemid: bidhaa Item.query.getid ikiwa sio kitu: return jsonifyujumbe: Kipengee hakijapatikana, 404 item.name request.jsonname item.description request.jsondescription db.session.commit rudisha mbinuDELETEdef delete_itemid: bidhaa Item.query.getid ikiwa sio kitu: return jsonifyujumbe: Kipengee hakijapatikana, 404 db.session.futakipengee db.session.commit rudisha kipengee_schema.jsonifykipengeeSWAGGER_URL apidocsAPI_URL staticswagger.jsonswaggerui_blueprint get_swaggerui_blueprint SWAGGER_URL, API_URL, config app_name: API ya vipengee app.register_blueprintswaggerui_blueprint, url_prefixSWAGGER_URLkama __name__ __main__: app.rundebugKweliUnda faili ya swagger.json katika folda ya tuli yenye maudhui yafuatayo:json swagger: 2.0, maelezo: title: API ya vitu, version: 1.0 , njia: apiitems: pata: summary: Pata vitu vyote, majibu: 200: description: Orodha ya vitu , chapisho: summary: Ongeza kipengee, vigezo: in: mwili, name: kitu, schema: ref: definitionsKipengee , majibu: 201: description: Kipengee kilichoundwa , apiitemsid: pata: summary: Pata kipengee kwa kitambulisho, vigezo: in: njia, name: id, type: integer , majibu: 200: description: Kipengee kilichoombwa , 404: description: Kipengee hakijapatikana , weka: summary: Sasisha kipengee kwa kitambulisho, vigezo: in: njia, name: id, type: integer , in: mwili, name: kitu, schema: ref: definitionsKipengee , majibu: 200: description: Kipengee kilichosasishwa , 404: description: Kipengee hakijapatikana , futa: summary: Futa kipengee kwa kitambulisho, vigezo: in: njia, name: id, type: integer , majibu: 200: description: Kipengee kilichofutwa , 404: description: Kipengee hakijapatikana , ufafanuzi: Kipengee: type: object, mali: kitambulisho: type: integer , jina: type: string , maelezo: type: string 