Neon now has realtime: Live SQL with full reactivity. Try it in Beta today
/APIs & SDKs/Functions/Update a trigger
PATCH/projects/{project_id}/branches/{branch_id}/triggers/{trigger_id}beta

Update a trigger

Applies a partial update. The required type discriminator must identify the existing trigger kind. The supported types are schedule and storage_object_created. Editing an inherited trigger creates a child-local shadow with the same trigger_id; it remains disabled unless this request explicitly enables it. For a schedule trigger, updating the schedule or enabled state increments version and recomputes next_run_at.

Disabling stops future scheduling but does not cancel occurrences already committed for delivery. For storage_object_created, the configuration selects one exact bucket. An omitted object-key prefix matches every key in that bucket; a present prefix is matched byte-for-byte and case-sensitively against the full key, without path normalization or a path-segment boundary.

Note: This endpoint is currently in Beta.

Markdown for AI context

Quick start

REST API - curl
curl "https://console.neon.tech/api/v2/projects/$PROJECT_ID/branches/$BRANCH_ID/triggers/$TRIGGER_ID" \
  -X PATCH \
  -H "Authorization: Bearer $NEON_API_KEY"
Also available in
import { createNeonClient, raw } from '@neon/sdk';

const neon = createNeonClient({ apiKey: process.env.NEON_API_KEY });
const { data } = await raw.updateProjectBranchTrigger({
  client: neon.client,
  path: {
    project_id: process.env.PROJECT_ID,
    branch_id: process.env.BRANCH_ID,
    trigger_id: process.env.TRIGGER_ID
  }
});

Parameters

Project ID
project_id
string

The Neon project ID

Branch ID
branch_id
string

The Neon branch ID

Trigger ID
trigger_id
string

The opaque, project-wide trigger ID

Request body

1 required Required: type.

Type
type
string

Trigger type discriminator; it does not change the trigger type.

schedule
Name
name
string

≥1 chars, ≤256 chars

Function slug
function_slug
string

Replacement branch-local Function slug.

Function path
function_path
string

≥1 chars, ≤2048 chars

Schedule
schedule
object

A numeric five-field cron schedule interpreted in UTC.

Enabled
enabled
boolean

True enables and false disables future scheduling.

Response

200

The updated trigger

Depth
"trigger": (object),req

Errors

default

General error

This endpoint can return the standard Neon API error response.

Response fields

  • message Required. Human-readable error message.
  • code Required. Machine-readable error code.
  • request_id Optional. Request identifier for debugging. You can provide one with the X-Request-ID header.

Retry guidance

If no response is returned, the request may still have reached the server. This is why retry safety depends on the method and status code.

Idempotent methods (GET, HEAD, OPTIONS) are generally safe to retry after a network error or timeout. Non-idempotent methods (POST, PATCH, DELETE, PUT) can change state, so avoid automatic retries unless your workflow can tolerate duplicate effects.

Responses with 423 Locked or 503 Service Unavailable are safe to retry. 423 Locked means the resource is temporarily locked, usually because another operation is in progress.

Was this page helpful?

On this page

Copy neon init command