skills/creating-wsgi-applications/SKILL.md
# Creating WSGI Applications This page describes how to create a WSGI application that uses the InterSystems IRIS® database, following the PEP-3333 standard. ## 1 Overview To create a WSGI application that uses InterSystems IRIS, you need only to install a WSGI framework on the same server on which InterSystems IRIS is running, create a callable application, and configure an InterSystems IRIS web application, as described on this page. ## 2 Requirements for the Callable Application When def
npx skillsauth add sorodriguezz/skills-objectscript skills/creating-wsgi-applicationsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This page describes how to create a WSGI application that uses the InterSystems IRIS® database, following the PEP-3333 standard.
To create a WSGI application that uses InterSystems IRIS, you need only to install a WSGI framework on the same server on which InterSystems IRIS is running, create a callable application, and configure an InterSystems IRIS web application, as described on this page.
When defining the callable application, note the follo wing requirements:
Follow the instructions provided by your WSGI framework.
Import any Python modules needed by your code.
Place the program files within a dedicated subdirectory of the InterSystems IRIS installation directory . For reasons of history, many existing web applications are in directories with names of the form <install-dir>/csp/appname, where appname is a short name for the application; this convention keeps the web application files separate from other sub- directories in the installation directory.
Whatever you choose, you will use this directory name when defining the web application.
It is recommended to use InterSystems IRIS as your web application’s database.
An InterSystems IRIS web application will control access to the code and will enable communication with the InterSystems IRIS server. You can configure this web application via the Management Portal or programmatically . For basic information on configuring web applications, see Create and Edit Applications. The critical settings are on the General tab. In particular:
Name must be unique. The convention is to use a partial directory name that matches the directory that contains the program files; for e xample: /csp/appname
This name determines the default directory in which the web server and the Web Gateway will look for files, relati ve to the InterSystems IRIS installation directory.
For Namespace selection, select the InterSystems IRIS namespace in which the embedded Python process will run by default.
For the Enable selection, select WSGI.
Troubleshooting
For Application Name, specify the name of the file that contains the callable application.
If the callable application does not have the default name (application), enter its name into Callable Name.
For WSGI App Directory, specify the directory that contains the callable application.
For Allowed Authentication Methods, do not use Unauthenticated unless unauthenticated access is permitted on this system (specified on the Authentication/Web Session Options page (System Administration > Security > System Security > Authentication/Web Session Options).
If unauthenticated access is not allowed on this system but the application is configured to use unauthenticated access, you will receive 403 errors when trying to access the application.
–
–
If you want InterSystems IRIS to serve the static files, place them into <application-directory>/static and specify Serve Files as Always.
If you want the web server to serve the static files, specify Serve Files as No. (This is recommended for a production web application.)
Ignore the Session Settings options and the Web Settings options (Recurse, Auto Compile, and Lock CSP Name).
The following brief notes offer some guidance in the case of problems with a WSGI application on InterSystems IRIS:
If InterSystems IRIS cannot find the WSGI application, double-check the web application configuration. If the web application is correct, try and import your Python module in embedded python to check if there are dependency issues. You can also check messages.log and WSGI.log files in the <install-dir>/mgr directory. These logs may have more details.
If changes to the Python application do not have any effect, the issue may be caching of the Python modules. To be sure that changes are picked up, restart the InterSystems IRIS instance. If restarting is not an option, temporarily use your framework’s shipped development server to do incremental development on your application.
If database access is not working, note that it is recommended to use InterSystems IRIS as the database. If you are sure you want to use some other database, make sure to give everyone read/write permissions on the database files.
If HTML links are not working, make sure that the links are relative rather than absolute. Because InterSystems IRIS acts as a proxy for WSGI applications, you must specify relative links for links to the different endpoints in the web application.
If you are getting 403 (forbidden) errors, note that if you have installed a normal or higher security instance of IRIS, the unauthenticated option is unsupported by default. Make sure to choose another authentication option when configuring the web application.
If static files ar e not being served, review the comments above about the Serve Files option in the CSP File Settings for the web application.
Applications
Overview of Authentication Mechanisms
See Also
data-ai
# XDBC Gateway XDBC Gateway Overview The XDBC Gateway provides a single interface for connecting InterSystems IRIS® to an external database with JDBC or ODBC. It acts as the modern, streamlined successor to the SQL Gateway. The XDBC Gateway acts like a JDBC or ODBC driver and lets you perform any of the following operations: - Access data stored in third-party relational databases within InterSystems IRIS applications. - Store persistent InterSystems IRIS objects in external relational data
devops
# Windows Installation Guide Windows Installation Overview The Windows Installation Guide provides guidance on installing kit-based deployments on Microsoft Windows. ### 1.1 How to Use This Guide For all installations, you should begin with the Pre-Installation steps. You can then follow the steps for either an attended or unattended installation. The attended installation process is different depending on the setup type you choose. After following the steps for attended installations, use t
testing
# Windows Installation Details Windows User Accounts When installing InterSystems IRIS, you must choose the Windows user account to run the InterSystems service, InterSystems IRIS Controller for <instance-name>. There are two options: - The default SYSTEM account (Windows Local System account). This is used in Minimal security installations. - A defined Windows user account. This account must have interactive login privileges for the duration of the installation; they can be revoked after.
tools
# Web Gateway Guide C.2.1 Method 1: Building the CSP Module as Shared Object with apxs (APache eXtenSion) Appendix D: Add the Web Gateway to a Locked-Down Apache Installation (UNIX®/Linux/macOS) The Web Gateway: Serve InterSystems Web Applications and REST APIs to a Web Client An InterSystems IRIS® web application consists of code which provides content dynamically to a web client (usually a web browser) in response to a request. The InterSystems Web Gateway makes this possible: it is a soft