Serverless Function
Describes a serverless function (edge function, cloud function, or worker) deployed on scalable platforms such as Vercel Edge Functions, Netlify Functions, Cloudflare Workers, Heroku Functions, Fly.io Machines, or Railway services.
Properties
| Name | Type | Description |
|---|---|---|
| id | string | Platform-assigned unique identifier for the function. |
| name | string | Function name used in deployment and routing. |
| platform | string | Platform hosting the serverless function. |
| runtime | string | Runtime environment for the function. |
| handler | string | Entry point file and exported function (e.g., api/hello.js for Next.js API routes). |
| route | string | URL path pattern this function handles. |
| region | string | Deployment region or 'edge' for globally distributed execution. |
| memoryMB | integer | Memory allocated to the function in megabytes. |
| timeoutSeconds | integer | Maximum execution duration before the function is terminated. |
| maxConcurrency | integer | Maximum concurrent executions (platform-specific). |
| scaleToZero | boolean | Whether the function scales to zero when not in use. |
| environment | object | Environment variables available to the function at runtime. |
| triggers | array | Events that invoke this function. |
| deployedAt | string | Deployment timestamp. |
| status | string | Current function status. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/scalable-platforms/main/json-schema/scalable-platforms-serverless-function-schema.json",
"title": "Serverless Function",
"description": "Describes a serverless function (edge function, cloud function, or worker) deployed on scalable platforms such as Vercel Edge Functions, Netlify Functions, Cloudflare Workers, Heroku Functions, Fly.io Machines, or Railway services.",
"type": "object",
"required": ["name", "runtime", "handler"],
"properties": {
"id": {
"type": "string",
"description": "Platform-assigned unique identifier for the function."
},
"name": {
"type": "string",
"description": "Function name used in deployment and routing.",
"pattern": "^[a-z][a-z0-9-_]*$",
"minLength": 1,
"maxLength": 64
},
"platform": {
"type": "string",
"description": "Platform hosting the serverless function.",
"enum": ["vercel", "netlify", "cloudflare-workers", "heroku", "fly-io", "railway", "render", "northflank"]
},
"runtime": {
"type": "string",
"description": "Runtime environment for the function.",
"enum": [
"nodejs18",
"nodejs20",
"nodejs22",
"python3.11",
"python3.12",
"go1.21",
"ruby3.3",
"deno",
"bun",
"edge-runtime",
"workerd"
]
},
"handler": {
"type": "string",
"description": "Entry point file and exported function (e.g., api/hello.js for Next.js API routes).",
"example": "api/hello.js"
},
"route": {
"type": "string",
"description": "URL path pattern this function handles.",
"example": "/api/hello"
},
"region": {
"type": "string",
"description": "Deployment region or 'edge' for globally distributed execution.",
"examples": ["us-east-1", "eu-west-1", "edge", "global"],
"default": "edge"
},
"memoryMB": {
"type": "integer",
"description": "Memory allocated to the function in megabytes.",
"minimum": 128,
"maximum": 3008,
"default": 256
},
"timeoutSeconds": {
"type": "integer",
"description": "Maximum execution duration before the function is terminated.",
"minimum": 1,
"maximum": 900,
"default": 30
},
"maxConcurrency": {
"type": "integer",
"description": "Maximum concurrent executions (platform-specific).",
"minimum": 1
},
"scaleToZero": {
"type": "boolean",
"description": "Whether the function scales to zero when not in use.",
"default": true
},
"environment": {
"type": "object",
"description": "Environment variables available to the function at runtime.",
"additionalProperties": {"type": "string"}
},
"triggers": {
"type": "array",
"description": "Events that invoke this function.",
"items": {
"type": "object",
"required": ["type"],
"properties": {
"type": {
"type": "string",
"enum": ["http", "cron", "queue", "event", "webhook"]
},
"schedule": {
"type": "string",
"description": "Cron schedule expression (for cron triggers).",
"example": "0 */6 * * *"
},
"method": {
"type": "string",
"enum": ["GET", "POST", "PUT", "PATCH", "DELETE", "ANY"],
"description": "HTTP method (for http triggers)."
}
}
}
},
"deployedAt": {
"type": "string",
"format": "date-time",
"description": "Deployment timestamp."
},
"status": {
"type": "string",
"description": "Current function status.",
"enum": ["active", "deploying", "failed", "paused"],
"default": "active"
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/scalable-platforms-serverless-function"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.
A second provider on the same verified email joins the account you already have.