List Edge Functions

GET /v1/account/edge-functions

List the edge functions in your active account's library, newest first. An edge function is a small JavaScript handler that ngris compiles to a WebAssembly bundle and runs at the edge on the requests (or responses) of the endpoints you attach it to. You attach a built function with an edge-function traffic-policy rule (Add Rule).

Requires the endpoints:read permission on the active account. Reading the library is not plan-gated, so an account that lost the edge_functions entitlement can still see (and delete) its functions; the entitled field tells you whether the plan currently allows creating and changing them.

Query parameters

page integer
1-based page number. Default 1; a value below 1 (or not a number) reads as 1.
page_size integer
Functions per page. Default 20, maximum 100 (a larger value is capped; a value below 1 reads as 20).
q string
Only functions whose name contains this text.
status string
Only functions with this build status: draft, building, ready or failed.

Response (200 OK)

edge_functions array
The page of functions — each one the edge function object plus the two counters below. Empty array when there are none.
edge_functions[].attached_rules integer
How many enabled edge-function rules on the account's endpoints run this function's current bundle. 0 while the function has no bundle_key.
edge_functions[].invocations integer
Lifetime number of executions at the edge, as reported by the edge servers. 0 when none have been recorded yet.
total integer
Number of functions matching q / status across all pages.
page, page_size integer
The page and page size actually applied.
entitled boolean
Whether the active account's plan includes the edge_functions entitlement (needed to create, edit and upload source).

The function fields (uuid, name, phase, status, source, bundle_key, …) are described in the edge function object.

Deprecated: until the sunset this response also carries the legacy integer id and *_id fields. Don't use them; read uuid and the *_uuid fields.

Errors

401 Unauthorized
Missing or invalid auth.
403 Forbidden
No active account, not a member of it, or the caller lacks endpoints:read (Insufficient permissions).
500 Internal Server Error
failed to list edge functions.
Request
curl "https://api.ngris.com/v1/account/edge-functions?status=ready&page_size=50" \ -H "X-API-KEY: <your_api_key>"
Response — 200 OK
{ "edge_functions": [ { "uuid": "019b1f24-1a62-7d27-8411-538ed86e2a62", "account_uuid": "019b24b5-135e-7590-888e-e7cfa7e28ff3", "name": "add-security-headers", "source": "function readRequest() { … }\n…", "bundle_key": "accounts/4821/edgefn/019b1f24-1a62-7d27-8411-538ed86e2a62/bundle.wasm", "bundle_hash": "5f2c8e0b9a7d4c31e6f80a2b4d9c7e15a3f6b8d02c4e9a7f1b3d5c8e0a2f4b6d", "entry": "default", "phase": "on_http_response", "timeout_ms": 50, "memory_mb": 64, "status": "ready", "created_at": "2026-10-12T09:14:03Z", "updated_at": "2026-10-12T09:14:41Z", "disabled_by_plan": false, "attached_rules": 2, "invocations": 184392 } ], "total": 1, "page": 1, "page_size": 50, "entitled": true }
On this page
List Edge Functions