supabase-functions
Library for Supabase Functions
Decision gist · record as of 2026-08-14
Yes. The package is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively under MIT. It directly solves the problem of calling Supabase Edge Functions from Python with minimal boilerplate. Choose it if you are already using Supabase and need a clean client library; if you are not using Supabase, it has no value.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.9 or later; you must have a Supabase project URL and valid authentication credentials.
- Low friction installation with a pure-Python wheel.
- The package is actively maintained with a recent commit on 2026-08-12, and depends on three lightweight runtime libraries: httpx, strenum, and yarl.
License · maintenance · safety
MIT (permissive) — MIT license permits use, modification, and distribution with minimal restrictions, making it suitable for most commercial and open-source projects.
last release 2026-06-04 (71 days) · last repo commit 2026-08-12 · 2,557 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 33,907,675 downloads/mo, #765 on PyPI
Alternatives
Verify before relying
pip install supabase_functions
from supabase_functions import AsyncFunctionsClient
import asyncio
async def call_function():
fc = AsyncFunctionsClient("https://<project_ref>.functions.supabase.co", {"Authorization": "Bearer key"})
res = await fc.invoke("function-name", {"body": {"key": "value"}})
return res
asyncio.run(call_function())- Whether the package supports custom request timeouts or retry logic beyond what httpx provides.
- Performance characteristics when invoking many functions in parallel or under high concurrency.
What it is and what it does
supabase_functions is a Python client library for calling Supabase Edge Functions—serverless functions hosted on Supabase's infrastructure. It wraps HTTP invocation behind two client classes: AsyncFunctionsClient for async/await workflows and SyncFunctionsClient for blocking calls. Both accept a project URL and optional headers (typically for authentication) and expose an invoke() method to call named functions with request bodies.
The library sits on top of httpx for HTTP transport, strenum for enum handling, and yarl for URL parsing. It's designed for developers building Python applications that need to trigger Supabase serverless functions as part of their workflow—for example, payment processing, data transformation, or event-driven tasks. The synchronous variant is straightforward for scripts and simple integrations; the async variant suits high-concurrency applications.
Use it for
- Call Supabase Edge Functions from a Python backend to process payments or handle webhooks.
- Trigger serverless data transformations or cleanup tasks from a scheduled Python job.
- Invoke remote business logic from a Python CLI tool or utility without embedding it locally.
- Build a Python microservice that orchestrates multiple Supabase functions in parallel using async/await.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The package is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively under MIT. It directly solves the problem of calling Supabase Edge Functions from Python with minimal boilerplate. Choose it if you are already using Supabase and need a clean client library; if you are not using Supabase, it has no value.
Install
supabase-functions on PyPI
Before you install
Low friction installation with a pure-Python wheel. The package is actively maintained with a recent commit on 2026-08-12, and depends on three lightweight runtime libraries: httpx, strenum, and yarl.
Requires Python 3.9 or later; you must have a Supabase project URL and valid authentication credentials.
License in practice
MIT license permits use, modification, and distribution with minimal restrictions, making it suitable for most commercial and open-source projects.
Quickstart
pip install supabase_functions
from supabase_functions import AsyncFunctionsClient
import asyncio
async def call_function():
fc = AsyncFunctionsClient("https://<project_ref>.functions.supabase.co", {"Authorization": "Bearer key"})
res = await fc.invoke("function-name", {"body": {"key": "value"}})
return res
asyncio.run(call_function())
Verify before relying
- Whether the package supports custom request timeouts or retry logic beyond what httpx provides.
- Performance characteristics when invoking many functions in parallel or under high concurrency.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packageshttpxstrenumyarl |
| Maintenance | Actively maintained 71 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 33,907,675 / month, #765 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: supabase_functions-2.31.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “supabase edge functions client”
- supabase-functionsProvides Python clients to invoke Supabase Edge Functions…
- supafuncSupafunc provides a Python client library for invoking Supabase…
- supabasePython client library for Supabase that provides unified access to…
Give your agent the search over MCP, or paste the wish link into any chat.
More WWW/HTTP packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.
HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.
Install it if you are building new projects or modernizing existing ones that rely on HTTP.
A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.
aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.
Install it if you need async HTTP client or server capabilities in asyncio-based applications.
See also supafunc · supabase · supabase-auth · storage3 · realtime · gotrue · synchronicity · libsql-client · async-stripe · simple-rest-client