Skip to content
Databasezy

Functions Coming soon

TypeScript functions at your project endpoint

Deploy TypeScript or JavaScript functions and call them at /functions/v1/<name>. They run in isolates on the same edge runtime Supabase uses, in your project's region, with secrets, logs and limits set by your plan. Functions are being built now.

Functions are in development. Everything on this page describes how they work at launch. Coming soon

Functions, step by step

  1. Step 01

    Write a handler

    A Deno-style Deno.serve handler in TypeScript, with npm and JSR imports.

  2. Step 02

    Deploy

    The CLI bundles the function and uploads it; every deploy is a version you can roll back to.

  3. Step 03

    Call or trigger it

    Over HTTP with a project key or a user's session, on a schedule, from a queue or when rows change.

  4. Step 04

    Watch it

    Logs and invocation metrics per function in the portal and the CLI.

What you get

  • Isolates per project

    Each invocation runs in its own isolate from a warm pool for your project, with CPU, memory and wall-clock limits.

    Coming soon
  • Cron, queue and database triggers

    Run a function on a schedule, for each queue message, or when rows in a table change.

    Coming soon
  • Secrets by reference

    Project secrets and database credentials are injected in the cell; the control plane stores references only.

    Coming soon
  • Logs and metrics

    Per-invocation logs with your plan's log retention, and counts, errors and duration per function.

    Coming soon

Live today and coming next

Every part of this service and where it stands. The list changes as each piece ships, and the changelog announces it.

  • TypeScript functions over HTTP, with secrets and logs Coming soon
  • Cron, queue and database-change triggers Coming soon

Live: available on the platform today. Coming soon: being built now; prices and plan limits are already published. See every service on the platform overview.

Try it

Invoking a function with supabase-js.

supabase-js
import { createClient } from "@supabase/supabase-js";

// Your project's endpoint and publishable key, from Project settings in the portal.
const supabase = createClient("https://<ref>.us-east.databasezy.com:8443", "<publishable-key>");

const { data, error } = await supabase.functions.invoke("hello", {
  body: { name: "world" },
});

Plan availability

Generated from the same plan catalogue that billing and the API use.

  • Free

    $0 /mo
    Coming soon

    5 functions, 250K invocations, 150 MB and 150 s per invocation

  • Solo

    $25 /mo
    Coming soon

    25 functions, 2M invocations, 256 MB and 400 s per invocation

  • Team

    $599 /mo
    Coming soon

    100 functions, 10M invocations, 512 MB and 400 s per invocation

  • Enterprise

    Custom
    Coming soon

    Unlimited functions; usage set in your contract

Above the allowance, invocations are $2 per million and compute $0.0000166 per GB-second. On Free the allowance is a hard limit.

Compare every plan on the pricing page

Questions

When can I use them?

Functions are being built now. This page and the docs switch to Live when they ship, and the changelog announces it.

Will my Supabase Edge Functions run?

They are the target: the same runtime, the same Deno.serve handler and the same invoke call from supabase-js. The compatibility notes will list anything that differs at launch.

Where do functions run?

In your project's region, next to its databases. Multi-region execution comes later.

Create your first database

A free instance, no card. Upgrade when you outgrow it; nothing converts silently.