Skip to main content

config

Creates, updates, deletes, gets or lists a config resource.

Overview

Nameconfig
TypeResource
Idvercel.rolling_release.config

Fields

The following fields are returned by SELECT queries:

Project-level rolling release configuration that defines how deployments should be gradually rolled out

NameDatatypeDescription
canary_response_headerbooleanWhether the request served by a canary deployment should return a header indicating a canary was served. Defaults to false when omitted. (false, true) (wire: canaryResponseHeader)
gateobjectAutomated gating configuration. Omitted (the default) means no gating is configured, which is equivalent to enabled: false.
stagesarrayAn array of all the stages required during a deployment release. Each stage defines a target percentage and advancement rules. The final stage must always have targetPercentage: 100.
targetstringThe environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments. (example: production)

Methods

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
getselectid_or_nameteam_id, slugGet the Rolling Releases configuration for a project. The project-level config is simply a template that will be used for any future rolling release, and not the configuration for any active rolling release.
updateupdateid_or_nameteam_id, slugUpdate (or disable) Rolling Releases for a project. When disabling with the resolve-on-disable feature flag enabled, any active rolling release document is resolved using the disableRolloutAction parameter: "abort" to roll back (default), or "complete" to promote the canary to production. When enabling or updating config, changes only affect the next production deployment and do not alter a rollout that's already in-flight. Note: Enabling Rolling Releases automatically enables skew protection on the project with the default value if it wasn't configured already.
deletedeleteid_or_nameteam_id, slugDisable Rolling Releases for a project means that future deployments will not undergo a rolling release. Changing the config never alters a rollout that's already in-flight—it only affects the next production deployment. If you want to also stop the current rollout, call this endpoint to disable the feature, and then call either the /complete or /abort endpoint.

Parameters

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
id_or_namestringProject ID or project name (URL-encoded)
slugstringThe Team slug to perform the request on behalf of.
team_idstringThe Team identifier to perform the request on behalf of. (wire: teamId)

SELECT examples

Get the Rolling Releases configuration for a project. The project-level config is simply a template that will be used for any future rolling release, and not the configuration for any active rolling release.

SELECT
canary_response_header,
gate,
stages,
target
FROM vercel.rolling_release.config
WHERE id_or_name = '{{ id_or_name }}' -- required
AND team_id = '{{ team_id }}'
AND slug = '{{ slug }}'
;

UPDATE examples

Update (or disable) Rolling Releases for a project. When disabling with the resolve-on-disable feature flag enabled, any active rolling release document is resolved using the disableRolloutAction parameter: "abort" to roll back (default), or "complete" to promote the canary to production. When enabling or updating config, changes only affect the next production deployment and do not alter a rollout that's already in-flight. Note: Enabling Rolling Releases automatically enables skew protection on the project with the default value if it wasn't configured already.

UPDATE vercel.rolling_release.config
SET
-- No updatable properties
WHERE
id_or_name = '{{ id_or_name }}' --required
AND team_id = '{{ team_id}}'
AND slug = '{{ slug}}'
RETURNING
rolling_release;

DELETE examples

Disable Rolling Releases for a project means that future deployments will not undergo a rolling release. Changing the config never alters a rollout that's already in-flight—it only affects the next production deployment. If you want to also stop the current rollout, call this endpoint to disable the feature, and then call either the /complete or /abort endpoint.

DELETE FROM vercel.rolling_release.config
WHERE id_or_name = '{{ id_or_name }}' --required
AND team_id = '{{ team_id }}'
AND slug = '{{ slug }}'
;