--- title: "Implement SDK in AppSail" url: https://docs.catalyst.zoho.com/en/sdk/python/v1/serverless/appsail/implement-sdk-in-appsail/ description: "This page describes the method to implement Python SDK in an AppSail service for Catalyst-managed runtimes and avail Catalyst features within the application." last_updated: 2026-03-05T15:20:59Z service: Serverless type: general related_links: - name: "AppSail Help" url: /en/serverless/help/appsail/introduction --- # Catalyst AppSail [Catalyst AppSail](https://docs.catalyst.zoho.com/en/serverless/help/appsail/introduction/) is a fully-managed, independent platform for deploying web services to the cloud with ease. You can either deploy your application directly as a Catalyst-managed runtime that supports specific runtimes of Java, Node.js, and Python, or an OCI-compliant container image of your application as a custom-runtime. Catalyst enables you to implement Python SDK in your AppSail applications for [Catalyst-managed runtimes](https://docs.catalyst.zoho.com/en/serverless/help/appsail/catalyst-managed-runtimes/key-concepts/). AppSail supports frameworks of Python such as Flask, Django, Bottle, CherryPy, etc. You can [access help guides](https://docs.catalyst.zoho.com/en/serverless/help/appsail/help-guides/introduction/) for building sample apps in Python. ## Implement Python SDK in AppSail You can implement the Catalyst Python SDK in the codebase of your AppSail service with ease. The SDK will need to be initialized with the request object before each request. Given below is an example of importing and initializing the Python SDK in a Flask web app. ```python from flask import Flask, request, g import os import zcatalyst_sdk from zcatalyst_sdk.catalyst_app import CatalystApp app = Flask(__name__) @app.before_request def before_request(): if request.path.startswith('/admin'): return 'Unauthorized', 401 # if authorized user g.zc_app = zcatalyst_sdk.initialize(req=request) @app.route('/') def index(): return 'Web App with Python Flask!' @app.route('/cache') def cache(): app: CatalystApp = g.zc_app resp = app.cache().segment().put('key', 'value') return resp, 200 listen_port = os.getenv('X_ZOHO_CATALYST_LISTEN_PORT', 9000) app.run(host='0.0.0.0', port = listen_port) ``` > **Info :** Refer to the [SDK Scopes table](https://docs.catalyst.zoho.com/en/sdk/python/v1/sdk-scopes) to determine the required permission level for performing the above operation.