Modal is a serverless cloud for AI, data, and general compute. Developers define infrastructure as code in Python (with JavaScript and Go SDKs) and run functions, GPUs, sandboxes, web endpoints, cron jobs, and volumes on demand. The primary developer interface is the Modal SDK and CLI communicating with a gRPC backend, not a conventional first-party REST API. User-deployed Modal Functions can be exposed as HTTPS web endpoints (@modal.fastapi_endpoint / asgi_app / wsgi_app / web_server) on *.modal.run, and Sandboxes can expose ports via network tunnels.
Modal publishes 22 API contracts indexed on the APIs.io network, including Web Endpoints (Representative) API, and 21 more. Tagged areas include Serverless, Compute, GPU, AI Infrastructure, and Sandbox.
The Modal catalog on APIs.io includes 1 Spectral governance ruleset.
Modal’s developer surface includes documentation, engineering blog, CLI, authentication, changelog, API reference, getting-started guide, and 36 more developer resources.
Regulatory Posture applies to this provider. Its tags matched the
Horizontal (data, software, accessibility, platform) regime, so
Regulatory Posture carries 15 points of the composite.
If this regime is wrong for your business, say so on your
provider repo — the
applicability map is public and we will correct it.
Create-or-Update Ergonomics applies to this provider. This API accepts writes, so it
carries 10 points of the composite. It is scored from the published contracts
themselves: whether a caller can create-or-update in one call, whether the write accepts a key the caller already
holds, and whether the response says which branch ran. Without that, every write needs a search-and-branch in
front of it, and the first time that check is skipped a duplicate record is created.
Scored against the observed mean rather than raw — a provider at the catalog average is unchanged by this facet,
not penalised by it.
The six quality facets above are damped to 75 points between them,
because the conditional facet above carries the other
25. That is why each facet's contribution is shown against a damped
maximum: raising a quality facet moves the composite by 75% of its nominal
weight, not 100%. The full arithmetic is at apis.io/rating/.
Show this score on your site.
It updates itself when the score changes. Paste this where you link to your API docs:
<a href="https://apis.io/providers/modal-labs/"><img src="https://apis.io/badge/modal-labs/card.svg" alt="Modal on APIs.io — Kin Score by API Evangelist"></a>
Other styles, a README pill and a shields.io endpoint are on the badge page.
Raise your score.
Agent readiness — checks not met, largest first (exact, from this profile):
MCP Server+12 pts — deployment.mode + probe verdict on the mcp/ manifest, not the pointer; an unprobed slug falls back to authorship
A2A Agent Card+8 pts — a2a/-a2a.yml manifest, graded on conformance.grade against A2A 1.0.0
Request/Response Examples+7 pts — share of operations carrying request/response examples; else an Examples / Code Samples link
Delegated User Identity+6 pts — a served discovery document listing authorization_code in grant_types_supported (served), else an oauth2 authorizationCode flow or openIdConnect declared in an OpenAPI (documented)
Typed Event Surface+6 pts — AsyncAPI document, OR webhooks/callbacks objects in the as-published OpenAPI, OR common[].type includes Webhooks
6 more unmet checks in the Agent Readiness table above.
Kin Score — facets with the most composite points still available (weight × headroom):
The Kin Score Market layer reads a provider inside its market:
its position, and how deep its integrations go. Depth is only comparable within a position. Provisional and unweighted:
not part of the Kin Score or agent readiness.
Registered MCP server and declares compatibility are report only — not weighted.
Undeclared means we found nothing we can read, so there is no number: we never infer integrations.
Standards this provider implements or carries. De facto ones are profiled and measured by the API Commons; formal ones come from the standards directory and are linked by the provider's own tags. The evidence column says how each claim was established — not that it was made.
Decorate Python functions with @app.function to run them remotely on Modal's cloud. Invoke deployed functions synchronously (.remote), asynchronously (.spawn), in parallel (.map...
Distributed, high-performance file system volumes for sharing state across functions and containers, managed via modal.Volume in the SDK and the `modal volume` CLI. Read/write, ...
Distributed key-value store (modal.Dict) and distributed queue (modal.Queue) for passing state and messages between functions and containers. Accessed exclusively through the SD...
Securely inject environment variables and credentials into functions and sandboxes via modal.Secret, managed in the dashboard, CLI, or SDK (Secret.from_name / from_dict). SDK/CL...
Run functions on a recurring schedule using modal.Period or modal.Cron passed to @app.function(schedule=...). Schedules are declared in code and managed through deployment; ther...
The `modal` command-line interface for deploying apps, running functions, tailing logs, managing volumes/secrets/dicts, and launching shells. Wraps the same gRPC control plane t...
Defines, deploys, and invokes serverless Python Functions on Modal with per-function GPU/CPU/memory configuration, autoscaling, and sub-second cold starts.
Overlays applied on top of this provider's contracts. Each card says who wrote it: a document the provider publishes, or one API Evangelist derived or generated.
aid: modal-labs
url: https://raw.githubusercontent.com/api-evangelist/modal-labs/refs/heads/main/apis.yml
name: Modal
kind: company
description: Modal is a serverless cloud for AI, data, and general compute. Developers define infrastructure as code in Python
(with JavaScript and Go SDKs) and run functions, GPUs, sandboxes, web endpoints, cron jobs, and volumes on demand. The primary
developer interface is the Modal SDK and CLI communicating with a gRPC backend, not a conventional first-party REST API.
User-deployed Modal Functions can be exposed as HTTPS web endpoints (@modal.fastapi_endpoint / asgi_app / wsgi_app / web_server)
on *.modal.run, and Sandboxes can expose ports via network tunnels.
deliveryModel:
model: saas
open_source: false
commercial: true
callable_host: true
label: Hosted service · you call their endpoint
confidence: high
source:
- openapi
- pricing
generated: '2026-08-28'
method: derived
accessModel:
pricing: freemium
onboarding: self-serve
trial: false
try_now: true
public: false
gated: none
gated_source:
- onboarding
label: Freemium · Self-serve signup
confidence: medium
source:
- plans
- authentication
- security
generated: '2026-11-06'
method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/modal-labs.png
tags:
- Serverless
- Compute
- GPU
- AI Infrastructure
- Sandbox
- Infrastructure as Code
tags_raw:
- Serverless
- Compute
- GPU
- AI Infrastructure
- Sandboxes
- Infrastructure as Code
created: '2026-07-01'
modified: '2026-09-18'
specificationVersion: '0.23'
apis:
- aid: modal-labs:modal-labs-functions-api
name: Modal Functions and Remote Invocation
tags:
- Functions
- Remote Execution
- Serverless
- SDK
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/apps
properties:
- url: https://modal.com/docs/guide/apps
type: Documentation
- url: https://modal.com/docs/reference/modal.Function
type: APIReference
description: Decorate Python functions with @app.function to run them remotely on Modal's cloud. Invoke deployed functions
synchronously (.remote), asynchronously (.spawn), in parallel (.map), or look them up from another app via Function.from_name.
This surface is SDK/gRPC-only - there is no first-party REST endpoint; invocation happens through the Modal client libraries.
- aid: modal-labs:modal-labs-volumes-api
name: Modal Volumes
tags:
- Volumes
- Storage
- Persistence
- SDK
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/volumes
properties:
- url: https://modal.com/docs/guide/volumes
type: Documentation
- url: https://modal.com/docs/reference/modal.Volume
type: APIReference
description: Distributed, high-performance file system volumes for sharing state across functions and containers, managed
via modal.Volume in the SDK and the `modal volume` CLI. Read/write, commit, and reload operations are SDK/CLI-only with
no public REST endpoint.
- aid: modal-labs:modal-labs-dicts-queues-api
name: Modal Dicts and Queues
tags:
- Dicts
- Queues
- Key-Value Store
- Messaging
- SDK
tags_raw:
- Dicts
- Queues
- Key Value
- Messaging
- SDK
- Key-Value
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/dicts-and-queues
properties:
- url: https://modal.com/docs/guide/dicts-and-queues
type: Documentation
- url: https://modal.com/docs/reference/modal.Dict
type: APIReference
description: Distributed key-value store (modal.Dict) and distributed queue (modal.Queue) for passing state and messages
between functions and containers. Accessed exclusively through the SDK; no public REST interface.
- aid: modal-labs:modal-labs-secrets-api
name: Modal Secrets
tags:
- Secrets
- Configuration
- Credentials
- SDK
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/secrets
properties:
- url: https://modal.com/docs/guide/secrets
type: Documentation
- url: https://modal.com/docs/reference/modal.Secret
type: APIReference
description: Securely inject environment variables and credentials into functions and sandboxes via modal.Secret, managed
in the dashboard, CLI, or SDK (Secret.from_name / from_dict). SDK/CLI-only; no public REST endpoint.
- aid: modal-labs:modal-labs-scheduled-api
name: Modal Cron and Scheduled Functions
tags:
- Cron
- Scheduling
- Job
- SDK
tags_raw:
- Cron
- Scheduling
- Jobs
- SDK
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/cron
properties:
- url: https://modal.com/docs/guide/cron
type: Documentation
- url: https://modal.com/docs/reference/modal.Cron
type: APIReference
description: Run functions on a recurring schedule using modal.Period or modal.Cron passed to @app.function(schedule=...).
Schedules are declared in code and managed through deployment; there is no REST scheduling API.
- aid: modal-labs:modal-labs-images-gpu-api
name: Modal Images and GPU
tags:
- Image
- GPU
- Containers
- Environment
- SDK
tags_raw:
- Images
- GPU
- Containers
- Environments
- SDK
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/images
properties:
- url: https://modal.com/docs/guide/images
type: Documentation
- url: https://modal.com/docs/reference/modal.Image
type: APIReference
description: Define container images programmatically with modal.Image (from_registry, debian_slim, pip_install, run_commands)
and attach GPUs by passing gpu= (T4, L4, A10, L40S, A100, H100, H200, B200) to a function. Image build and GPU attachment
are declared in code and resolved by the gRPC backend; no public REST endpoint.
- aid: modal-labs:modal-labs-cli
name: Modal CLI
tags:
- CLI
- Tooling
- Deployment
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/cli/latest/intro
properties:
- url: https://modal.com/docs/cli/latest/intro
type: Documentation
description: The `modal` command-line interface for deploying apps, running functions, tailing logs, managing volumes/secrets/dicts,
and launching shells. Wraps the same gRPC control plane the SDK uses; it is the primary operational entry point alongside
the SDK.
- aid: modal-labs:modal-labs-modal-web-endpoints-representative-api
name: Modal Web Endpoints (Representative) API
description: The Modal Web Endpoints (Representative) API from Modal — 2 operation(s) for modal web endpoints (representative).
humanURL: https://modal.com/docs/guide/apps
baseURL: https://<workspace>--<app>-<function>.modal.run
tags:
- Modal Web Endpoints (Representative)
properties:
- type: OpenAPI
url: openapi/modal-labs-modal-web-endpoints-representative-api-openapi.yml
- type: Documentation
url: https://modal.com/docs/guide/webhooks
- type: APIReference
url: https://modal.com/docs/reference/modal.fastapi_endpoint
- type: PostmanCollection
url: collections/modal-labs.postman_collection.json
- type: OpenCollection
url: collections/modal-labs.opencollection.json
- type: Documentation
url: https://modal.com/docs/guide/sandbox
- type: APIReference
url: https://modal.com/docs/reference/modal.Sandbox
- aid: modal-labs:modal-functions-api
name: Modal Functions API
tags:
- Functions
- Serverless
- Python
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/apps
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/apps
type: Documentation
- url: https://modal.com/docs/reference/modal.Function
type: APIReference
- url: grpc/modal-labs-api.proto
type: Protobuf
name: Modal gRPC control plane (modal.client.ModalClient, 251 RPCs)
description: Defines, deploys, and invokes serverless Python Functions on Modal with per-function GPU/CPU/memory configuration,
autoscaling, and sub-second cold starts.
- aid: modal-labs:modal-apps-api
name: Modal Apps API
tags:
- Application
- Deployment
tags_raw:
- Apps
- Deployments
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/apps
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/apps
type: Documentation
- url: https://modal.com/docs/reference/modal.App
type: APIReference
description: Logical grouping of functions, classes, and resources deployed and versioned together as an App.
- aid: modal-labs:modal-sandboxes-api
name: Modal Sandboxes API
tags:
- Sandbox
- Code Execution
- Agents
tags_raw:
- Sandboxes
- Code Execution
- Agents
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/sandbox
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/sandbox
type: Documentation
- url: https://modal.com/docs/reference/modal.Sandbox
type: APIReference
description: Spins up isolated, GPU-capable sandbox containers for running untrusted code (LLM agents, tool use, code-interpreter
workflows) with file-system and network controls.
- aid: modal-labs:modal-images-api
name: Modal Images API
tags:
- Image
- Containers
- Builds
tags_raw:
- Images
- Containers
- Build
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/images
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/images
type: Documentation
- url: https://modal.com/docs/reference/modal.Image
type: APIReference
description: Builds, caches, and rehydrates container images with pip / conda / apt / uv layers and supports custom Dockerfiles
for function and sandbox runtimes.
- aid: modal-labs:modal-volumes-api
name: Modal Volumes API
tags:
- Volumes
- Storage
- Persistent
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/volumes
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/volumes
type: Documentation
- url: https://modal.com/docs/reference/modal.Volume
type: APIReference
description: Distributed read/write Volumes for persistent storage of model weights, datasets, and caches across function
invocations.
- aid: modal-labs:modal-network-file-systems-api
name: Modal Network File Systems API
tags:
- Filesystem
- NFS
- Storage
tags_raw:
- File System
- NFS
- Storage
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/network-file-systems
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/network-file-systems
type: Documentation
description: Network File Systems for shared, mountable file storage across multiple functions and sandboxes.
- aid: modal-labs:modal-secrets-api
name: Modal Secrets API
tags:
- Secrets
- Configuration
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/secrets
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/secrets
type: Documentation
- url: https://modal.com/docs/reference/modal.Secret
type: APIReference
description: Stores environment-variable secrets and API keys, mountable into functions and sandboxes at runtime.
- aid: modal-labs:modal-web-endpoints-api
name: Modal Web Endpoints API
tags:
- HTTP
- Web
- WSGI
- ASGI
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/webhooks
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/webhooks
type: Documentation
description: Publishes HTTP, WebSocket, and ASGI/WSGI web endpoints (FastAPI, Flask, Streamlit) backed by serverless Modal
containers with custom domains and TLS.
- aid: modal-labs:modal-cron-api
name: Modal Cron API
tags:
- Cron
- Schedule
tags_raw:
- Cron
- Schedules
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/cron
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/cron
type: Documentation
description: Schedules functions to run on cron expressions with retries, time-zone awareness, and job history.
- aid: modal-labs:modal-queues-api
name: Modal Queues API
tags:
- Queues
- Messaging
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/reference/modal.Queue
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/reference/modal.Queue
type: APIReference
description: Distributed FIFO queues for asynchronous workloads, work-stealing, and producer/consumer patterns across functions.
- aid: modal-labs:modal-dicts-api
name: Modal Dicts API
tags:
- Dicts
- Key-Value Store
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/reference/modal.Dict
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/reference/modal.Dict
type: APIReference
description: Distributed dictionaries (key-value stores) for sharing state between functions and across container restarts.
- aid: modal-labs:modal-tunnels-api
name: Modal Tunnels API
tags:
- Tunnels
- Networking
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/tunnels
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/tunnels
type: Documentation
description: Forwards local ports into Modal containers (and vice versa) for development, debugging, and hybrid networking.
- aid: modal-labs:modal-environments-api
name: Modal Environments API
tags:
- Environment
- Workspace
tags_raw:
- Environments
- Workspaces
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/environments
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/environments
type: Documentation
description: Multi-environment isolation (dev / staging / prod) within a workspace, each with its own apps, secrets, and
quotas.
- aid: modal-labs:modal-token-api
name: Modal Token / Workspace API
tags:
- Workspace
- Tokens
- Authentication
tags_raw:
- Workspace
- Tokens
- Auth
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
humanURL: https://modal.com/docs/guide/workspaces
baseURL: https://api.modal.com
properties:
- url: https://modal.com/docs/guide/workspaces
type: Documentation
description: Manages workspaces, tokens, members, and authentication for the Modal control plane.
common:
- type: AgenticAccess
url: agentic-access/modal-labs-agentic-access.yml
- type: DomainSecurity
url: security/modal-labs-domain-security.yml
- type: GitHubOrganization
url: https://github.com/modal-labs
- type: LinkedIn
url: https://www.linkedin.com/company/modal-labs
- type: Website
url: https://modal.com/
- type: Documentation
url: https://modal.com/docs
- type: Plans
url: plans/modal-labs-plans-pricing.yml
- type: RateLimits
url: rate-limits/modal-labs-rate-limits.yml
- type: FinOps
url: finops/modal-labs-finops.yml
- url: https://modal.com/blog/atom.xml
type: Blog
- type: Protobuf
url: grpc/modal-labs-api.proto
- type: Packages
url: packages/modal-labs-packages.yml
- type: SDKs
url: packages/modal-labs-packages.yml
- type: CLI
url: cli/modal-labs-cli.yml
- type: AgentSkill
url: skills/_index.yml
- type: LLMsTxt
url: llms/modal-labs-llms.txt
- type: WellKnown
url: well-known/modal-labs-well-known.yml
- type: OpenIDConnect
url: https://oidc.modal.com/.well-known/openid-configuration
- type: Authentication
url: authentication/modal-labs-authentication.yml
- type: Conventions
url: conventions/modal-labs-conventions.yml
- type: Idempotency
url: conventions/modal-labs-conventions.yml
- type: ErrorCatalog
url: errors/modal-labs-problem-types.yml
- type: DataModel
url: data-model/modal-labs-data-model.yml
- type: Conformance
url: conformance/modal-labs-conformance.yml
- type: Compliance
url: security/modal-labs-trust-center.yml
- type: TrustCenter
url: https://trust.modal.com/
- type: VulnerabilityDisclosure
url: security/modal-labs-vulnerability-disclosure.yml
- type: Security
url: security/modal-labs-vulnerability-disclosure.yml
- type: Lifecycle
url: lifecycle/modal-labs-lifecycle.yml
- type: Deprecation
url: https://modal.com/docs/guide/feature-maturity
- type: StatusPage
url: https://status.modal.com/
- type: ChangeLog
url: https://modal.com/docs/sdk/py/releases
- type: Overlay
url: overlays/modal-labs-modal-web-endpoints-representative-api-overlay.yaml
- type: DeveloperPortal
url: https://modal.com/docs
- type: APIReference
url: https://modal.com/docs/sdk/py/latest
- type: GettingStarted
url: https://modal.com/docs/examples/hello_world
- type: Playground
url: https://modal.com/playground
- type: Pricing
url: https://modal.com/pricing
- type: SignUp
url: https://modal.com/signup
- type: Login
url: https://modal.com/login
- type: TermsOfService
url: https://modal.com/legal/terms
- type: PrivacyPolicy
url: https://modal.com/legal/privacy-policy
- type: Support
url: https://modal.com/slack
x-enrichment:
date: '2026-09-18'
status: enriched
artifacts_added: 21
pass: local-v3
maintainers:
- FN: Kin Lane
email: kin@apievangelist.com
Modal API — frequently asked questions
Does Modal have an API?
Yes. APIs.io lists 22 APIs from Modal, including Modal Functions and Remote Invocation, Modal Volumes and Modal Dicts and Queues, and 19 more.
Is there an OpenAPI specification for the Modal API?
Yes. APIs.io indexes 1 OpenAPI specification for Modal, each linked for download from this page.
How do I authenticate with the Modal API?
Modal documents its authentication (4 schemes). The details are profiled on APIs.io as Modal Labs Authentication.
How much does the Modal API cost?
Modal publishes its prices; its Starter plan is $0 + compute/ month as of 2026-10-28. APIs.io lists 9 pricing plans for Modal, with each plan's price, limits and inclusions under Pricing on this page.
Is the Modal API ready for AI agents?
Modal has a Kin Score of 64.2 out of 100 (strong) and an Agent Readiness score of 33.0 (agent-ready), scored by API Evangelist on 2026-11-06.
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.