API Reference

This is the API reference for the modal Python package, which allows you to run distributed applications on Modal.

The reference is intended to be limited to low-level descriptions of various programmatic functionality. If you’re just getting started with Modal, we would instead recommend looking at the guide first or to get started quickly with an example.

Application construction

App The main unit of deployment for code on Modal
App.function Decorator for registering a function with an App
App.cls Decorator for registering a class with an App

Serverless execution

Function A serverless function backed by an autoscaling container pool
Cls A serverless class supporting parameterization and lifecycle hooks

Extended Function configuration

Class parameterization

parameter Used to define class parameters, akin to a Dataclass field

Lifecycle hooks

enter Decorator for a method that will be executed during container startup
exit Decorator for a method that will be executed during container shutdown
method Decorator for exposing a method as an invokable function

Web integrations

web_endpoint Decorator for exposing a simple FastAPI-based endpoint
asgi_app Decorator for functions that construct an ASGI web application
wsgi_app Decorator for functions that construct a WSGI web application
web_server Decorator for functions that construct an HTTP web server

Function semantics

batched Decorator that marks a function as receiving batched inputs

Scheduling

Cron A schedule that runs based on cron syntax
Period A schedule that runs at a fixed interval

Exception handling

Retries Function retry policy for input failures

Sandboxed execution

Sandbox An interface for restricted code execution
ContainerProcess An object representing a sandboxed process
FileIO A handle for a file in the Sandbox filesystem

Container configuration

Image An API for specifying container images
Secret A pointer to secrets that will be exposed as environment variables

Data primitives

Persistent storage

Volume Distributed storage supporting highly performant parallel reads
CloudBucketMount Storage backed by a third-party cloud bucket (S3, etc.)
NetworkFileSystem Shared, writeable cloud storage (superseded by modal.Volume)

In-memory storage

Dict A distributed key-value store
Queue A distributed FIFO queue

Networking

Proxy An object that provides a static outbound IP address for containers
forward A context manager for publicly exposing a port from a container