/projects/{project_id}/branches/{branch_id}/triggersbetaCreate a trigger
Creates a trigger for a Function visible on the branch. The required
type discriminator selects the trigger-specific configuration. The
supported types are schedule and storage_object_created. A schedule
trigger uses a numeric five-field cron expression interpreted in UTC. A
storage-object-created trigger fires only after a successful upload to
one exact bucket and may narrow matches to an object-key prefix.
The name must be unique among triggers visible on the branch, including inherited triggers.
Note: This endpoint is currently in Beta.
Quick start
curl "https://console.neon.tech/api/v2/projects/$PROJECT_ID/branches/$BRANCH_ID/triggers" \
-X POST \
-H "Authorization: Bearer $NEON_API_KEY"import { createNeonClient, raw } from '@neon/sdk';
const neon = createNeonClient({ apiKey: process.env.NEON_API_KEY });
const { data } = await raw.createProjectBranchTrigger({
client: neon.client,
path: {
project_id: process.env.PROJECT_ID,
branch_id: process.env.BRANCH_ID
}
});Parameters
project_idThe Neon project ID
branch_idThe Neon branch ID
Request body
4 required Required: type, function_slug, name, schedule.cron.
typeTrigger type discriminator.
function_slugThe branch-local Function slug to invoke.
nameHuman-readable name, unique among triggers visible on the branch.
≥1 chars, ≤256 chars
scheduleA numeric five-field cron schedule interpreted in UTC.
function_pathPath passed to the target Function. Defaults to /.
≥1 chars, ≤2048 chars
enabledWhether future occurrences should be scheduled.
Response
201Trigger created
Errors
General error
This endpoint can return the standard Neon API error response.
Response fields
messageRequired. Human-readable error message.codeRequired. Machine-readable error code.request_idOptional. Request identifier for debugging. You can provide one with theX-Request-IDheader.
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.








