@vercel/sdk 1.8.0 → 1.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -2
- package/bin/mcp-server.js +2900 -969
- package/bin/mcp-server.js.map +37 -16
- package/docs/sdks/edgeconfig/README.md +80 -0
- package/docs/sdks/rollingrelease/README.md +487 -0
- package/esm/__tests__/edgeconfig.test.js +17 -0
- package/esm/__tests__/edgeconfig.test.js.map +1 -1
- package/esm/__tests__/projects.test.js +13 -15
- package/esm/__tests__/projects.test.js.map +1 -1
- package/esm/__tests__/rollingrelease.test.d.ts +2 -0
- package/esm/__tests__/rollingrelease.test.d.ts.map +1 -0
- package/esm/__tests__/rollingrelease.test.js +326 -0
- package/esm/__tests__/rollingrelease.test.js.map +1 -0
- package/esm/__tests__/teams.test.js +2 -2
- package/esm/__tests__/teams.test.js.map +1 -1
- package/esm/__tests__/vercel.test.js +2 -2
- package/esm/__tests__/vercel.test.js.map +1 -1
- package/esm/funcs/edgeConfigPatchEdgeConfigItems.d.ts +20 -0
- package/esm/funcs/edgeConfigPatchEdgeConfigItems.d.ts.map +1 -0
- package/esm/funcs/edgeConfigPatchEdgeConfigItems.js +96 -0
- package/esm/funcs/edgeConfigPatchEdgeConfigItems.js.map +1 -0
- package/esm/funcs/rollingReleaseApproveRollingReleaseStage.d.ts +20 -0
- package/esm/funcs/rollingReleaseApproveRollingReleaseStage.d.ts.map +1 -0
- package/esm/funcs/rollingReleaseApproveRollingReleaseStage.js +95 -0
- package/esm/funcs/rollingReleaseApproveRollingReleaseStage.js.map +1 -0
- package/esm/funcs/rollingReleaseCompleteRollingRelease.d.ts +20 -0
- package/esm/funcs/rollingReleaseCompleteRollingRelease.d.ts.map +1 -0
- package/esm/funcs/rollingReleaseCompleteRollingRelease.js +95 -0
- package/esm/funcs/rollingReleaseCompleteRollingRelease.js.map +1 -0
- package/esm/funcs/rollingReleaseDeleteRollingReleaseConfig.d.ts +20 -0
- package/esm/funcs/rollingReleaseDeleteRollingReleaseConfig.d.ts.map +1 -0
- package/esm/funcs/rollingReleaseDeleteRollingReleaseConfig.js +94 -0
- package/esm/funcs/rollingReleaseDeleteRollingReleaseConfig.js.map +1 -0
- package/esm/funcs/rollingReleaseGetRollingRelease.d.ts +20 -0
- package/esm/funcs/rollingReleaseGetRollingRelease.d.ts.map +1 -0
- package/esm/funcs/rollingReleaseGetRollingRelease.js +95 -0
- package/esm/funcs/rollingReleaseGetRollingRelease.js.map +1 -0
- package/esm/funcs/rollingReleaseGetRollingReleaseConfig.d.ts +20 -0
- package/esm/funcs/rollingReleaseGetRollingReleaseConfig.d.ts.map +1 -0
- package/esm/funcs/rollingReleaseGetRollingReleaseConfig.js +94 -0
- package/esm/funcs/rollingReleaseGetRollingReleaseConfig.js.map +1 -0
- package/esm/funcs/rollingReleaseUpdateRollingReleaseConfig.d.ts +20 -0
- package/esm/funcs/rollingReleaseUpdateRollingReleaseConfig.d.ts.map +1 -0
- package/esm/funcs/rollingReleaseUpdateRollingReleaseConfig.js +94 -0
- package/esm/funcs/rollingReleaseUpdateRollingReleaseConfig.js.map +1 -0
- package/esm/lib/config.d.ts +3 -3
- package/esm/lib/config.js +3 -3
- package/esm/mcp-server/mcp-server.js +1 -1
- package/esm/mcp-server/server.d.ts.map +1 -1
- package/esm/mcp-server/server.js +15 -1
- package/esm/mcp-server/server.js.map +1 -1
- package/esm/mcp-server/tools/edgeConfigPatchEdgeConfigItems.d.ts +7 -0
- package/esm/mcp-server/tools/edgeConfigPatchEdgeConfigItems.d.ts.map +1 -0
- package/esm/mcp-server/tools/edgeConfigPatchEdgeConfigItems.js +28 -0
- package/esm/mcp-server/tools/edgeConfigPatchEdgeConfigItems.js.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseApproveRollingReleaseStage.d.ts +7 -0
- package/esm/mcp-server/tools/rollingReleaseApproveRollingReleaseStage.d.ts.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseApproveRollingReleaseStage.js +28 -0
- package/esm/mcp-server/tools/rollingReleaseApproveRollingReleaseStage.js.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseCompleteRollingRelease.d.ts +7 -0
- package/esm/mcp-server/tools/rollingReleaseCompleteRollingRelease.d.ts.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseCompleteRollingRelease.js +28 -0
- package/esm/mcp-server/tools/rollingReleaseCompleteRollingRelease.js.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseDeleteRollingReleaseConfig.d.ts +7 -0
- package/esm/mcp-server/tools/rollingReleaseDeleteRollingReleaseConfig.d.ts.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseDeleteRollingReleaseConfig.js +28 -0
- package/esm/mcp-server/tools/rollingReleaseDeleteRollingReleaseConfig.js.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseGetRollingRelease.d.ts +7 -0
- package/esm/mcp-server/tools/rollingReleaseGetRollingRelease.d.ts.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseGetRollingRelease.js +28 -0
- package/esm/mcp-server/tools/rollingReleaseGetRollingRelease.js.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseGetRollingReleaseConfig.d.ts +7 -0
- package/esm/mcp-server/tools/rollingReleaseGetRollingReleaseConfig.d.ts.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseGetRollingReleaseConfig.js +28 -0
- package/esm/mcp-server/tools/rollingReleaseGetRollingReleaseConfig.js.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseUpdateRollingReleaseConfig.d.ts +7 -0
- package/esm/mcp-server/tools/rollingReleaseUpdateRollingReleaseConfig.d.ts.map +1 -0
- package/esm/mcp-server/tools/rollingReleaseUpdateRollingReleaseConfig.js +28 -0
- package/esm/mcp-server/tools/rollingReleaseUpdateRollingReleaseConfig.js.map +1 -0
- package/esm/models/approverollingreleasestageop.d.ts +661 -0
- package/esm/models/approverollingreleasestageop.d.ts.map +1 -0
- package/esm/models/approverollingreleasestageop.js +481 -0
- package/esm/models/approverollingreleasestageop.js.map +1 -0
- package/esm/models/completerollingreleaseop.d.ts +656 -0
- package/esm/models/completerollingreleaseop.d.ts.map +1 -0
- package/esm/models/completerollingreleaseop.js +478 -0
- package/esm/models/completerollingreleaseop.js.map +1 -0
- package/esm/models/createprojectop.d.ts +11 -5
- package/esm/models/createprojectop.d.ts.map +1 -1
- package/esm/models/createprojectop.js.map +1 -1
- package/esm/models/deleterollingreleaseconfigop.d.ts +67 -0
- package/esm/models/deleterollingreleaseconfigop.d.ts.map +1 -0
- package/esm/models/deleterollingreleaseconfigop.js +60 -0
- package/esm/models/deleterollingreleaseconfigop.js.map +1 -0
- package/esm/models/getedgeconfigbackupop.d.ts +30 -30
- package/esm/models/getedgeconfigbackupop.d.ts.map +1 -1
- package/esm/models/getedgeconfigbackupop.js +30 -30
- package/esm/models/getedgeconfigbackupop.js.map +1 -1
- package/esm/models/getfirewallconfigop.d.ts +15 -15
- package/esm/models/getfirewallconfigop.d.ts.map +1 -1
- package/esm/models/getfirewallconfigop.js +15 -17
- package/esm/models/getfirewallconfigop.js.map +1 -1
- package/esm/models/getinvoiceop.d.ts +8 -8
- package/esm/models/getinvoiceop.d.ts.map +1 -1
- package/esm/models/getinvoiceop.js +12 -12
- package/esm/models/getinvoiceop.js.map +1 -1
- package/esm/models/getprojectsop.d.ts +11 -5
- package/esm/models/getprojectsop.d.ts.map +1 -1
- package/esm/models/getprojectsop.js.map +1 -1
- package/esm/models/getrollingreleaseconfigop.d.ts +152 -0
- package/esm/models/getrollingreleaseconfigop.d.ts.map +1 -0
- package/esm/models/getrollingreleaseconfigop.js +118 -0
- package/esm/models/getrollingreleaseconfigop.js.map +1 -0
- package/esm/models/getrollingreleaseop.d.ts +665 -0
- package/esm/models/getrollingreleaseop.d.ts.map +1 -0
- package/esm/models/getrollingreleaseop.js +463 -0
- package/esm/models/getrollingreleaseop.js.map +1 -0
- package/esm/models/patchedgeconfigitemsop.d.ts +387 -0
- package/esm/models/patchedgeconfigitemsop.d.ts.map +1 -0
- package/esm/models/patchedgeconfigitemsop.js +393 -0
- package/esm/models/patchedgeconfigitemsop.js.map +1 -0
- package/esm/models/putfirewallconfigop.d.ts +2 -139
- package/esm/models/putfirewallconfigop.d.ts.map +1 -1
- package/esm/models/putfirewallconfigop.js +2 -119
- package/esm/models/putfirewallconfigop.js.map +1 -1
- package/esm/models/submitbillingdataop.d.ts +15 -15
- package/esm/models/submitbillingdataop.d.ts.map +1 -1
- package/esm/models/submitbillingdataop.js +15 -16
- package/esm/models/submitbillingdataop.js.map +1 -1
- package/esm/models/team.d.ts +7 -7
- package/esm/models/team.d.ts.map +1 -1
- package/esm/models/team.js +4 -4
- package/esm/models/team.js.map +1 -1
- package/esm/models/updateprojectdatacacheop.d.ts +11 -5
- package/esm/models/updateprojectdatacacheop.d.ts.map +1 -1
- package/esm/models/updateprojectdatacacheop.js.map +1 -1
- package/esm/models/updateprojectop.d.ts +11 -5
- package/esm/models/updateprojectop.d.ts.map +1 -1
- package/esm/models/updateprojectop.js.map +1 -1
- package/esm/models/updaterollingreleaseconfigop.d.ts +179 -0
- package/esm/models/updaterollingreleaseconfigop.d.ts.map +1 -0
- package/esm/models/updaterollingreleaseconfigop.js +168 -0
- package/esm/models/updaterollingreleaseconfigop.js.map +1 -0
- package/esm/sdk/edgeconfig.d.ts +8 -0
- package/esm/sdk/edgeconfig.d.ts.map +1 -1
- package/esm/sdk/edgeconfig.js +10 -0
- package/esm/sdk/edgeconfig.js.map +1 -1
- package/esm/sdk/rollingrelease.d.ts +52 -0
- package/esm/sdk/rollingrelease.d.ts.map +1 -0
- package/esm/sdk/rollingrelease.js +68 -0
- package/esm/sdk/rollingrelease.js.map +1 -0
- package/esm/sdk/sdk.d.ts +3 -0
- package/esm/sdk/sdk.d.ts.map +1 -1
- package/esm/sdk/sdk.js +4 -0
- package/esm/sdk/sdk.js.map +1 -1
- package/jsr.json +1 -1
- package/package.json +1 -1
- package/src/__tests__/edgeconfig.test.ts +20 -0
- package/src/__tests__/projects.test.ts +13 -15
- package/src/__tests__/rollingrelease.test.ts +344 -0
- package/src/__tests__/teams.test.ts +2 -2
- package/src/__tests__/vercel.test.ts +2 -2
- package/src/funcs/edgeConfigPatchEdgeConfigItems.ts +207 -0
- package/src/funcs/rollingReleaseApproveRollingReleaseStage.ts +208 -0
- package/src/funcs/rollingReleaseCompleteRollingRelease.ts +208 -0
- package/src/funcs/rollingReleaseDeleteRollingReleaseConfig.ts +207 -0
- package/src/funcs/rollingReleaseGetRollingRelease.ts +208 -0
- package/src/funcs/rollingReleaseGetRollingReleaseConfig.ts +207 -0
- package/src/funcs/rollingReleaseUpdateRollingReleaseConfig.ts +207 -0
- package/src/lib/config.ts +3 -3
- package/src/mcp-server/mcp-server.ts +1 -1
- package/src/mcp-server/server.ts +15 -1
- package/src/mcp-server/tools/edgeConfigPatchEdgeConfigItems.ts +38 -0
- package/src/mcp-server/tools/rollingReleaseApproveRollingReleaseStage.ts +40 -0
- package/src/mcp-server/tools/rollingReleaseCompleteRollingRelease.ts +39 -0
- package/src/mcp-server/tools/rollingReleaseDeleteRollingReleaseConfig.ts +39 -0
- package/src/mcp-server/tools/rollingReleaseGetRollingRelease.ts +38 -0
- package/src/mcp-server/tools/rollingReleaseGetRollingReleaseConfig.ts +39 -0
- package/src/mcp-server/tools/rollingReleaseUpdateRollingReleaseConfig.ts +39 -0
- package/src/models/approverollingreleasestageop.ts +1139 -0
- package/src/models/completerollingreleaseop.ts +1094 -0
- package/src/models/createprojectop.ts +11 -5
- package/src/models/deleterollingreleaseconfigop.ts +150 -0
- package/src/models/getedgeconfigbackupop.ts +59 -59
- package/src/models/getfirewallconfigop.ts +24 -32
- package/src/models/getinvoiceop.ts +16 -15
- package/src/models/getprojectsop.ts +11 -5
- package/src/models/getrollingreleaseconfigop.ts +322 -0
- package/src/models/getrollingreleaseop.ts +1000 -0
- package/src/models/patchedgeconfigitemsop.ts +749 -0
- package/src/models/putfirewallconfigop.ts +4 -230
- package/src/models/submitbillingdataop.ts +40 -37
- package/src/models/team.ts +11 -11
- package/src/models/updateprojectdatacacheop.ts +11 -5
- package/src/models/updateprojectop.ts +11 -5
- package/src/models/updaterollingreleaseconfigop.ts +432 -0
- package/src/sdk/edgeconfig.ts +22 -0
- package/src/sdk/rollingrelease.ts +140 -0
- package/src/sdk/sdk.ts +6 -0
- package/vercel-spec.json +2111 -264
package/vercel-spec.json
CHANGED
|
@@ -5804,7 +5804,8 @@
|
|
|
5804
5804
|
"properties": {
|
|
5805
5805
|
"target": {
|
|
5806
5806
|
"type": "string",
|
|
5807
|
-
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments."
|
|
5807
|
+
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments.",
|
|
5808
|
+
"example": "production"
|
|
5808
5809
|
},
|
|
5809
5810
|
"stages": {
|
|
5810
5811
|
"nullable": true,
|
|
@@ -5812,35 +5813,40 @@
|
|
|
5812
5813
|
"properties": {
|
|
5813
5814
|
"targetPercentage": {
|
|
5814
5815
|
"type": "number",
|
|
5815
|
-
"description": "The percentage of traffic to serve to the
|
|
5816
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
5817
|
+
"example": 25
|
|
5816
5818
|
},
|
|
5817
5819
|
"requireApproval": {
|
|
5818
5820
|
"type": "boolean",
|
|
5819
|
-
"description": "Whether or not this stage requires approval to proceed
|
|
5821
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
5822
|
+
"example": false
|
|
5820
5823
|
},
|
|
5821
5824
|
"duration": {
|
|
5822
5825
|
"type": "number",
|
|
5823
|
-
"description": "
|
|
5826
|
+
"description": "Duration in minutes for automatic advancement to the next stage",
|
|
5827
|
+
"example": 600
|
|
5824
5828
|
}
|
|
5825
5829
|
},
|
|
5826
5830
|
"required": [
|
|
5827
5831
|
"targetPercentage"
|
|
5828
5832
|
],
|
|
5829
5833
|
"type": "object",
|
|
5830
|
-
"description": "An array of all the stages required during a deployment release.
|
|
5834
|
+
"description": "An 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."
|
|
5831
5835
|
},
|
|
5832
5836
|
"type": "array",
|
|
5833
|
-
"description": "An array of all the stages required during a deployment release.
|
|
5837
|
+
"description": "An 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."
|
|
5834
5838
|
},
|
|
5835
5839
|
"canaryResponseHeader": {
|
|
5836
5840
|
"type": "boolean",
|
|
5837
|
-
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted."
|
|
5841
|
+
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted.",
|
|
5842
|
+
"example": false
|
|
5838
5843
|
}
|
|
5839
5844
|
},
|
|
5840
5845
|
"required": [
|
|
5841
5846
|
"target"
|
|
5842
5847
|
],
|
|
5843
|
-
"type": "object"
|
|
5848
|
+
"type": "object",
|
|
5849
|
+
"description": "Project-level rolling release configuration that defines how deployments should be gradually rolled out"
|
|
5844
5850
|
},
|
|
5845
5851
|
"defaultResourceConfig": {
|
|
5846
5852
|
"properties": {
|
|
@@ -21361,26 +21367,6 @@
|
|
|
21361
21367
|
"key",
|
|
21362
21368
|
"description"
|
|
21363
21369
|
]
|
|
21364
|
-
},
|
|
21365
|
-
{
|
|
21366
|
-
"properties": {
|
|
21367
|
-
"operation": {
|
|
21368
|
-
"type": "string",
|
|
21369
|
-
"enum": [
|
|
21370
|
-
"delete"
|
|
21371
|
-
]
|
|
21372
|
-
}
|
|
21373
|
-
},
|
|
21374
|
-
"required": [
|
|
21375
|
-
"operation",
|
|
21376
|
-
"key"
|
|
21377
|
-
],
|
|
21378
|
-
"not": {
|
|
21379
|
-
"required": [
|
|
21380
|
-
"value",
|
|
21381
|
-
"description"
|
|
21382
|
-
]
|
|
21383
|
-
}
|
|
21384
21370
|
}
|
|
21385
21371
|
]
|
|
21386
21372
|
}
|
|
@@ -29758,7 +29744,8 @@
|
|
|
29758
29744
|
"properties": {
|
|
29759
29745
|
"target": {
|
|
29760
29746
|
"type": "string",
|
|
29761
|
-
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments."
|
|
29747
|
+
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments.",
|
|
29748
|
+
"example": "production"
|
|
29762
29749
|
},
|
|
29763
29750
|
"stages": {
|
|
29764
29751
|
"nullable": true,
|
|
@@ -29766,35 +29753,40 @@
|
|
|
29766
29753
|
"properties": {
|
|
29767
29754
|
"targetPercentage": {
|
|
29768
29755
|
"type": "number",
|
|
29769
|
-
"description": "The percentage of traffic to serve to the
|
|
29756
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
29757
|
+
"example": 25
|
|
29770
29758
|
},
|
|
29771
29759
|
"requireApproval": {
|
|
29772
29760
|
"type": "boolean",
|
|
29773
|
-
"description": "Whether or not this stage requires approval to proceed
|
|
29761
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
29762
|
+
"example": false
|
|
29774
29763
|
},
|
|
29775
29764
|
"duration": {
|
|
29776
29765
|
"type": "number",
|
|
29777
|
-
"description": "
|
|
29766
|
+
"description": "Duration in minutes for automatic advancement to the next stage",
|
|
29767
|
+
"example": 600
|
|
29778
29768
|
}
|
|
29779
29769
|
},
|
|
29780
29770
|
"required": [
|
|
29781
29771
|
"targetPercentage"
|
|
29782
29772
|
],
|
|
29783
29773
|
"type": "object",
|
|
29784
|
-
"description": "An array of all the stages required during a deployment release.
|
|
29774
|
+
"description": "An 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."
|
|
29785
29775
|
},
|
|
29786
29776
|
"type": "array",
|
|
29787
|
-
"description": "An array of all the stages required during a deployment release.
|
|
29777
|
+
"description": "An 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."
|
|
29788
29778
|
},
|
|
29789
29779
|
"canaryResponseHeader": {
|
|
29790
29780
|
"type": "boolean",
|
|
29791
|
-
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted."
|
|
29781
|
+
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted.",
|
|
29782
|
+
"example": false
|
|
29792
29783
|
}
|
|
29793
29784
|
},
|
|
29794
29785
|
"required": [
|
|
29795
29786
|
"target"
|
|
29796
29787
|
],
|
|
29797
|
-
"type": "object"
|
|
29788
|
+
"type": "object",
|
|
29789
|
+
"description": "Project-level rolling release configuration that defines how deployments should be gradually rolled out"
|
|
29798
29790
|
},
|
|
29799
29791
|
"defaultResourceConfig": {
|
|
29800
29792
|
"properties": {
|
|
@@ -34012,7 +34004,8 @@
|
|
|
34012
34004
|
"properties": {
|
|
34013
34005
|
"target": {
|
|
34014
34006
|
"type": "string",
|
|
34015
|
-
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments."
|
|
34007
|
+
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments.",
|
|
34008
|
+
"example": "production"
|
|
34016
34009
|
},
|
|
34017
34010
|
"stages": {
|
|
34018
34011
|
"nullable": true,
|
|
@@ -34020,35 +34013,40 @@
|
|
|
34020
34013
|
"properties": {
|
|
34021
34014
|
"targetPercentage": {
|
|
34022
34015
|
"type": "number",
|
|
34023
|
-
"description": "The percentage of traffic to serve to the
|
|
34016
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
34017
|
+
"example": 25
|
|
34024
34018
|
},
|
|
34025
34019
|
"requireApproval": {
|
|
34026
34020
|
"type": "boolean",
|
|
34027
|
-
"description": "Whether or not this stage requires approval to proceed
|
|
34021
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
34022
|
+
"example": false
|
|
34028
34023
|
},
|
|
34029
34024
|
"duration": {
|
|
34030
34025
|
"type": "number",
|
|
34031
|
-
"description": "
|
|
34026
|
+
"description": "Duration in minutes for automatic advancement to the next stage",
|
|
34027
|
+
"example": 600
|
|
34032
34028
|
}
|
|
34033
34029
|
},
|
|
34034
34030
|
"required": [
|
|
34035
34031
|
"targetPercentage"
|
|
34036
34032
|
],
|
|
34037
34033
|
"type": "object",
|
|
34038
|
-
"description": "An array of all the stages required during a deployment release.
|
|
34034
|
+
"description": "An 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."
|
|
34039
34035
|
},
|
|
34040
34036
|
"type": "array",
|
|
34041
|
-
"description": "An array of all the stages required during a deployment release.
|
|
34037
|
+
"description": "An 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."
|
|
34042
34038
|
},
|
|
34043
34039
|
"canaryResponseHeader": {
|
|
34044
34040
|
"type": "boolean",
|
|
34045
|
-
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted."
|
|
34041
|
+
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted.",
|
|
34042
|
+
"example": false
|
|
34046
34043
|
}
|
|
34047
34044
|
},
|
|
34048
34045
|
"required": [
|
|
34049
34046
|
"target"
|
|
34050
34047
|
],
|
|
34051
|
-
"type": "object"
|
|
34048
|
+
"type": "object",
|
|
34049
|
+
"description": "Project-level rolling release configuration that defines how deployments should be gradually rolled out"
|
|
34052
34050
|
},
|
|
34053
34051
|
"defaultResourceConfig": {
|
|
34054
34052
|
"properties": {
|
|
@@ -38485,7 +38483,8 @@
|
|
|
38485
38483
|
"properties": {
|
|
38486
38484
|
"target": {
|
|
38487
38485
|
"type": "string",
|
|
38488
|
-
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments."
|
|
38486
|
+
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments.",
|
|
38487
|
+
"example": "production"
|
|
38489
38488
|
},
|
|
38490
38489
|
"stages": {
|
|
38491
38490
|
"nullable": true,
|
|
@@ -38493,35 +38492,40 @@
|
|
|
38493
38492
|
"properties": {
|
|
38494
38493
|
"targetPercentage": {
|
|
38495
38494
|
"type": "number",
|
|
38496
|
-
"description": "The percentage of traffic to serve to the
|
|
38495
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
38496
|
+
"example": 25
|
|
38497
38497
|
},
|
|
38498
38498
|
"requireApproval": {
|
|
38499
38499
|
"type": "boolean",
|
|
38500
|
-
"description": "Whether or not this stage requires approval to proceed
|
|
38500
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
38501
|
+
"example": false
|
|
38501
38502
|
},
|
|
38502
38503
|
"duration": {
|
|
38503
38504
|
"type": "number",
|
|
38504
|
-
"description": "
|
|
38505
|
+
"description": "Duration in minutes for automatic advancement to the next stage",
|
|
38506
|
+
"example": 600
|
|
38505
38507
|
}
|
|
38506
38508
|
},
|
|
38507
38509
|
"required": [
|
|
38508
38510
|
"targetPercentage"
|
|
38509
38511
|
],
|
|
38510
38512
|
"type": "object",
|
|
38511
|
-
"description": "An array of all the stages required during a deployment release.
|
|
38513
|
+
"description": "An 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."
|
|
38512
38514
|
},
|
|
38513
38515
|
"type": "array",
|
|
38514
|
-
"description": "An array of all the stages required during a deployment release.
|
|
38516
|
+
"description": "An 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."
|
|
38515
38517
|
},
|
|
38516
38518
|
"canaryResponseHeader": {
|
|
38517
38519
|
"type": "boolean",
|
|
38518
|
-
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted."
|
|
38520
|
+
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted.",
|
|
38521
|
+
"example": false
|
|
38519
38522
|
}
|
|
38520
38523
|
},
|
|
38521
38524
|
"required": [
|
|
38522
38525
|
"target"
|
|
38523
38526
|
],
|
|
38524
|
-
"type": "object"
|
|
38527
|
+
"type": "object",
|
|
38528
|
+
"description": "Project-level rolling release configuration that defines how deployments should be gradually rolled out"
|
|
38525
38529
|
},
|
|
38526
38530
|
"defaultResourceConfig": {
|
|
38527
38531
|
"properties": {
|
|
@@ -42628,7 +42632,8 @@
|
|
|
42628
42632
|
"properties": {
|
|
42629
42633
|
"target": {
|
|
42630
42634
|
"type": "string",
|
|
42631
|
-
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments."
|
|
42635
|
+
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments.",
|
|
42636
|
+
"example": "production"
|
|
42632
42637
|
},
|
|
42633
42638
|
"stages": {
|
|
42634
42639
|
"nullable": true,
|
|
@@ -42636,35 +42641,40 @@
|
|
|
42636
42641
|
"properties": {
|
|
42637
42642
|
"targetPercentage": {
|
|
42638
42643
|
"type": "number",
|
|
42639
|
-
"description": "The percentage of traffic to serve to the
|
|
42644
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
42645
|
+
"example": 25
|
|
42640
42646
|
},
|
|
42641
42647
|
"requireApproval": {
|
|
42642
42648
|
"type": "boolean",
|
|
42643
|
-
"description": "Whether or not this stage requires approval to proceed
|
|
42649
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
42650
|
+
"example": false
|
|
42644
42651
|
},
|
|
42645
42652
|
"duration": {
|
|
42646
42653
|
"type": "number",
|
|
42647
|
-
"description": "
|
|
42654
|
+
"description": "Duration in minutes for automatic advancement to the next stage",
|
|
42655
|
+
"example": 600
|
|
42648
42656
|
}
|
|
42649
42657
|
},
|
|
42650
42658
|
"required": [
|
|
42651
42659
|
"targetPercentage"
|
|
42652
42660
|
],
|
|
42653
42661
|
"type": "object",
|
|
42654
|
-
"description": "An array of all the stages required during a deployment release.
|
|
42662
|
+
"description": "An 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."
|
|
42655
42663
|
},
|
|
42656
42664
|
"type": "array",
|
|
42657
|
-
"description": "An array of all the stages required during a deployment release.
|
|
42665
|
+
"description": "An 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."
|
|
42658
42666
|
},
|
|
42659
42667
|
"canaryResponseHeader": {
|
|
42660
42668
|
"type": "boolean",
|
|
42661
|
-
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted."
|
|
42669
|
+
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted.",
|
|
42670
|
+
"example": false
|
|
42662
42671
|
}
|
|
42663
42672
|
},
|
|
42664
42673
|
"required": [
|
|
42665
42674
|
"target"
|
|
42666
42675
|
],
|
|
42667
|
-
"type": "object"
|
|
42676
|
+
"type": "object",
|
|
42677
|
+
"description": "Project-level rolling release configuration that defines how deployments should be gradually rolled out"
|
|
42668
42678
|
},
|
|
42669
42679
|
"defaultResourceConfig": {
|
|
42670
42680
|
"properties": {
|
|
@@ -54204,34 +54214,78 @@
|
|
|
54204
54214
|
"x-speakeasy-test": false
|
|
54205
54215
|
}
|
|
54206
54216
|
},
|
|
54207
|
-
"/projects/{idOrName}/
|
|
54208
|
-
"
|
|
54209
|
-
"description": "
|
|
54210
|
-
"operationId": "
|
|
54217
|
+
"/v1/projects/{idOrName}/rolling-release/config": {
|
|
54218
|
+
"get": {
|
|
54219
|
+
"description": "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.",
|
|
54220
|
+
"operationId": "getRollingReleaseConfig",
|
|
54211
54221
|
"security": [
|
|
54212
54222
|
{
|
|
54213
54223
|
"bearerToken": []
|
|
54214
54224
|
}
|
|
54215
54225
|
],
|
|
54216
|
-
"summary": "
|
|
54226
|
+
"summary": "Get rolling release configuration",
|
|
54217
54227
|
"tags": [
|
|
54218
|
-
"
|
|
54228
|
+
"rolling-release"
|
|
54219
54229
|
],
|
|
54220
54230
|
"responses": {
|
|
54221
54231
|
"200": {
|
|
54222
|
-
"description": "
|
|
54232
|
+
"description": "",
|
|
54223
54233
|
"content": {
|
|
54224
54234
|
"application/json": {
|
|
54225
54235
|
"schema": {
|
|
54226
54236
|
"properties": {
|
|
54227
|
-
"
|
|
54228
|
-
"
|
|
54229
|
-
"
|
|
54230
|
-
|
|
54237
|
+
"rollingRelease": {
|
|
54238
|
+
"nullable": true,
|
|
54239
|
+
"properties": {
|
|
54240
|
+
"target": {
|
|
54241
|
+
"type": "string",
|
|
54242
|
+
"description": "The environment that the release targets, currently only supports production. Adding in case we want to configure with alias groups or custom environments.",
|
|
54243
|
+
"example": "production"
|
|
54244
|
+
},
|
|
54245
|
+
"stages": {
|
|
54246
|
+
"nullable": true,
|
|
54247
|
+
"items": {
|
|
54248
|
+
"properties": {
|
|
54249
|
+
"targetPercentage": {
|
|
54250
|
+
"type": "number",
|
|
54251
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
54252
|
+
"example": 25
|
|
54253
|
+
},
|
|
54254
|
+
"requireApproval": {
|
|
54255
|
+
"type": "boolean",
|
|
54256
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
54257
|
+
"example": false
|
|
54258
|
+
},
|
|
54259
|
+
"duration": {
|
|
54260
|
+
"type": "number",
|
|
54261
|
+
"description": "Duration in minutes for automatic advancement to the next stage",
|
|
54262
|
+
"example": 600
|
|
54263
|
+
}
|
|
54264
|
+
},
|
|
54265
|
+
"required": [
|
|
54266
|
+
"targetPercentage"
|
|
54267
|
+
],
|
|
54268
|
+
"type": "object",
|
|
54269
|
+
"description": "An 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."
|
|
54270
|
+
},
|
|
54271
|
+
"type": "array",
|
|
54272
|
+
"description": "An 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."
|
|
54273
|
+
},
|
|
54274
|
+
"canaryResponseHeader": {
|
|
54275
|
+
"type": "boolean",
|
|
54276
|
+
"description": "Whether the request served by a canary deployment should return a header indicating a canary was served. Defaults to `false` when omitted.",
|
|
54277
|
+
"example": false
|
|
54278
|
+
}
|
|
54279
|
+
},
|
|
54280
|
+
"required": [
|
|
54281
|
+
"target"
|
|
54282
|
+
],
|
|
54283
|
+
"type": "object",
|
|
54284
|
+
"description": "Project-level rolling release configuration that defines how deployments should be gradually rolled out"
|
|
54231
54285
|
}
|
|
54232
54286
|
},
|
|
54233
54287
|
"required": [
|
|
54234
|
-
"
|
|
54288
|
+
"rollingRelease"
|
|
54235
54289
|
],
|
|
54236
54290
|
"type": "object"
|
|
54237
54291
|
}
|
|
@@ -54239,7 +54293,7 @@
|
|
|
54239
54293
|
}
|
|
54240
54294
|
},
|
|
54241
54295
|
"400": {
|
|
54242
|
-
"description": "One of the provided values in the request
|
|
54296
|
+
"description": "One of the provided values in the request query is invalid.",
|
|
54243
54297
|
"content": {
|
|
54244
54298
|
"application/json": {
|
|
54245
54299
|
"schema": {
|
|
@@ -54260,17 +54314,27 @@
|
|
|
54260
54314
|
},
|
|
54261
54315
|
"403": {
|
|
54262
54316
|
"description": "You do not have permission to access this resource."
|
|
54317
|
+
},
|
|
54318
|
+
"404": {
|
|
54319
|
+
"description": "",
|
|
54320
|
+
"content": {
|
|
54321
|
+
"application/json": {
|
|
54322
|
+
"schema": {
|
|
54323
|
+
"$ref": "#/components/schemas/VercelNotFoundError"
|
|
54324
|
+
}
|
|
54325
|
+
}
|
|
54326
|
+
}
|
|
54263
54327
|
}
|
|
54264
54328
|
},
|
|
54265
54329
|
"parameters": [
|
|
54266
54330
|
{
|
|
54267
54331
|
"name": "idOrName",
|
|
54268
|
-
"description": "
|
|
54332
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
54269
54333
|
"in": "path",
|
|
54270
54334
|
"required": true,
|
|
54271
54335
|
"schema": {
|
|
54272
|
-
"
|
|
54273
|
-
"
|
|
54336
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
54337
|
+
"type": "string"
|
|
54274
54338
|
}
|
|
54275
54339
|
},
|
|
54276
54340
|
{
|
|
@@ -54291,54 +54355,41 @@
|
|
|
54291
54355
|
"example": "my-team-url-slug"
|
|
54292
54356
|
}
|
|
54293
54357
|
}
|
|
54294
|
-
]
|
|
54295
|
-
|
|
54296
|
-
|
|
54297
|
-
|
|
54298
|
-
|
|
54299
|
-
"type": "object",
|
|
54300
|
-
"properties": {
|
|
54301
|
-
"callbackUrl": {
|
|
54302
|
-
"type": "string",
|
|
54303
|
-
"description": "The URL to send a webhook to when the transfer is accepted."
|
|
54304
|
-
},
|
|
54305
|
-
"callbackSecret": {
|
|
54306
|
-
"type": "string",
|
|
54307
|
-
"description": "The secret to use to sign the webhook payload with HMAC-SHA256."
|
|
54308
|
-
}
|
|
54309
|
-
}
|
|
54310
|
-
}
|
|
54311
|
-
}
|
|
54312
|
-
}
|
|
54313
|
-
}
|
|
54314
|
-
}
|
|
54315
|
-
},
|
|
54316
|
-
"/projects/transfer-request/{code}": {
|
|
54317
|
-
"put": {
|
|
54318
|
-
"description": "Accept a project transfer request initated by another team. \u003cbr/\u003e The `code` is generated using the `POST /projects/:idOrName/transfer-request` endpoint.",
|
|
54319
|
-
"operationId": "acceptProjectTransferRequest",
|
|
54358
|
+
]
|
|
54359
|
+
},
|
|
54360
|
+
"delete": {
|
|
54361
|
+
"description": "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.",
|
|
54362
|
+
"operationId": "deleteRollingReleaseConfig",
|
|
54320
54363
|
"security": [
|
|
54321
54364
|
{
|
|
54322
54365
|
"bearerToken": []
|
|
54323
54366
|
}
|
|
54324
54367
|
],
|
|
54325
|
-
"summary": "
|
|
54368
|
+
"summary": "Delete rolling release configuration",
|
|
54326
54369
|
"tags": [
|
|
54327
|
-
"
|
|
54370
|
+
"rolling-release"
|
|
54328
54371
|
],
|
|
54329
54372
|
"responses": {
|
|
54330
|
-
"
|
|
54331
|
-
"description": "
|
|
54373
|
+
"200": {
|
|
54374
|
+
"description": "",
|
|
54332
54375
|
"content": {
|
|
54333
54376
|
"application/json": {
|
|
54334
54377
|
"schema": {
|
|
54378
|
+
"properties": {
|
|
54379
|
+
"rollingRelease": {
|
|
54380
|
+
"nullable": true
|
|
54381
|
+
}
|
|
54382
|
+
},
|
|
54383
|
+
"required": [
|
|
54384
|
+
"rollingRelease"
|
|
54385
|
+
],
|
|
54335
54386
|
"type": "object"
|
|
54336
54387
|
}
|
|
54337
54388
|
}
|
|
54338
54389
|
}
|
|
54339
54390
|
},
|
|
54340
54391
|
"400": {
|
|
54341
|
-
"description": "One of the provided values in the request
|
|
54392
|
+
"description": "One of the provided values in the request query is invalid.",
|
|
54342
54393
|
"content": {
|
|
54343
54394
|
"application/json": {
|
|
54344
54395
|
"schema": {
|
|
@@ -54373,13 +54424,13 @@
|
|
|
54373
54424
|
},
|
|
54374
54425
|
"parameters": [
|
|
54375
54426
|
{
|
|
54376
|
-
"name": "
|
|
54377
|
-
"description": "
|
|
54427
|
+
"name": "idOrName",
|
|
54428
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
54378
54429
|
"in": "path",
|
|
54379
54430
|
"required": true,
|
|
54380
54431
|
"schema": {
|
|
54381
|
-
"
|
|
54382
|
-
"
|
|
54432
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
54433
|
+
"type": "string"
|
|
54383
54434
|
}
|
|
54384
54435
|
},
|
|
54385
54436
|
{
|
|
@@ -54400,57 +54451,19 @@
|
|
|
54400
54451
|
"example": "my-team-url-slug"
|
|
54401
54452
|
}
|
|
54402
54453
|
}
|
|
54403
|
-
]
|
|
54404
|
-
|
|
54405
|
-
"content": {
|
|
54406
|
-
"application/json": {
|
|
54407
|
-
"schema": {
|
|
54408
|
-
"type": "object",
|
|
54409
|
-
"additionalProperties": false,
|
|
54410
|
-
"properties": {
|
|
54411
|
-
"newProjectName": {
|
|
54412
|
-
"description": "The desired name for the project",
|
|
54413
|
-
"example": "a-project-name",
|
|
54414
|
-
"type": "string",
|
|
54415
|
-
"maxLength": 100
|
|
54416
|
-
},
|
|
54417
|
-
"paidFeatures": {
|
|
54418
|
-
"type": "object",
|
|
54419
|
-
"additionalProperties": false,
|
|
54420
|
-
"properties": {
|
|
54421
|
-
"concurrentBuilds": {
|
|
54422
|
-
"type": "integer",
|
|
54423
|
-
"nullable": true
|
|
54424
|
-
},
|
|
54425
|
-
"passwordProtection": {
|
|
54426
|
-
"type": "boolean",
|
|
54427
|
-
"nullable": true
|
|
54428
|
-
},
|
|
54429
|
-
"previewDeploymentSuffix": {
|
|
54430
|
-
"type": "boolean",
|
|
54431
|
-
"nullable": true
|
|
54432
|
-
}
|
|
54433
|
-
}
|
|
54434
|
-
}
|
|
54435
|
-
}
|
|
54436
|
-
}
|
|
54437
|
-
}
|
|
54438
|
-
}
|
|
54439
|
-
}
|
|
54440
|
-
}
|
|
54441
|
-
},
|
|
54442
|
-
"/v1/projects/{idOrName}/protection-bypass": {
|
|
54454
|
+
]
|
|
54455
|
+
},
|
|
54443
54456
|
"patch": {
|
|
54444
|
-
"description": "Update the deployment protection
|
|
54445
|
-
"operationId": "
|
|
54457
|
+
"description": "Update (or disable) Rolling Releases for a project. Changing the config never alters a rollout that's already in-flight. It only affects the next production deployment. This also applies to disabling Rolling Releases. 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. Note: Enabling Rolling Releases automatically enables skew protection on the project with the default value if it wasn't configured already.",
|
|
54458
|
+
"operationId": "updateRollingReleaseConfig",
|
|
54446
54459
|
"security": [
|
|
54447
54460
|
{
|
|
54448
54461
|
"bearerToken": []
|
|
54449
54462
|
}
|
|
54450
54463
|
],
|
|
54451
|
-
"summary": "Update
|
|
54464
|
+
"summary": "Update the rolling release settings for the project",
|
|
54452
54465
|
"tags": [
|
|
54453
|
-
"
|
|
54466
|
+
"rolling-release"
|
|
54454
54467
|
],
|
|
54455
54468
|
"responses": {
|
|
54456
54469
|
"200": {
|
|
@@ -54458,74 +54471,1949 @@
|
|
|
54458
54471
|
"content": {
|
|
54459
54472
|
"application/json": {
|
|
54460
54473
|
"schema": {
|
|
54461
|
-
"
|
|
54462
|
-
|
|
54463
|
-
"
|
|
54464
|
-
"
|
|
54465
|
-
|
|
54466
|
-
|
|
54467
|
-
|
|
54468
|
-
|
|
54469
|
-
|
|
54470
|
-
|
|
54471
|
-
|
|
54472
|
-
|
|
54473
|
-
|
|
54474
|
-
|
|
54475
|
-
|
|
54476
|
-
|
|
54477
|
-
|
|
54478
|
-
|
|
54479
|
-
"
|
|
54480
|
-
|
|
54474
|
+
"oneOf": [
|
|
54475
|
+
{
|
|
54476
|
+
"properties": {
|
|
54477
|
+
"rollingRelease": {
|
|
54478
|
+
"nullable": true
|
|
54479
|
+
}
|
|
54480
|
+
},
|
|
54481
|
+
"required": [
|
|
54482
|
+
"rollingRelease"
|
|
54483
|
+
],
|
|
54484
|
+
"type": "object"
|
|
54485
|
+
},
|
|
54486
|
+
{
|
|
54487
|
+
"properties": {
|
|
54488
|
+
"rollingRelease": {
|
|
54489
|
+
"nullable": true,
|
|
54490
|
+
"properties": {
|
|
54491
|
+
"stages": {
|
|
54492
|
+
"nullable": true,
|
|
54493
|
+
"items": {
|
|
54494
|
+
"properties": {
|
|
54495
|
+
"targetPercentage": {
|
|
54496
|
+
"type": "number",
|
|
54497
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
54498
|
+
"example": 25
|
|
54499
|
+
},
|
|
54500
|
+
"requireApproval": {
|
|
54501
|
+
"type": "boolean",
|
|
54502
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
54503
|
+
"example": false
|
|
54504
|
+
},
|
|
54505
|
+
"duration": {
|
|
54506
|
+
"type": "number",
|
|
54507
|
+
"description": "Duration in minutes for automatic advancement to the next stage",
|
|
54508
|
+
"example": 600
|
|
54509
|
+
}
|
|
54510
|
+
},
|
|
54511
|
+
"required": [
|
|
54512
|
+
"targetPercentage"
|
|
54513
|
+
],
|
|
54514
|
+
"type": "object",
|
|
54515
|
+
"description": "A stage object configured for a rolling release once a new deployment is triggered the first stage will be read in the proxy for first time visitors, and if a RNG \u003c targetPercentage then it will serve the new deployment. Upon approval the next stage will be read, etc."
|
|
54481
54516
|
},
|
|
54482
|
-
"
|
|
54483
|
-
|
|
54484
|
-
}
|
|
54485
|
-
},
|
|
54486
|
-
"required": [
|
|
54487
|
-
"createdAt",
|
|
54488
|
-
"createdBy",
|
|
54489
|
-
"scope",
|
|
54490
|
-
"integrationId",
|
|
54491
|
-
"configurationId"
|
|
54492
|
-
],
|
|
54493
|
-
"type": "object"
|
|
54517
|
+
"type": "array"
|
|
54518
|
+
}
|
|
54494
54519
|
},
|
|
54495
|
-
|
|
54496
|
-
|
|
54497
|
-
"createdAt": {
|
|
54498
|
-
"type": "number"
|
|
54499
|
-
},
|
|
54500
|
-
"createdBy": {
|
|
54501
|
-
"type": "string"
|
|
54502
|
-
},
|
|
54503
|
-
"scope": {
|
|
54504
|
-
"type": "string",
|
|
54505
|
-
"enum": [
|
|
54506
|
-
"automation-bypass"
|
|
54507
|
-
]
|
|
54508
|
-
}
|
|
54509
|
-
},
|
|
54510
|
-
"required": [
|
|
54511
|
-
"createdAt",
|
|
54512
|
-
"createdBy",
|
|
54513
|
-
"scope"
|
|
54514
|
-
],
|
|
54515
|
-
"type": "object"
|
|
54516
|
-
}
|
|
54517
|
-
]
|
|
54520
|
+
"type": "object"
|
|
54521
|
+
}
|
|
54518
54522
|
},
|
|
54523
|
+
"required": [
|
|
54524
|
+
"rollingRelease"
|
|
54525
|
+
],
|
|
54519
54526
|
"type": "object"
|
|
54520
54527
|
}
|
|
54521
|
-
|
|
54522
|
-
"type": "object"
|
|
54528
|
+
]
|
|
54523
54529
|
}
|
|
54524
54530
|
}
|
|
54525
54531
|
}
|
|
54526
54532
|
},
|
|
54527
54533
|
"400": {
|
|
54528
|
-
"description": "One of the provided values in the request
|
|
54534
|
+
"description": "One of the provided values in the request query is invalid.",
|
|
54535
|
+
"content": {
|
|
54536
|
+
"application/json": {
|
|
54537
|
+
"schema": {
|
|
54538
|
+
"$ref": "#/components/schemas/VercelBadRequestError"
|
|
54539
|
+
}
|
|
54540
|
+
}
|
|
54541
|
+
}
|
|
54542
|
+
},
|
|
54543
|
+
"401": {
|
|
54544
|
+
"description": "",
|
|
54545
|
+
"content": {
|
|
54546
|
+
"application/json": {
|
|
54547
|
+
"schema": {
|
|
54548
|
+
"$ref": "#/components/schemas/VercelForbiddenError"
|
|
54549
|
+
}
|
|
54550
|
+
}
|
|
54551
|
+
}
|
|
54552
|
+
},
|
|
54553
|
+
"403": {
|
|
54554
|
+
"description": "You do not have permission to access this resource."
|
|
54555
|
+
},
|
|
54556
|
+
"404": {
|
|
54557
|
+
"description": "",
|
|
54558
|
+
"content": {
|
|
54559
|
+
"application/json": {
|
|
54560
|
+
"schema": {
|
|
54561
|
+
"$ref": "#/components/schemas/VercelNotFoundError"
|
|
54562
|
+
}
|
|
54563
|
+
}
|
|
54564
|
+
}
|
|
54565
|
+
}
|
|
54566
|
+
},
|
|
54567
|
+
"parameters": [
|
|
54568
|
+
{
|
|
54569
|
+
"name": "idOrName",
|
|
54570
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
54571
|
+
"in": "path",
|
|
54572
|
+
"required": true,
|
|
54573
|
+
"schema": {
|
|
54574
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
54575
|
+
"type": "string"
|
|
54576
|
+
}
|
|
54577
|
+
},
|
|
54578
|
+
{
|
|
54579
|
+
"description": "The Team identifier to perform the request on behalf of.",
|
|
54580
|
+
"in": "query",
|
|
54581
|
+
"name": "teamId",
|
|
54582
|
+
"schema": {
|
|
54583
|
+
"type": "string",
|
|
54584
|
+
"example": "team_1a2b3c4d5e6f7g8h9i0j1k2l"
|
|
54585
|
+
}
|
|
54586
|
+
},
|
|
54587
|
+
{
|
|
54588
|
+
"description": "The Team slug to perform the request on behalf of.",
|
|
54589
|
+
"in": "query",
|
|
54590
|
+
"name": "slug",
|
|
54591
|
+
"schema": {
|
|
54592
|
+
"type": "string",
|
|
54593
|
+
"example": "my-team-url-slug"
|
|
54594
|
+
}
|
|
54595
|
+
}
|
|
54596
|
+
]
|
|
54597
|
+
}
|
|
54598
|
+
},
|
|
54599
|
+
"/v1/projects/{idOrName}/rolling-release": {
|
|
54600
|
+
"get": {
|
|
54601
|
+
"description": "Return the Rolling Release for a project, regardless of whether the rollout is active, aborted, or completed. If the feature is enabled but no deployment has occurred yet, null will be returned.",
|
|
54602
|
+
"operationId": "getRollingRelease",
|
|
54603
|
+
"security": [
|
|
54604
|
+
{
|
|
54605
|
+
"bearerToken": []
|
|
54606
|
+
}
|
|
54607
|
+
],
|
|
54608
|
+
"summary": "Get the active rolling release information for a project",
|
|
54609
|
+
"tags": [
|
|
54610
|
+
"rolling-release"
|
|
54611
|
+
],
|
|
54612
|
+
"responses": {
|
|
54613
|
+
"200": {
|
|
54614
|
+
"description": "",
|
|
54615
|
+
"content": {
|
|
54616
|
+
"application/json": {
|
|
54617
|
+
"schema": {
|
|
54618
|
+
"properties": {
|
|
54619
|
+
"rollingRelease": {
|
|
54620
|
+
"nullable": true,
|
|
54621
|
+
"properties": {
|
|
54622
|
+
"state": {
|
|
54623
|
+
"type": "string",
|
|
54624
|
+
"enum": [
|
|
54625
|
+
"ACTIVE",
|
|
54626
|
+
"COMPLETE",
|
|
54627
|
+
"ABORTED"
|
|
54628
|
+
],
|
|
54629
|
+
"description": "The current state of the rolling release",
|
|
54630
|
+
"example": "ACTIVE"
|
|
54631
|
+
},
|
|
54632
|
+
"currentDeployment": {
|
|
54633
|
+
"nullable": true,
|
|
54634
|
+
"properties": {
|
|
54635
|
+
"id": {
|
|
54636
|
+
"type": "string"
|
|
54637
|
+
},
|
|
54638
|
+
"name": {
|
|
54639
|
+
"type": "string"
|
|
54640
|
+
},
|
|
54641
|
+
"url": {
|
|
54642
|
+
"type": "string"
|
|
54643
|
+
},
|
|
54644
|
+
"target": {
|
|
54645
|
+
"nullable": true,
|
|
54646
|
+
"type": "string",
|
|
54647
|
+
"enum": [
|
|
54648
|
+
"staging",
|
|
54649
|
+
"production"
|
|
54650
|
+
]
|
|
54651
|
+
},
|
|
54652
|
+
"source": {
|
|
54653
|
+
"type": "string",
|
|
54654
|
+
"enum": [
|
|
54655
|
+
"api-trigger-git-deploy",
|
|
54656
|
+
"cli",
|
|
54657
|
+
"clone/repo",
|
|
54658
|
+
"git",
|
|
54659
|
+
"import",
|
|
54660
|
+
"import/repo",
|
|
54661
|
+
"redeploy",
|
|
54662
|
+
"v0-web"
|
|
54663
|
+
]
|
|
54664
|
+
},
|
|
54665
|
+
"createdAt": {
|
|
54666
|
+
"type": "number"
|
|
54667
|
+
},
|
|
54668
|
+
"readyState": {
|
|
54669
|
+
"type": "string",
|
|
54670
|
+
"enum": [
|
|
54671
|
+
"BUILDING",
|
|
54672
|
+
"ERROR",
|
|
54673
|
+
"INITIALIZING",
|
|
54674
|
+
"QUEUED",
|
|
54675
|
+
"READY",
|
|
54676
|
+
"CANCELED"
|
|
54677
|
+
]
|
|
54678
|
+
},
|
|
54679
|
+
"readyStateAt": {
|
|
54680
|
+
"type": "number"
|
|
54681
|
+
}
|
|
54682
|
+
},
|
|
54683
|
+
"required": [
|
|
54684
|
+
"id",
|
|
54685
|
+
"name",
|
|
54686
|
+
"url",
|
|
54687
|
+
"createdAt",
|
|
54688
|
+
"readyState"
|
|
54689
|
+
],
|
|
54690
|
+
"type": "object",
|
|
54691
|
+
"description": "The current deployment receiving production traffic",
|
|
54692
|
+
"example": {
|
|
54693
|
+
"id": "dpl_abc123",
|
|
54694
|
+
"name": "my-shop@main",
|
|
54695
|
+
"url": "my-shop.vercel.app",
|
|
54696
|
+
"target": "production",
|
|
54697
|
+
"source": "git",
|
|
54698
|
+
"createdAt": 1716206500000,
|
|
54699
|
+
"readyState": "READY",
|
|
54700
|
+
"readyStateAt": 1716206800000
|
|
54701
|
+
}
|
|
54702
|
+
},
|
|
54703
|
+
"canaryDeployment": {
|
|
54704
|
+
"nullable": true,
|
|
54705
|
+
"properties": {
|
|
54706
|
+
"id": {
|
|
54707
|
+
"type": "string"
|
|
54708
|
+
},
|
|
54709
|
+
"name": {
|
|
54710
|
+
"type": "string"
|
|
54711
|
+
},
|
|
54712
|
+
"url": {
|
|
54713
|
+
"type": "string"
|
|
54714
|
+
},
|
|
54715
|
+
"target": {
|
|
54716
|
+
"nullable": true,
|
|
54717
|
+
"type": "string",
|
|
54718
|
+
"enum": [
|
|
54719
|
+
"staging",
|
|
54720
|
+
"production"
|
|
54721
|
+
]
|
|
54722
|
+
},
|
|
54723
|
+
"source": {
|
|
54724
|
+
"type": "string",
|
|
54725
|
+
"enum": [
|
|
54726
|
+
"api-trigger-git-deploy",
|
|
54727
|
+
"cli",
|
|
54728
|
+
"clone/repo",
|
|
54729
|
+
"git",
|
|
54730
|
+
"import",
|
|
54731
|
+
"import/repo",
|
|
54732
|
+
"redeploy",
|
|
54733
|
+
"v0-web"
|
|
54734
|
+
]
|
|
54735
|
+
},
|
|
54736
|
+
"createdAt": {
|
|
54737
|
+
"type": "number"
|
|
54738
|
+
},
|
|
54739
|
+
"readyState": {
|
|
54740
|
+
"type": "string",
|
|
54741
|
+
"enum": [
|
|
54742
|
+
"BUILDING",
|
|
54743
|
+
"ERROR",
|
|
54744
|
+
"INITIALIZING",
|
|
54745
|
+
"QUEUED",
|
|
54746
|
+
"READY",
|
|
54747
|
+
"CANCELED"
|
|
54748
|
+
]
|
|
54749
|
+
},
|
|
54750
|
+
"readyStateAt": {
|
|
54751
|
+
"type": "number"
|
|
54752
|
+
}
|
|
54753
|
+
},
|
|
54754
|
+
"required": [
|
|
54755
|
+
"id",
|
|
54756
|
+
"name",
|
|
54757
|
+
"url",
|
|
54758
|
+
"createdAt",
|
|
54759
|
+
"readyState"
|
|
54760
|
+
],
|
|
54761
|
+
"type": "object",
|
|
54762
|
+
"description": "The canary deployment being rolled out",
|
|
54763
|
+
"example": {
|
|
54764
|
+
"id": "dpl_def456",
|
|
54765
|
+
"name": "my-shop@9c7e2f4",
|
|
54766
|
+
"url": "9c7e2f4-my-shop.vercel.app",
|
|
54767
|
+
"target": "production",
|
|
54768
|
+
"source": "git",
|
|
54769
|
+
"createdAt": 1716210100000,
|
|
54770
|
+
"readyState": "READY",
|
|
54771
|
+
"readyStateAt": 1716210400000
|
|
54772
|
+
}
|
|
54773
|
+
},
|
|
54774
|
+
"queuedDeploymentId": {
|
|
54775
|
+
"nullable": true,
|
|
54776
|
+
"type": "string",
|
|
54777
|
+
"description": "The ID of a deployment queued for the next rolling release",
|
|
54778
|
+
"example": "dpl_ghi789"
|
|
54779
|
+
},
|
|
54780
|
+
"stages": {
|
|
54781
|
+
"items": {
|
|
54782
|
+
"properties": {
|
|
54783
|
+
"index": {
|
|
54784
|
+
"type": "number",
|
|
54785
|
+
"description": "The zero-based index of the stage",
|
|
54786
|
+
"example": 0
|
|
54787
|
+
},
|
|
54788
|
+
"isFinalStage": {
|
|
54789
|
+
"type": "boolean",
|
|
54790
|
+
"description": "Whether or not this stage is the final stage (targetPercentage === 100)",
|
|
54791
|
+
"example": false
|
|
54792
|
+
},
|
|
54793
|
+
"targetPercentage": {
|
|
54794
|
+
"type": "number",
|
|
54795
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
54796
|
+
"example": 25
|
|
54797
|
+
},
|
|
54798
|
+
"requireApproval": {
|
|
54799
|
+
"type": "boolean",
|
|
54800
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
54801
|
+
"example": true
|
|
54802
|
+
},
|
|
54803
|
+
"duration": {
|
|
54804
|
+
"nullable": true,
|
|
54805
|
+
"type": "number",
|
|
54806
|
+
"description": "Duration in seconds for automatic advancement, null for manual stages or the final stage",
|
|
54807
|
+
"example": null
|
|
54808
|
+
}
|
|
54809
|
+
},
|
|
54810
|
+
"required": [
|
|
54811
|
+
"index",
|
|
54812
|
+
"isFinalStage",
|
|
54813
|
+
"targetPercentage",
|
|
54814
|
+
"requireApproval",
|
|
54815
|
+
"duration"
|
|
54816
|
+
],
|
|
54817
|
+
"type": "object",
|
|
54818
|
+
"description": "All stages configured for this rolling release",
|
|
54819
|
+
"example": [
|
|
54820
|
+
{
|
|
54821
|
+
"index": 0,
|
|
54822
|
+
"isFinalStage": false,
|
|
54823
|
+
"targetPercentage": 5,
|
|
54824
|
+
"requireApproval": true,
|
|
54825
|
+
"duration": null
|
|
54826
|
+
},
|
|
54827
|
+
{
|
|
54828
|
+
"index": 1,
|
|
54829
|
+
"isFinalStage": false,
|
|
54830
|
+
"targetPercentage": 25,
|
|
54831
|
+
"requireApproval": true,
|
|
54832
|
+
"duration": null
|
|
54833
|
+
},
|
|
54834
|
+
{
|
|
54835
|
+
"index": 2,
|
|
54836
|
+
"isFinalStage": false,
|
|
54837
|
+
"targetPercentage": 60,
|
|
54838
|
+
"requireApproval": true,
|
|
54839
|
+
"duration": null
|
|
54840
|
+
},
|
|
54841
|
+
{
|
|
54842
|
+
"index": 3,
|
|
54843
|
+
"isFinalStage": true,
|
|
54844
|
+
"targetPercentage": 100,
|
|
54845
|
+
"requireApproval": false,
|
|
54846
|
+
"duration": null
|
|
54847
|
+
}
|
|
54848
|
+
]
|
|
54849
|
+
},
|
|
54850
|
+
"type": "array",
|
|
54851
|
+
"description": "All stages configured for this rolling release",
|
|
54852
|
+
"example": [
|
|
54853
|
+
{
|
|
54854
|
+
"index": 0,
|
|
54855
|
+
"isFinalStage": false,
|
|
54856
|
+
"targetPercentage": 5,
|
|
54857
|
+
"requireApproval": true,
|
|
54858
|
+
"duration": null
|
|
54859
|
+
},
|
|
54860
|
+
{
|
|
54861
|
+
"index": 1,
|
|
54862
|
+
"isFinalStage": false,
|
|
54863
|
+
"targetPercentage": 25,
|
|
54864
|
+
"requireApproval": true,
|
|
54865
|
+
"duration": null
|
|
54866
|
+
},
|
|
54867
|
+
{
|
|
54868
|
+
"index": 2,
|
|
54869
|
+
"isFinalStage": false,
|
|
54870
|
+
"targetPercentage": 60,
|
|
54871
|
+
"requireApproval": true,
|
|
54872
|
+
"duration": null
|
|
54873
|
+
},
|
|
54874
|
+
{
|
|
54875
|
+
"index": 3,
|
|
54876
|
+
"isFinalStage": true,
|
|
54877
|
+
"targetPercentage": 100,
|
|
54878
|
+
"requireApproval": false,
|
|
54879
|
+
"duration": null
|
|
54880
|
+
}
|
|
54881
|
+
]
|
|
54882
|
+
},
|
|
54883
|
+
"activeStage": {
|
|
54884
|
+
"nullable": true,
|
|
54885
|
+
"properties": {
|
|
54886
|
+
"index": {
|
|
54887
|
+
"type": "number",
|
|
54888
|
+
"description": "The zero-based index of the stage",
|
|
54889
|
+
"example": 0
|
|
54890
|
+
},
|
|
54891
|
+
"isFinalStage": {
|
|
54892
|
+
"type": "boolean",
|
|
54893
|
+
"description": "Whether or not this stage is the final stage (targetPercentage === 100)",
|
|
54894
|
+
"example": false
|
|
54895
|
+
},
|
|
54896
|
+
"targetPercentage": {
|
|
54897
|
+
"type": "number",
|
|
54898
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
54899
|
+
"example": 25
|
|
54900
|
+
},
|
|
54901
|
+
"requireApproval": {
|
|
54902
|
+
"type": "boolean",
|
|
54903
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
54904
|
+
"example": true
|
|
54905
|
+
},
|
|
54906
|
+
"duration": {
|
|
54907
|
+
"nullable": true,
|
|
54908
|
+
"type": "number",
|
|
54909
|
+
"description": "Duration in seconds for automatic advancement, null for manual stages or the final stage",
|
|
54910
|
+
"example": null
|
|
54911
|
+
}
|
|
54912
|
+
},
|
|
54913
|
+
"required": [
|
|
54914
|
+
"index",
|
|
54915
|
+
"isFinalStage",
|
|
54916
|
+
"targetPercentage",
|
|
54917
|
+
"requireApproval",
|
|
54918
|
+
"duration"
|
|
54919
|
+
],
|
|
54920
|
+
"type": "object",
|
|
54921
|
+
"description": "The currently active stage, null if the rollout is aborted",
|
|
54922
|
+
"example": {
|
|
54923
|
+
"index": 1,
|
|
54924
|
+
"isFinalStage": false,
|
|
54925
|
+
"targetPercentage": 25,
|
|
54926
|
+
"requireApproval": true,
|
|
54927
|
+
"duration": null
|
|
54928
|
+
}
|
|
54929
|
+
},
|
|
54930
|
+
"nextStage": {
|
|
54931
|
+
"nullable": true,
|
|
54932
|
+
"properties": {
|
|
54933
|
+
"index": {
|
|
54934
|
+
"type": "number",
|
|
54935
|
+
"description": "The zero-based index of the stage",
|
|
54936
|
+
"example": 0
|
|
54937
|
+
},
|
|
54938
|
+
"isFinalStage": {
|
|
54939
|
+
"type": "boolean",
|
|
54940
|
+
"description": "Whether or not this stage is the final stage (targetPercentage === 100)",
|
|
54941
|
+
"example": false
|
|
54942
|
+
},
|
|
54943
|
+
"targetPercentage": {
|
|
54944
|
+
"type": "number",
|
|
54945
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
54946
|
+
"example": 25
|
|
54947
|
+
},
|
|
54948
|
+
"requireApproval": {
|
|
54949
|
+
"type": "boolean",
|
|
54950
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
54951
|
+
"example": true
|
|
54952
|
+
},
|
|
54953
|
+
"duration": {
|
|
54954
|
+
"nullable": true,
|
|
54955
|
+
"type": "number",
|
|
54956
|
+
"description": "Duration in seconds for automatic advancement, null for manual stages or the final stage",
|
|
54957
|
+
"example": null
|
|
54958
|
+
}
|
|
54959
|
+
},
|
|
54960
|
+
"required": [
|
|
54961
|
+
"index",
|
|
54962
|
+
"isFinalStage",
|
|
54963
|
+
"targetPercentage",
|
|
54964
|
+
"requireApproval",
|
|
54965
|
+
"duration"
|
|
54966
|
+
],
|
|
54967
|
+
"type": "object",
|
|
54968
|
+
"description": "The next stage to be activated, null if not in ACTIVE state",
|
|
54969
|
+
"example": {
|
|
54970
|
+
"index": 2,
|
|
54971
|
+
"isFinalStage": false,
|
|
54972
|
+
"targetPercentage": 60,
|
|
54973
|
+
"requireApproval": true,
|
|
54974
|
+
"duration": null
|
|
54975
|
+
}
|
|
54976
|
+
},
|
|
54977
|
+
"startedAt": {
|
|
54978
|
+
"type": "number",
|
|
54979
|
+
"description": "Unix timestamp in milliseconds when the rolling release started",
|
|
54980
|
+
"example": 1716210500000
|
|
54981
|
+
},
|
|
54982
|
+
"updatedAt": {
|
|
54983
|
+
"type": "number",
|
|
54984
|
+
"description": "Unix timestamp in milliseconds when the rolling release was last updated",
|
|
54985
|
+
"example": 1716210600000
|
|
54986
|
+
}
|
|
54987
|
+
},
|
|
54988
|
+
"required": [
|
|
54989
|
+
"state",
|
|
54990
|
+
"currentDeployment",
|
|
54991
|
+
"canaryDeployment",
|
|
54992
|
+
"queuedDeploymentId",
|
|
54993
|
+
"stages",
|
|
54994
|
+
"activeStage",
|
|
54995
|
+
"nextStage",
|
|
54996
|
+
"startedAt",
|
|
54997
|
+
"updatedAt"
|
|
54998
|
+
],
|
|
54999
|
+
"type": "object",
|
|
55000
|
+
"description": "Rolling release information including configuration and document details, or null if no rolling release exists"
|
|
55001
|
+
}
|
|
55002
|
+
},
|
|
55003
|
+
"required": [
|
|
55004
|
+
"rollingRelease"
|
|
55005
|
+
],
|
|
55006
|
+
"type": "object",
|
|
55007
|
+
"description": "The response format for rolling release endpoints that return rolling release information"
|
|
55008
|
+
}
|
|
55009
|
+
}
|
|
55010
|
+
}
|
|
55011
|
+
},
|
|
55012
|
+
"400": {
|
|
55013
|
+
"description": "One of the provided values in the request query is invalid.",
|
|
55014
|
+
"content": {
|
|
55015
|
+
"application/json": {
|
|
55016
|
+
"schema": {
|
|
55017
|
+
"$ref": "#/components/schemas/VercelBadRequestError"
|
|
55018
|
+
}
|
|
55019
|
+
}
|
|
55020
|
+
}
|
|
55021
|
+
},
|
|
55022
|
+
"401": {
|
|
55023
|
+
"description": "",
|
|
55024
|
+
"content": {
|
|
55025
|
+
"application/json": {
|
|
55026
|
+
"schema": {
|
|
55027
|
+
"$ref": "#/components/schemas/VercelForbiddenError"
|
|
55028
|
+
}
|
|
55029
|
+
}
|
|
55030
|
+
}
|
|
55031
|
+
},
|
|
55032
|
+
"403": {
|
|
55033
|
+
"description": "You do not have permission to access this resource."
|
|
55034
|
+
},
|
|
55035
|
+
"404": {
|
|
55036
|
+
"description": "",
|
|
55037
|
+
"content": {
|
|
55038
|
+
"application/json": {
|
|
55039
|
+
"schema": {
|
|
55040
|
+
"$ref": "#/components/schemas/VercelNotFoundError"
|
|
55041
|
+
}
|
|
55042
|
+
}
|
|
55043
|
+
}
|
|
55044
|
+
}
|
|
55045
|
+
},
|
|
55046
|
+
"parameters": [
|
|
55047
|
+
{
|
|
55048
|
+
"name": "idOrName",
|
|
55049
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
55050
|
+
"in": "path",
|
|
55051
|
+
"required": true,
|
|
55052
|
+
"schema": {
|
|
55053
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
55054
|
+
"type": "string"
|
|
55055
|
+
}
|
|
55056
|
+
},
|
|
55057
|
+
{
|
|
55058
|
+
"name": "state",
|
|
55059
|
+
"description": "Filter by rolling release state",
|
|
55060
|
+
"in": "query",
|
|
55061
|
+
"required": false,
|
|
55062
|
+
"schema": {
|
|
55063
|
+
"description": "Filter by rolling release state",
|
|
55064
|
+
"type": "string",
|
|
55065
|
+
"enum": [
|
|
55066
|
+
"ACTIVE",
|
|
55067
|
+
"COMPLETE",
|
|
55068
|
+
"ABORTED"
|
|
55069
|
+
]
|
|
55070
|
+
}
|
|
55071
|
+
},
|
|
55072
|
+
{
|
|
55073
|
+
"description": "The Team identifier to perform the request on behalf of.",
|
|
55074
|
+
"in": "query",
|
|
55075
|
+
"name": "teamId",
|
|
55076
|
+
"schema": {
|
|
55077
|
+
"type": "string",
|
|
55078
|
+
"example": "team_1a2b3c4d5e6f7g8h9i0j1k2l"
|
|
55079
|
+
}
|
|
55080
|
+
},
|
|
55081
|
+
{
|
|
55082
|
+
"description": "The Team slug to perform the request on behalf of.",
|
|
55083
|
+
"in": "query",
|
|
55084
|
+
"name": "slug",
|
|
55085
|
+
"schema": {
|
|
55086
|
+
"type": "string",
|
|
55087
|
+
"example": "my-team-url-slug"
|
|
55088
|
+
}
|
|
55089
|
+
}
|
|
55090
|
+
]
|
|
55091
|
+
}
|
|
55092
|
+
},
|
|
55093
|
+
"/v1/projects/{idOrName}/rolling-release/approve-stage": {
|
|
55094
|
+
"post": {
|
|
55095
|
+
"description": "Advance a rollout to the next stage. This is only needed when rolling releases is configured to require manual approval.",
|
|
55096
|
+
"operationId": "approveRollingReleaseStage",
|
|
55097
|
+
"security": [
|
|
55098
|
+
{
|
|
55099
|
+
"bearerToken": []
|
|
55100
|
+
}
|
|
55101
|
+
],
|
|
55102
|
+
"summary": "Update the active rolling release to the next stage for a project",
|
|
55103
|
+
"tags": [
|
|
55104
|
+
"rolling-release"
|
|
55105
|
+
],
|
|
55106
|
+
"responses": {
|
|
55107
|
+
"200": {
|
|
55108
|
+
"description": "",
|
|
55109
|
+
"content": {
|
|
55110
|
+
"application/json": {
|
|
55111
|
+
"schema": {
|
|
55112
|
+
"properties": {
|
|
55113
|
+
"rollingRelease": {
|
|
55114
|
+
"nullable": true,
|
|
55115
|
+
"properties": {
|
|
55116
|
+
"state": {
|
|
55117
|
+
"type": "string",
|
|
55118
|
+
"enum": [
|
|
55119
|
+
"ACTIVE",
|
|
55120
|
+
"COMPLETE",
|
|
55121
|
+
"ABORTED"
|
|
55122
|
+
],
|
|
55123
|
+
"description": "The current state of the rolling release",
|
|
55124
|
+
"example": "ACTIVE"
|
|
55125
|
+
},
|
|
55126
|
+
"currentDeployment": {
|
|
55127
|
+
"nullable": true,
|
|
55128
|
+
"properties": {
|
|
55129
|
+
"id": {
|
|
55130
|
+
"type": "string"
|
|
55131
|
+
},
|
|
55132
|
+
"name": {
|
|
55133
|
+
"type": "string"
|
|
55134
|
+
},
|
|
55135
|
+
"url": {
|
|
55136
|
+
"type": "string"
|
|
55137
|
+
},
|
|
55138
|
+
"target": {
|
|
55139
|
+
"nullable": true,
|
|
55140
|
+
"type": "string",
|
|
55141
|
+
"enum": [
|
|
55142
|
+
"staging",
|
|
55143
|
+
"production"
|
|
55144
|
+
]
|
|
55145
|
+
},
|
|
55146
|
+
"source": {
|
|
55147
|
+
"type": "string",
|
|
55148
|
+
"enum": [
|
|
55149
|
+
"api-trigger-git-deploy",
|
|
55150
|
+
"cli",
|
|
55151
|
+
"clone/repo",
|
|
55152
|
+
"git",
|
|
55153
|
+
"import",
|
|
55154
|
+
"import/repo",
|
|
55155
|
+
"redeploy",
|
|
55156
|
+
"v0-web"
|
|
55157
|
+
]
|
|
55158
|
+
},
|
|
55159
|
+
"createdAt": {
|
|
55160
|
+
"type": "number"
|
|
55161
|
+
},
|
|
55162
|
+
"readyState": {
|
|
55163
|
+
"type": "string",
|
|
55164
|
+
"enum": [
|
|
55165
|
+
"BUILDING",
|
|
55166
|
+
"ERROR",
|
|
55167
|
+
"INITIALIZING",
|
|
55168
|
+
"QUEUED",
|
|
55169
|
+
"READY",
|
|
55170
|
+
"CANCELED"
|
|
55171
|
+
]
|
|
55172
|
+
},
|
|
55173
|
+
"readyStateAt": {
|
|
55174
|
+
"type": "number"
|
|
55175
|
+
}
|
|
55176
|
+
},
|
|
55177
|
+
"required": [
|
|
55178
|
+
"id",
|
|
55179
|
+
"name",
|
|
55180
|
+
"url",
|
|
55181
|
+
"createdAt",
|
|
55182
|
+
"readyState"
|
|
55183
|
+
],
|
|
55184
|
+
"type": "object",
|
|
55185
|
+
"description": "The current deployment receiving production traffic",
|
|
55186
|
+
"example": {
|
|
55187
|
+
"id": "dpl_abc123",
|
|
55188
|
+
"name": "my-shop@main",
|
|
55189
|
+
"url": "my-shop.vercel.app",
|
|
55190
|
+
"target": "production",
|
|
55191
|
+
"source": "git",
|
|
55192
|
+
"createdAt": 1716206500000,
|
|
55193
|
+
"readyState": "READY",
|
|
55194
|
+
"readyStateAt": 1716206800000
|
|
55195
|
+
}
|
|
55196
|
+
},
|
|
55197
|
+
"canaryDeployment": {
|
|
55198
|
+
"nullable": true,
|
|
55199
|
+
"properties": {
|
|
55200
|
+
"id": {
|
|
55201
|
+
"type": "string"
|
|
55202
|
+
},
|
|
55203
|
+
"name": {
|
|
55204
|
+
"type": "string"
|
|
55205
|
+
},
|
|
55206
|
+
"url": {
|
|
55207
|
+
"type": "string"
|
|
55208
|
+
},
|
|
55209
|
+
"target": {
|
|
55210
|
+
"nullable": true,
|
|
55211
|
+
"type": "string",
|
|
55212
|
+
"enum": [
|
|
55213
|
+
"staging",
|
|
55214
|
+
"production"
|
|
55215
|
+
]
|
|
55216
|
+
},
|
|
55217
|
+
"source": {
|
|
55218
|
+
"type": "string",
|
|
55219
|
+
"enum": [
|
|
55220
|
+
"api-trigger-git-deploy",
|
|
55221
|
+
"cli",
|
|
55222
|
+
"clone/repo",
|
|
55223
|
+
"git",
|
|
55224
|
+
"import",
|
|
55225
|
+
"import/repo",
|
|
55226
|
+
"redeploy",
|
|
55227
|
+
"v0-web"
|
|
55228
|
+
]
|
|
55229
|
+
},
|
|
55230
|
+
"createdAt": {
|
|
55231
|
+
"type": "number"
|
|
55232
|
+
},
|
|
55233
|
+
"readyState": {
|
|
55234
|
+
"type": "string",
|
|
55235
|
+
"enum": [
|
|
55236
|
+
"BUILDING",
|
|
55237
|
+
"ERROR",
|
|
55238
|
+
"INITIALIZING",
|
|
55239
|
+
"QUEUED",
|
|
55240
|
+
"READY",
|
|
55241
|
+
"CANCELED"
|
|
55242
|
+
]
|
|
55243
|
+
},
|
|
55244
|
+
"readyStateAt": {
|
|
55245
|
+
"type": "number"
|
|
55246
|
+
}
|
|
55247
|
+
},
|
|
55248
|
+
"required": [
|
|
55249
|
+
"id",
|
|
55250
|
+
"name",
|
|
55251
|
+
"url",
|
|
55252
|
+
"createdAt",
|
|
55253
|
+
"readyState"
|
|
55254
|
+
],
|
|
55255
|
+
"type": "object",
|
|
55256
|
+
"description": "The canary deployment being rolled out",
|
|
55257
|
+
"example": {
|
|
55258
|
+
"id": "dpl_def456",
|
|
55259
|
+
"name": "my-shop@9c7e2f4",
|
|
55260
|
+
"url": "9c7e2f4-my-shop.vercel.app",
|
|
55261
|
+
"target": "production",
|
|
55262
|
+
"source": "git",
|
|
55263
|
+
"createdAt": 1716210100000,
|
|
55264
|
+
"readyState": "READY",
|
|
55265
|
+
"readyStateAt": 1716210400000
|
|
55266
|
+
}
|
|
55267
|
+
},
|
|
55268
|
+
"queuedDeploymentId": {
|
|
55269
|
+
"nullable": true,
|
|
55270
|
+
"type": "string",
|
|
55271
|
+
"description": "The ID of a deployment queued for the next rolling release",
|
|
55272
|
+
"example": "dpl_ghi789"
|
|
55273
|
+
},
|
|
55274
|
+
"stages": {
|
|
55275
|
+
"items": {
|
|
55276
|
+
"properties": {
|
|
55277
|
+
"index": {
|
|
55278
|
+
"type": "number",
|
|
55279
|
+
"description": "The zero-based index of the stage",
|
|
55280
|
+
"example": 0
|
|
55281
|
+
},
|
|
55282
|
+
"isFinalStage": {
|
|
55283
|
+
"type": "boolean",
|
|
55284
|
+
"description": "Whether or not this stage is the final stage (targetPercentage === 100)",
|
|
55285
|
+
"example": false
|
|
55286
|
+
},
|
|
55287
|
+
"targetPercentage": {
|
|
55288
|
+
"type": "number",
|
|
55289
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
55290
|
+
"example": 25
|
|
55291
|
+
},
|
|
55292
|
+
"requireApproval": {
|
|
55293
|
+
"type": "boolean",
|
|
55294
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
55295
|
+
"example": true
|
|
55296
|
+
},
|
|
55297
|
+
"duration": {
|
|
55298
|
+
"nullable": true,
|
|
55299
|
+
"type": "number",
|
|
55300
|
+
"description": "Duration in seconds for automatic advancement, null for manual stages or the final stage",
|
|
55301
|
+
"example": null
|
|
55302
|
+
}
|
|
55303
|
+
},
|
|
55304
|
+
"required": [
|
|
55305
|
+
"index",
|
|
55306
|
+
"isFinalStage",
|
|
55307
|
+
"targetPercentage",
|
|
55308
|
+
"requireApproval",
|
|
55309
|
+
"duration"
|
|
55310
|
+
],
|
|
55311
|
+
"type": "object",
|
|
55312
|
+
"description": "All stages configured for this rolling release",
|
|
55313
|
+
"example": [
|
|
55314
|
+
{
|
|
55315
|
+
"index": 0,
|
|
55316
|
+
"isFinalStage": false,
|
|
55317
|
+
"targetPercentage": 5,
|
|
55318
|
+
"requireApproval": true,
|
|
55319
|
+
"duration": null
|
|
55320
|
+
},
|
|
55321
|
+
{
|
|
55322
|
+
"index": 1,
|
|
55323
|
+
"isFinalStage": false,
|
|
55324
|
+
"targetPercentage": 25,
|
|
55325
|
+
"requireApproval": true,
|
|
55326
|
+
"duration": null
|
|
55327
|
+
},
|
|
55328
|
+
{
|
|
55329
|
+
"index": 2,
|
|
55330
|
+
"isFinalStage": false,
|
|
55331
|
+
"targetPercentage": 60,
|
|
55332
|
+
"requireApproval": true,
|
|
55333
|
+
"duration": null
|
|
55334
|
+
},
|
|
55335
|
+
{
|
|
55336
|
+
"index": 3,
|
|
55337
|
+
"isFinalStage": true,
|
|
55338
|
+
"targetPercentage": 100,
|
|
55339
|
+
"requireApproval": false,
|
|
55340
|
+
"duration": null
|
|
55341
|
+
}
|
|
55342
|
+
]
|
|
55343
|
+
},
|
|
55344
|
+
"type": "array",
|
|
55345
|
+
"description": "All stages configured for this rolling release",
|
|
55346
|
+
"example": [
|
|
55347
|
+
{
|
|
55348
|
+
"index": 0,
|
|
55349
|
+
"isFinalStage": false,
|
|
55350
|
+
"targetPercentage": 5,
|
|
55351
|
+
"requireApproval": true,
|
|
55352
|
+
"duration": null
|
|
55353
|
+
},
|
|
55354
|
+
{
|
|
55355
|
+
"index": 1,
|
|
55356
|
+
"isFinalStage": false,
|
|
55357
|
+
"targetPercentage": 25,
|
|
55358
|
+
"requireApproval": true,
|
|
55359
|
+
"duration": null
|
|
55360
|
+
},
|
|
55361
|
+
{
|
|
55362
|
+
"index": 2,
|
|
55363
|
+
"isFinalStage": false,
|
|
55364
|
+
"targetPercentage": 60,
|
|
55365
|
+
"requireApproval": true,
|
|
55366
|
+
"duration": null
|
|
55367
|
+
},
|
|
55368
|
+
{
|
|
55369
|
+
"index": 3,
|
|
55370
|
+
"isFinalStage": true,
|
|
55371
|
+
"targetPercentage": 100,
|
|
55372
|
+
"requireApproval": false,
|
|
55373
|
+
"duration": null
|
|
55374
|
+
}
|
|
55375
|
+
]
|
|
55376
|
+
},
|
|
55377
|
+
"activeStage": {
|
|
55378
|
+
"nullable": true,
|
|
55379
|
+
"properties": {
|
|
55380
|
+
"index": {
|
|
55381
|
+
"type": "number",
|
|
55382
|
+
"description": "The zero-based index of the stage",
|
|
55383
|
+
"example": 0
|
|
55384
|
+
},
|
|
55385
|
+
"isFinalStage": {
|
|
55386
|
+
"type": "boolean",
|
|
55387
|
+
"description": "Whether or not this stage is the final stage (targetPercentage === 100)",
|
|
55388
|
+
"example": false
|
|
55389
|
+
},
|
|
55390
|
+
"targetPercentage": {
|
|
55391
|
+
"type": "number",
|
|
55392
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
55393
|
+
"example": 25
|
|
55394
|
+
},
|
|
55395
|
+
"requireApproval": {
|
|
55396
|
+
"type": "boolean",
|
|
55397
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
55398
|
+
"example": true
|
|
55399
|
+
},
|
|
55400
|
+
"duration": {
|
|
55401
|
+
"nullable": true,
|
|
55402
|
+
"type": "number",
|
|
55403
|
+
"description": "Duration in seconds for automatic advancement, null for manual stages or the final stage",
|
|
55404
|
+
"example": null
|
|
55405
|
+
}
|
|
55406
|
+
},
|
|
55407
|
+
"required": [
|
|
55408
|
+
"index",
|
|
55409
|
+
"isFinalStage",
|
|
55410
|
+
"targetPercentage",
|
|
55411
|
+
"requireApproval",
|
|
55412
|
+
"duration"
|
|
55413
|
+
],
|
|
55414
|
+
"type": "object",
|
|
55415
|
+
"description": "The currently active stage, null if the rollout is aborted",
|
|
55416
|
+
"example": {
|
|
55417
|
+
"index": 1,
|
|
55418
|
+
"isFinalStage": false,
|
|
55419
|
+
"targetPercentage": 25,
|
|
55420
|
+
"requireApproval": true,
|
|
55421
|
+
"duration": null
|
|
55422
|
+
}
|
|
55423
|
+
},
|
|
55424
|
+
"nextStage": {
|
|
55425
|
+
"nullable": true,
|
|
55426
|
+
"properties": {
|
|
55427
|
+
"index": {
|
|
55428
|
+
"type": "number",
|
|
55429
|
+
"description": "The zero-based index of the stage",
|
|
55430
|
+
"example": 0
|
|
55431
|
+
},
|
|
55432
|
+
"isFinalStage": {
|
|
55433
|
+
"type": "boolean",
|
|
55434
|
+
"description": "Whether or not this stage is the final stage (targetPercentage === 100)",
|
|
55435
|
+
"example": false
|
|
55436
|
+
},
|
|
55437
|
+
"targetPercentage": {
|
|
55438
|
+
"type": "number",
|
|
55439
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
55440
|
+
"example": 25
|
|
55441
|
+
},
|
|
55442
|
+
"requireApproval": {
|
|
55443
|
+
"type": "boolean",
|
|
55444
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
55445
|
+
"example": true
|
|
55446
|
+
},
|
|
55447
|
+
"duration": {
|
|
55448
|
+
"nullable": true,
|
|
55449
|
+
"type": "number",
|
|
55450
|
+
"description": "Duration in seconds for automatic advancement, null for manual stages or the final stage",
|
|
55451
|
+
"example": null
|
|
55452
|
+
}
|
|
55453
|
+
},
|
|
55454
|
+
"required": [
|
|
55455
|
+
"index",
|
|
55456
|
+
"isFinalStage",
|
|
55457
|
+
"targetPercentage",
|
|
55458
|
+
"requireApproval",
|
|
55459
|
+
"duration"
|
|
55460
|
+
],
|
|
55461
|
+
"type": "object",
|
|
55462
|
+
"description": "The next stage to be activated, null if not in ACTIVE state",
|
|
55463
|
+
"example": {
|
|
55464
|
+
"index": 2,
|
|
55465
|
+
"isFinalStage": false,
|
|
55466
|
+
"targetPercentage": 60,
|
|
55467
|
+
"requireApproval": true,
|
|
55468
|
+
"duration": null
|
|
55469
|
+
}
|
|
55470
|
+
},
|
|
55471
|
+
"startedAt": {
|
|
55472
|
+
"type": "number",
|
|
55473
|
+
"description": "Unix timestamp in milliseconds when the rolling release started",
|
|
55474
|
+
"example": 1716210500000
|
|
55475
|
+
},
|
|
55476
|
+
"updatedAt": {
|
|
55477
|
+
"type": "number",
|
|
55478
|
+
"description": "Unix timestamp in milliseconds when the rolling release was last updated",
|
|
55479
|
+
"example": 1716210600000
|
|
55480
|
+
}
|
|
55481
|
+
},
|
|
55482
|
+
"required": [
|
|
55483
|
+
"state",
|
|
55484
|
+
"currentDeployment",
|
|
55485
|
+
"canaryDeployment",
|
|
55486
|
+
"queuedDeploymentId",
|
|
55487
|
+
"stages",
|
|
55488
|
+
"activeStage",
|
|
55489
|
+
"nextStage",
|
|
55490
|
+
"startedAt",
|
|
55491
|
+
"updatedAt"
|
|
55492
|
+
],
|
|
55493
|
+
"type": "object",
|
|
55494
|
+
"description": "Rolling release information including configuration and document details, or null if no rolling release exists"
|
|
55495
|
+
}
|
|
55496
|
+
},
|
|
55497
|
+
"required": [
|
|
55498
|
+
"rollingRelease"
|
|
55499
|
+
],
|
|
55500
|
+
"type": "object",
|
|
55501
|
+
"description": "The response format for rolling release endpoints that return rolling release information"
|
|
55502
|
+
}
|
|
55503
|
+
}
|
|
55504
|
+
}
|
|
55505
|
+
},
|
|
55506
|
+
"400": {
|
|
55507
|
+
"description": "One of the provided values in the request body is invalid.\nOne of the provided values in the request query is invalid.",
|
|
55508
|
+
"content": {
|
|
55509
|
+
"application/json": {
|
|
55510
|
+
"schema": {
|
|
55511
|
+
"$ref": "#/components/schemas/VercelBadRequestError"
|
|
55512
|
+
}
|
|
55513
|
+
}
|
|
55514
|
+
}
|
|
55515
|
+
},
|
|
55516
|
+
"401": {
|
|
55517
|
+
"description": "",
|
|
55518
|
+
"content": {
|
|
55519
|
+
"application/json": {
|
|
55520
|
+
"schema": {
|
|
55521
|
+
"$ref": "#/components/schemas/VercelForbiddenError"
|
|
55522
|
+
}
|
|
55523
|
+
}
|
|
55524
|
+
}
|
|
55525
|
+
},
|
|
55526
|
+
"403": {
|
|
55527
|
+
"description": "You do not have permission to access this resource."
|
|
55528
|
+
},
|
|
55529
|
+
"404": {
|
|
55530
|
+
"description": "",
|
|
55531
|
+
"content": {
|
|
55532
|
+
"application/json": {
|
|
55533
|
+
"schema": {
|
|
55534
|
+
"$ref": "#/components/schemas/VercelNotFoundError"
|
|
55535
|
+
}
|
|
55536
|
+
}
|
|
55537
|
+
}
|
|
55538
|
+
},
|
|
55539
|
+
"500": {
|
|
55540
|
+
"description": ""
|
|
55541
|
+
}
|
|
55542
|
+
},
|
|
55543
|
+
"parameters": [
|
|
55544
|
+
{
|
|
55545
|
+
"name": "idOrName",
|
|
55546
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
55547
|
+
"in": "path",
|
|
55548
|
+
"required": true,
|
|
55549
|
+
"schema": {
|
|
55550
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
55551
|
+
"type": "string"
|
|
55552
|
+
}
|
|
55553
|
+
},
|
|
55554
|
+
{
|
|
55555
|
+
"description": "The Team identifier to perform the request on behalf of.",
|
|
55556
|
+
"in": "query",
|
|
55557
|
+
"name": "teamId",
|
|
55558
|
+
"schema": {
|
|
55559
|
+
"type": "string",
|
|
55560
|
+
"example": "team_1a2b3c4d5e6f7g8h9i0j1k2l"
|
|
55561
|
+
}
|
|
55562
|
+
},
|
|
55563
|
+
{
|
|
55564
|
+
"description": "The Team slug to perform the request on behalf of.",
|
|
55565
|
+
"in": "query",
|
|
55566
|
+
"name": "slug",
|
|
55567
|
+
"schema": {
|
|
55568
|
+
"type": "string",
|
|
55569
|
+
"example": "my-team-url-slug"
|
|
55570
|
+
}
|
|
55571
|
+
}
|
|
55572
|
+
],
|
|
55573
|
+
"requestBody": {
|
|
55574
|
+
"content": {
|
|
55575
|
+
"application/json": {
|
|
55576
|
+
"schema": {
|
|
55577
|
+
"type": "object",
|
|
55578
|
+
"required": [
|
|
55579
|
+
"nextStageIndex",
|
|
55580
|
+
"canaryDeploymentId"
|
|
55581
|
+
],
|
|
55582
|
+
"properties": {
|
|
55583
|
+
"nextStageIndex": {
|
|
55584
|
+
"description": "The index of the stage to transition to",
|
|
55585
|
+
"type": "number"
|
|
55586
|
+
},
|
|
55587
|
+
"canaryDeploymentId": {
|
|
55588
|
+
"description": "The id of the canary deployment to approve for the next stage",
|
|
55589
|
+
"type": "string"
|
|
55590
|
+
}
|
|
55591
|
+
}
|
|
55592
|
+
}
|
|
55593
|
+
}
|
|
55594
|
+
}
|
|
55595
|
+
}
|
|
55596
|
+
}
|
|
55597
|
+
},
|
|
55598
|
+
"/v1/projects/{idOrName}/rolling-release/complete": {
|
|
55599
|
+
"post": {
|
|
55600
|
+
"description": "Force-complete a Rolling Release. The canary deployment will begin serving 100% of the traffic.",
|
|
55601
|
+
"operationId": "completeRollingRelease",
|
|
55602
|
+
"security": [
|
|
55603
|
+
{
|
|
55604
|
+
"bearerToken": []
|
|
55605
|
+
}
|
|
55606
|
+
],
|
|
55607
|
+
"summary": "Complete the rolling release for the project",
|
|
55608
|
+
"tags": [
|
|
55609
|
+
"rolling-release"
|
|
55610
|
+
],
|
|
55611
|
+
"responses": {
|
|
55612
|
+
"200": {
|
|
55613
|
+
"description": "",
|
|
55614
|
+
"content": {
|
|
55615
|
+
"application/json": {
|
|
55616
|
+
"schema": {
|
|
55617
|
+
"properties": {
|
|
55618
|
+
"rollingRelease": {
|
|
55619
|
+
"nullable": true,
|
|
55620
|
+
"properties": {
|
|
55621
|
+
"state": {
|
|
55622
|
+
"type": "string",
|
|
55623
|
+
"enum": [
|
|
55624
|
+
"ACTIVE",
|
|
55625
|
+
"COMPLETE",
|
|
55626
|
+
"ABORTED"
|
|
55627
|
+
],
|
|
55628
|
+
"description": "The current state of the rolling release",
|
|
55629
|
+
"example": "ACTIVE"
|
|
55630
|
+
},
|
|
55631
|
+
"currentDeployment": {
|
|
55632
|
+
"nullable": true,
|
|
55633
|
+
"properties": {
|
|
55634
|
+
"id": {
|
|
55635
|
+
"type": "string"
|
|
55636
|
+
},
|
|
55637
|
+
"name": {
|
|
55638
|
+
"type": "string"
|
|
55639
|
+
},
|
|
55640
|
+
"url": {
|
|
55641
|
+
"type": "string"
|
|
55642
|
+
},
|
|
55643
|
+
"target": {
|
|
55644
|
+
"nullable": true,
|
|
55645
|
+
"type": "string",
|
|
55646
|
+
"enum": [
|
|
55647
|
+
"staging",
|
|
55648
|
+
"production"
|
|
55649
|
+
]
|
|
55650
|
+
},
|
|
55651
|
+
"source": {
|
|
55652
|
+
"type": "string",
|
|
55653
|
+
"enum": [
|
|
55654
|
+
"api-trigger-git-deploy",
|
|
55655
|
+
"cli",
|
|
55656
|
+
"clone/repo",
|
|
55657
|
+
"git",
|
|
55658
|
+
"import",
|
|
55659
|
+
"import/repo",
|
|
55660
|
+
"redeploy",
|
|
55661
|
+
"v0-web"
|
|
55662
|
+
]
|
|
55663
|
+
},
|
|
55664
|
+
"createdAt": {
|
|
55665
|
+
"type": "number"
|
|
55666
|
+
},
|
|
55667
|
+
"readyState": {
|
|
55668
|
+
"type": "string",
|
|
55669
|
+
"enum": [
|
|
55670
|
+
"BUILDING",
|
|
55671
|
+
"ERROR",
|
|
55672
|
+
"INITIALIZING",
|
|
55673
|
+
"QUEUED",
|
|
55674
|
+
"READY",
|
|
55675
|
+
"CANCELED"
|
|
55676
|
+
]
|
|
55677
|
+
},
|
|
55678
|
+
"readyStateAt": {
|
|
55679
|
+
"type": "number"
|
|
55680
|
+
}
|
|
55681
|
+
},
|
|
55682
|
+
"required": [
|
|
55683
|
+
"id",
|
|
55684
|
+
"name",
|
|
55685
|
+
"url",
|
|
55686
|
+
"createdAt",
|
|
55687
|
+
"readyState"
|
|
55688
|
+
],
|
|
55689
|
+
"type": "object",
|
|
55690
|
+
"description": "The current deployment receiving production traffic",
|
|
55691
|
+
"example": {
|
|
55692
|
+
"id": "dpl_abc123",
|
|
55693
|
+
"name": "my-shop@main",
|
|
55694
|
+
"url": "my-shop.vercel.app",
|
|
55695
|
+
"target": "production",
|
|
55696
|
+
"source": "git",
|
|
55697
|
+
"createdAt": 1716206500000,
|
|
55698
|
+
"readyState": "READY",
|
|
55699
|
+
"readyStateAt": 1716206800000
|
|
55700
|
+
}
|
|
55701
|
+
},
|
|
55702
|
+
"canaryDeployment": {
|
|
55703
|
+
"nullable": true,
|
|
55704
|
+
"properties": {
|
|
55705
|
+
"id": {
|
|
55706
|
+
"type": "string"
|
|
55707
|
+
},
|
|
55708
|
+
"name": {
|
|
55709
|
+
"type": "string"
|
|
55710
|
+
},
|
|
55711
|
+
"url": {
|
|
55712
|
+
"type": "string"
|
|
55713
|
+
},
|
|
55714
|
+
"target": {
|
|
55715
|
+
"nullable": true,
|
|
55716
|
+
"type": "string",
|
|
55717
|
+
"enum": [
|
|
55718
|
+
"staging",
|
|
55719
|
+
"production"
|
|
55720
|
+
]
|
|
55721
|
+
},
|
|
55722
|
+
"source": {
|
|
55723
|
+
"type": "string",
|
|
55724
|
+
"enum": [
|
|
55725
|
+
"api-trigger-git-deploy",
|
|
55726
|
+
"cli",
|
|
55727
|
+
"clone/repo",
|
|
55728
|
+
"git",
|
|
55729
|
+
"import",
|
|
55730
|
+
"import/repo",
|
|
55731
|
+
"redeploy",
|
|
55732
|
+
"v0-web"
|
|
55733
|
+
]
|
|
55734
|
+
},
|
|
55735
|
+
"createdAt": {
|
|
55736
|
+
"type": "number"
|
|
55737
|
+
},
|
|
55738
|
+
"readyState": {
|
|
55739
|
+
"type": "string",
|
|
55740
|
+
"enum": [
|
|
55741
|
+
"BUILDING",
|
|
55742
|
+
"ERROR",
|
|
55743
|
+
"INITIALIZING",
|
|
55744
|
+
"QUEUED",
|
|
55745
|
+
"READY",
|
|
55746
|
+
"CANCELED"
|
|
55747
|
+
]
|
|
55748
|
+
},
|
|
55749
|
+
"readyStateAt": {
|
|
55750
|
+
"type": "number"
|
|
55751
|
+
}
|
|
55752
|
+
},
|
|
55753
|
+
"required": [
|
|
55754
|
+
"id",
|
|
55755
|
+
"name",
|
|
55756
|
+
"url",
|
|
55757
|
+
"createdAt",
|
|
55758
|
+
"readyState"
|
|
55759
|
+
],
|
|
55760
|
+
"type": "object",
|
|
55761
|
+
"description": "The canary deployment being rolled out",
|
|
55762
|
+
"example": {
|
|
55763
|
+
"id": "dpl_def456",
|
|
55764
|
+
"name": "my-shop@9c7e2f4",
|
|
55765
|
+
"url": "9c7e2f4-my-shop.vercel.app",
|
|
55766
|
+
"target": "production",
|
|
55767
|
+
"source": "git",
|
|
55768
|
+
"createdAt": 1716210100000,
|
|
55769
|
+
"readyState": "READY",
|
|
55770
|
+
"readyStateAt": 1716210400000
|
|
55771
|
+
}
|
|
55772
|
+
},
|
|
55773
|
+
"queuedDeploymentId": {
|
|
55774
|
+
"nullable": true,
|
|
55775
|
+
"type": "string",
|
|
55776
|
+
"description": "The ID of a deployment queued for the next rolling release",
|
|
55777
|
+
"example": "dpl_ghi789"
|
|
55778
|
+
},
|
|
55779
|
+
"stages": {
|
|
55780
|
+
"items": {
|
|
55781
|
+
"properties": {
|
|
55782
|
+
"index": {
|
|
55783
|
+
"type": "number",
|
|
55784
|
+
"description": "The zero-based index of the stage",
|
|
55785
|
+
"example": 0
|
|
55786
|
+
},
|
|
55787
|
+
"isFinalStage": {
|
|
55788
|
+
"type": "boolean",
|
|
55789
|
+
"description": "Whether or not this stage is the final stage (targetPercentage === 100)",
|
|
55790
|
+
"example": false
|
|
55791
|
+
},
|
|
55792
|
+
"targetPercentage": {
|
|
55793
|
+
"type": "number",
|
|
55794
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
55795
|
+
"example": 25
|
|
55796
|
+
},
|
|
55797
|
+
"requireApproval": {
|
|
55798
|
+
"type": "boolean",
|
|
55799
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
55800
|
+
"example": true
|
|
55801
|
+
},
|
|
55802
|
+
"duration": {
|
|
55803
|
+
"nullable": true,
|
|
55804
|
+
"type": "number",
|
|
55805
|
+
"description": "Duration in seconds for automatic advancement, null for manual stages or the final stage",
|
|
55806
|
+
"example": null
|
|
55807
|
+
}
|
|
55808
|
+
},
|
|
55809
|
+
"required": [
|
|
55810
|
+
"index",
|
|
55811
|
+
"isFinalStage",
|
|
55812
|
+
"targetPercentage",
|
|
55813
|
+
"requireApproval",
|
|
55814
|
+
"duration"
|
|
55815
|
+
],
|
|
55816
|
+
"type": "object",
|
|
55817
|
+
"description": "All stages configured for this rolling release",
|
|
55818
|
+
"example": [
|
|
55819
|
+
{
|
|
55820
|
+
"index": 0,
|
|
55821
|
+
"isFinalStage": false,
|
|
55822
|
+
"targetPercentage": 5,
|
|
55823
|
+
"requireApproval": true,
|
|
55824
|
+
"duration": null
|
|
55825
|
+
},
|
|
55826
|
+
{
|
|
55827
|
+
"index": 1,
|
|
55828
|
+
"isFinalStage": false,
|
|
55829
|
+
"targetPercentage": 25,
|
|
55830
|
+
"requireApproval": true,
|
|
55831
|
+
"duration": null
|
|
55832
|
+
},
|
|
55833
|
+
{
|
|
55834
|
+
"index": 2,
|
|
55835
|
+
"isFinalStage": false,
|
|
55836
|
+
"targetPercentage": 60,
|
|
55837
|
+
"requireApproval": true,
|
|
55838
|
+
"duration": null
|
|
55839
|
+
},
|
|
55840
|
+
{
|
|
55841
|
+
"index": 3,
|
|
55842
|
+
"isFinalStage": true,
|
|
55843
|
+
"targetPercentage": 100,
|
|
55844
|
+
"requireApproval": false,
|
|
55845
|
+
"duration": null
|
|
55846
|
+
}
|
|
55847
|
+
]
|
|
55848
|
+
},
|
|
55849
|
+
"type": "array",
|
|
55850
|
+
"description": "All stages configured for this rolling release",
|
|
55851
|
+
"example": [
|
|
55852
|
+
{
|
|
55853
|
+
"index": 0,
|
|
55854
|
+
"isFinalStage": false,
|
|
55855
|
+
"targetPercentage": 5,
|
|
55856
|
+
"requireApproval": true,
|
|
55857
|
+
"duration": null
|
|
55858
|
+
},
|
|
55859
|
+
{
|
|
55860
|
+
"index": 1,
|
|
55861
|
+
"isFinalStage": false,
|
|
55862
|
+
"targetPercentage": 25,
|
|
55863
|
+
"requireApproval": true,
|
|
55864
|
+
"duration": null
|
|
55865
|
+
},
|
|
55866
|
+
{
|
|
55867
|
+
"index": 2,
|
|
55868
|
+
"isFinalStage": false,
|
|
55869
|
+
"targetPercentage": 60,
|
|
55870
|
+
"requireApproval": true,
|
|
55871
|
+
"duration": null
|
|
55872
|
+
},
|
|
55873
|
+
{
|
|
55874
|
+
"index": 3,
|
|
55875
|
+
"isFinalStage": true,
|
|
55876
|
+
"targetPercentage": 100,
|
|
55877
|
+
"requireApproval": false,
|
|
55878
|
+
"duration": null
|
|
55879
|
+
}
|
|
55880
|
+
]
|
|
55881
|
+
},
|
|
55882
|
+
"activeStage": {
|
|
55883
|
+
"nullable": true,
|
|
55884
|
+
"properties": {
|
|
55885
|
+
"index": {
|
|
55886
|
+
"type": "number",
|
|
55887
|
+
"description": "The zero-based index of the stage",
|
|
55888
|
+
"example": 0
|
|
55889
|
+
},
|
|
55890
|
+
"isFinalStage": {
|
|
55891
|
+
"type": "boolean",
|
|
55892
|
+
"description": "Whether or not this stage is the final stage (targetPercentage === 100)",
|
|
55893
|
+
"example": false
|
|
55894
|
+
},
|
|
55895
|
+
"targetPercentage": {
|
|
55896
|
+
"type": "number",
|
|
55897
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
55898
|
+
"example": 25
|
|
55899
|
+
},
|
|
55900
|
+
"requireApproval": {
|
|
55901
|
+
"type": "boolean",
|
|
55902
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
55903
|
+
"example": true
|
|
55904
|
+
},
|
|
55905
|
+
"duration": {
|
|
55906
|
+
"nullable": true,
|
|
55907
|
+
"type": "number",
|
|
55908
|
+
"description": "Duration in seconds for automatic advancement, null for manual stages or the final stage",
|
|
55909
|
+
"example": null
|
|
55910
|
+
}
|
|
55911
|
+
},
|
|
55912
|
+
"required": [
|
|
55913
|
+
"index",
|
|
55914
|
+
"isFinalStage",
|
|
55915
|
+
"targetPercentage",
|
|
55916
|
+
"requireApproval",
|
|
55917
|
+
"duration"
|
|
55918
|
+
],
|
|
55919
|
+
"type": "object",
|
|
55920
|
+
"description": "The currently active stage, null if the rollout is aborted",
|
|
55921
|
+
"example": {
|
|
55922
|
+
"index": 1,
|
|
55923
|
+
"isFinalStage": false,
|
|
55924
|
+
"targetPercentage": 25,
|
|
55925
|
+
"requireApproval": true,
|
|
55926
|
+
"duration": null
|
|
55927
|
+
}
|
|
55928
|
+
},
|
|
55929
|
+
"nextStage": {
|
|
55930
|
+
"nullable": true,
|
|
55931
|
+
"properties": {
|
|
55932
|
+
"index": {
|
|
55933
|
+
"type": "number",
|
|
55934
|
+
"description": "The zero-based index of the stage",
|
|
55935
|
+
"example": 0
|
|
55936
|
+
},
|
|
55937
|
+
"isFinalStage": {
|
|
55938
|
+
"type": "boolean",
|
|
55939
|
+
"description": "Whether or not this stage is the final stage (targetPercentage === 100)",
|
|
55940
|
+
"example": false
|
|
55941
|
+
},
|
|
55942
|
+
"targetPercentage": {
|
|
55943
|
+
"type": "number",
|
|
55944
|
+
"description": "The percentage of traffic to serve to the canary deployment (0-100)",
|
|
55945
|
+
"example": 25
|
|
55946
|
+
},
|
|
55947
|
+
"requireApproval": {
|
|
55948
|
+
"type": "boolean",
|
|
55949
|
+
"description": "Whether or not this stage requires manual approval to proceed",
|
|
55950
|
+
"example": true
|
|
55951
|
+
},
|
|
55952
|
+
"duration": {
|
|
55953
|
+
"nullable": true,
|
|
55954
|
+
"type": "number",
|
|
55955
|
+
"description": "Duration in seconds for automatic advancement, null for manual stages or the final stage",
|
|
55956
|
+
"example": null
|
|
55957
|
+
}
|
|
55958
|
+
},
|
|
55959
|
+
"required": [
|
|
55960
|
+
"index",
|
|
55961
|
+
"isFinalStage",
|
|
55962
|
+
"targetPercentage",
|
|
55963
|
+
"requireApproval",
|
|
55964
|
+
"duration"
|
|
55965
|
+
],
|
|
55966
|
+
"type": "object",
|
|
55967
|
+
"description": "The next stage to be activated, null if not in ACTIVE state",
|
|
55968
|
+
"example": {
|
|
55969
|
+
"index": 2,
|
|
55970
|
+
"isFinalStage": false,
|
|
55971
|
+
"targetPercentage": 60,
|
|
55972
|
+
"requireApproval": true,
|
|
55973
|
+
"duration": null
|
|
55974
|
+
}
|
|
55975
|
+
},
|
|
55976
|
+
"startedAt": {
|
|
55977
|
+
"type": "number",
|
|
55978
|
+
"description": "Unix timestamp in milliseconds when the rolling release started",
|
|
55979
|
+
"example": 1716210500000
|
|
55980
|
+
},
|
|
55981
|
+
"updatedAt": {
|
|
55982
|
+
"type": "number",
|
|
55983
|
+
"description": "Unix timestamp in milliseconds when the rolling release was last updated",
|
|
55984
|
+
"example": 1716210600000
|
|
55985
|
+
}
|
|
55986
|
+
},
|
|
55987
|
+
"required": [
|
|
55988
|
+
"state",
|
|
55989
|
+
"currentDeployment",
|
|
55990
|
+
"canaryDeployment",
|
|
55991
|
+
"queuedDeploymentId",
|
|
55992
|
+
"stages",
|
|
55993
|
+
"activeStage",
|
|
55994
|
+
"nextStage",
|
|
55995
|
+
"startedAt",
|
|
55996
|
+
"updatedAt"
|
|
55997
|
+
],
|
|
55998
|
+
"type": "object",
|
|
55999
|
+
"description": "Rolling release information including configuration and document details, or null if no rolling release exists"
|
|
56000
|
+
}
|
|
56001
|
+
},
|
|
56002
|
+
"required": [
|
|
56003
|
+
"rollingRelease"
|
|
56004
|
+
],
|
|
56005
|
+
"type": "object",
|
|
56006
|
+
"description": "The response format for rolling release endpoints that return rolling release information"
|
|
56007
|
+
}
|
|
56008
|
+
}
|
|
56009
|
+
}
|
|
56010
|
+
},
|
|
56011
|
+
"400": {
|
|
56012
|
+
"description": "One of the provided values in the request body is invalid.\nOne of the provided values in the request query is invalid.",
|
|
56013
|
+
"content": {
|
|
56014
|
+
"application/json": {
|
|
56015
|
+
"schema": {
|
|
56016
|
+
"$ref": "#/components/schemas/VercelBadRequestError"
|
|
56017
|
+
}
|
|
56018
|
+
}
|
|
56019
|
+
}
|
|
56020
|
+
},
|
|
56021
|
+
"401": {
|
|
56022
|
+
"description": "",
|
|
56023
|
+
"content": {
|
|
56024
|
+
"application/json": {
|
|
56025
|
+
"schema": {
|
|
56026
|
+
"$ref": "#/components/schemas/VercelForbiddenError"
|
|
56027
|
+
}
|
|
56028
|
+
}
|
|
56029
|
+
}
|
|
56030
|
+
},
|
|
56031
|
+
"403": {
|
|
56032
|
+
"description": "You do not have permission to access this resource."
|
|
56033
|
+
},
|
|
56034
|
+
"404": {
|
|
56035
|
+
"description": "",
|
|
56036
|
+
"content": {
|
|
56037
|
+
"application/json": {
|
|
56038
|
+
"schema": {
|
|
56039
|
+
"$ref": "#/components/schemas/VercelNotFoundError"
|
|
56040
|
+
}
|
|
56041
|
+
}
|
|
56042
|
+
}
|
|
56043
|
+
}
|
|
56044
|
+
},
|
|
56045
|
+
"parameters": [
|
|
56046
|
+
{
|
|
56047
|
+
"name": "idOrName",
|
|
56048
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
56049
|
+
"in": "path",
|
|
56050
|
+
"required": true,
|
|
56051
|
+
"schema": {
|
|
56052
|
+
"description": "Project ID or project name (URL-encoded)",
|
|
56053
|
+
"type": "string"
|
|
56054
|
+
}
|
|
56055
|
+
},
|
|
56056
|
+
{
|
|
56057
|
+
"description": "The Team identifier to perform the request on behalf of.",
|
|
56058
|
+
"in": "query",
|
|
56059
|
+
"name": "teamId",
|
|
56060
|
+
"schema": {
|
|
56061
|
+
"type": "string",
|
|
56062
|
+
"example": "team_1a2b3c4d5e6f7g8h9i0j1k2l"
|
|
56063
|
+
}
|
|
56064
|
+
},
|
|
56065
|
+
{
|
|
56066
|
+
"description": "The Team slug to perform the request on behalf of.",
|
|
56067
|
+
"in": "query",
|
|
56068
|
+
"name": "slug",
|
|
56069
|
+
"schema": {
|
|
56070
|
+
"type": "string",
|
|
56071
|
+
"example": "my-team-url-slug"
|
|
56072
|
+
}
|
|
56073
|
+
}
|
|
56074
|
+
],
|
|
56075
|
+
"requestBody": {
|
|
56076
|
+
"content": {
|
|
56077
|
+
"application/json": {
|
|
56078
|
+
"schema": {
|
|
56079
|
+
"type": "object",
|
|
56080
|
+
"required": [
|
|
56081
|
+
"canaryDeploymentId"
|
|
56082
|
+
],
|
|
56083
|
+
"properties": {
|
|
56084
|
+
"canaryDeploymentId": {
|
|
56085
|
+
"description": "The ID of the canary deployment to complete",
|
|
56086
|
+
"type": "string"
|
|
56087
|
+
}
|
|
56088
|
+
}
|
|
56089
|
+
}
|
|
56090
|
+
}
|
|
56091
|
+
}
|
|
56092
|
+
}
|
|
56093
|
+
}
|
|
56094
|
+
},
|
|
56095
|
+
"/projects/{idOrName}/transfer-request": {
|
|
56096
|
+
"post": {
|
|
56097
|
+
"description": "Initiates a project transfer request from one team to another. \u003cbr/\u003e Returns a `code` that remains valid for 24 hours and can be used to accept the transfer request by another team using the `PUT /projects/transfer-request/:code` endpoint. \u003cbr/\u003e Users can also accept the project transfer request using the claim URL: `https://vercel.com/claim-deployment?code=\u003ccode\u003e\u0026returnUrl=\u003creturnUrl\u003e`. \u003cbr/\u003e The `code` parameter specifies the project transfer request code generated using this endpoint. \u003cbr/\u003e The `returnUrl` parameter redirects users to a specific page of the application if the claim URL is invalid or expired.",
|
|
56098
|
+
"operationId": "createProjectTransferRequest",
|
|
56099
|
+
"security": [
|
|
56100
|
+
{
|
|
56101
|
+
"bearerToken": []
|
|
56102
|
+
}
|
|
56103
|
+
],
|
|
56104
|
+
"summary": "Create project transfer request",
|
|
56105
|
+
"tags": [
|
|
56106
|
+
"projects"
|
|
56107
|
+
],
|
|
56108
|
+
"responses": {
|
|
56109
|
+
"200": {
|
|
56110
|
+
"description": "The project transfer request has been initiated successfully.",
|
|
56111
|
+
"content": {
|
|
56112
|
+
"application/json": {
|
|
56113
|
+
"schema": {
|
|
56114
|
+
"properties": {
|
|
56115
|
+
"code": {
|
|
56116
|
+
"type": "string",
|
|
56117
|
+
"description": "Code that can be used to accept the project transfer request.",
|
|
56118
|
+
"example": "f99cc49a-602e-4786-a748-762dfb205880"
|
|
56119
|
+
}
|
|
56120
|
+
},
|
|
56121
|
+
"required": [
|
|
56122
|
+
"code"
|
|
56123
|
+
],
|
|
56124
|
+
"type": "object"
|
|
56125
|
+
}
|
|
56126
|
+
}
|
|
56127
|
+
}
|
|
56128
|
+
},
|
|
56129
|
+
"400": {
|
|
56130
|
+
"description": "One of the provided values in the request body is invalid.\nOne of the provided values in the request query is invalid.",
|
|
56131
|
+
"content": {
|
|
56132
|
+
"application/json": {
|
|
56133
|
+
"schema": {
|
|
56134
|
+
"$ref": "#/components/schemas/VercelBadRequestError"
|
|
56135
|
+
}
|
|
56136
|
+
}
|
|
56137
|
+
}
|
|
56138
|
+
},
|
|
56139
|
+
"401": {
|
|
56140
|
+
"description": "",
|
|
56141
|
+
"content": {
|
|
56142
|
+
"application/json": {
|
|
56143
|
+
"schema": {
|
|
56144
|
+
"$ref": "#/components/schemas/VercelForbiddenError"
|
|
56145
|
+
}
|
|
56146
|
+
}
|
|
56147
|
+
}
|
|
56148
|
+
},
|
|
56149
|
+
"403": {
|
|
56150
|
+
"description": "You do not have permission to access this resource."
|
|
56151
|
+
}
|
|
56152
|
+
},
|
|
56153
|
+
"parameters": [
|
|
56154
|
+
{
|
|
56155
|
+
"name": "idOrName",
|
|
56156
|
+
"description": "The ID or name of the project to transfer.",
|
|
56157
|
+
"in": "path",
|
|
56158
|
+
"required": true,
|
|
56159
|
+
"schema": {
|
|
56160
|
+
"type": "string",
|
|
56161
|
+
"description": "The ID or name of the project to transfer."
|
|
56162
|
+
}
|
|
56163
|
+
},
|
|
56164
|
+
{
|
|
56165
|
+
"description": "The Team identifier to perform the request on behalf of.",
|
|
56166
|
+
"in": "query",
|
|
56167
|
+
"name": "teamId",
|
|
56168
|
+
"schema": {
|
|
56169
|
+
"type": "string",
|
|
56170
|
+
"example": "team_1a2b3c4d5e6f7g8h9i0j1k2l"
|
|
56171
|
+
}
|
|
56172
|
+
},
|
|
56173
|
+
{
|
|
56174
|
+
"description": "The Team slug to perform the request on behalf of.",
|
|
56175
|
+
"in": "query",
|
|
56176
|
+
"name": "slug",
|
|
56177
|
+
"schema": {
|
|
56178
|
+
"type": "string",
|
|
56179
|
+
"example": "my-team-url-slug"
|
|
56180
|
+
}
|
|
56181
|
+
}
|
|
56182
|
+
],
|
|
56183
|
+
"requestBody": {
|
|
56184
|
+
"content": {
|
|
56185
|
+
"application/json": {
|
|
56186
|
+
"schema": {
|
|
56187
|
+
"type": "object",
|
|
56188
|
+
"properties": {
|
|
56189
|
+
"callbackUrl": {
|
|
56190
|
+
"type": "string",
|
|
56191
|
+
"description": "The URL to send a webhook to when the transfer is accepted."
|
|
56192
|
+
},
|
|
56193
|
+
"callbackSecret": {
|
|
56194
|
+
"type": "string",
|
|
56195
|
+
"description": "The secret to use to sign the webhook payload with HMAC-SHA256."
|
|
56196
|
+
}
|
|
56197
|
+
}
|
|
56198
|
+
}
|
|
56199
|
+
}
|
|
56200
|
+
}
|
|
56201
|
+
}
|
|
56202
|
+
}
|
|
56203
|
+
},
|
|
56204
|
+
"/projects/transfer-request/{code}": {
|
|
56205
|
+
"put": {
|
|
56206
|
+
"description": "Accept a project transfer request initated by another team. \u003cbr/\u003e The `code` is generated using the `POST /projects/:idOrName/transfer-request` endpoint.",
|
|
56207
|
+
"operationId": "acceptProjectTransferRequest",
|
|
56208
|
+
"security": [
|
|
56209
|
+
{
|
|
56210
|
+
"bearerToken": []
|
|
56211
|
+
}
|
|
56212
|
+
],
|
|
56213
|
+
"summary": "Accept project transfer request",
|
|
56214
|
+
"tags": [
|
|
56215
|
+
"projects"
|
|
56216
|
+
],
|
|
56217
|
+
"responses": {
|
|
56218
|
+
"202": {
|
|
56219
|
+
"description": "The project has been transferred successfully.",
|
|
56220
|
+
"content": {
|
|
56221
|
+
"application/json": {
|
|
56222
|
+
"schema": {
|
|
56223
|
+
"type": "object"
|
|
56224
|
+
}
|
|
56225
|
+
}
|
|
56226
|
+
}
|
|
56227
|
+
},
|
|
56228
|
+
"400": {
|
|
56229
|
+
"description": "One of the provided values in the request body is invalid.\nOne of the provided values in the request query is invalid.",
|
|
56230
|
+
"content": {
|
|
56231
|
+
"application/json": {
|
|
56232
|
+
"schema": {
|
|
56233
|
+
"$ref": "#/components/schemas/VercelBadRequestError"
|
|
56234
|
+
}
|
|
56235
|
+
}
|
|
56236
|
+
}
|
|
56237
|
+
},
|
|
56238
|
+
"401": {
|
|
56239
|
+
"description": "",
|
|
56240
|
+
"content": {
|
|
56241
|
+
"application/json": {
|
|
56242
|
+
"schema": {
|
|
56243
|
+
"$ref": "#/components/schemas/VercelForbiddenError"
|
|
56244
|
+
}
|
|
56245
|
+
}
|
|
56246
|
+
}
|
|
56247
|
+
},
|
|
56248
|
+
"403": {
|
|
56249
|
+
"description": "You do not have permission to access this resource."
|
|
56250
|
+
},
|
|
56251
|
+
"404": {
|
|
56252
|
+
"description": "",
|
|
56253
|
+
"content": {
|
|
56254
|
+
"application/json": {
|
|
56255
|
+
"schema": {
|
|
56256
|
+
"$ref": "#/components/schemas/VercelNotFoundError"
|
|
56257
|
+
}
|
|
56258
|
+
}
|
|
56259
|
+
}
|
|
56260
|
+
}
|
|
56261
|
+
},
|
|
56262
|
+
"parameters": [
|
|
56263
|
+
{
|
|
56264
|
+
"name": "code",
|
|
56265
|
+
"description": "The code of the project transfer request.",
|
|
56266
|
+
"in": "path",
|
|
56267
|
+
"required": true,
|
|
56268
|
+
"schema": {
|
|
56269
|
+
"type": "string",
|
|
56270
|
+
"description": "The code of the project transfer request."
|
|
56271
|
+
}
|
|
56272
|
+
},
|
|
56273
|
+
{
|
|
56274
|
+
"description": "The Team identifier to perform the request on behalf of.",
|
|
56275
|
+
"in": "query",
|
|
56276
|
+
"name": "teamId",
|
|
56277
|
+
"schema": {
|
|
56278
|
+
"type": "string",
|
|
56279
|
+
"example": "team_1a2b3c4d5e6f7g8h9i0j1k2l"
|
|
56280
|
+
}
|
|
56281
|
+
},
|
|
56282
|
+
{
|
|
56283
|
+
"description": "The Team slug to perform the request on behalf of.",
|
|
56284
|
+
"in": "query",
|
|
56285
|
+
"name": "slug",
|
|
56286
|
+
"schema": {
|
|
56287
|
+
"type": "string",
|
|
56288
|
+
"example": "my-team-url-slug"
|
|
56289
|
+
}
|
|
56290
|
+
}
|
|
56291
|
+
],
|
|
56292
|
+
"requestBody": {
|
|
56293
|
+
"content": {
|
|
56294
|
+
"application/json": {
|
|
56295
|
+
"schema": {
|
|
56296
|
+
"type": "object",
|
|
56297
|
+
"additionalProperties": false,
|
|
56298
|
+
"properties": {
|
|
56299
|
+
"newProjectName": {
|
|
56300
|
+
"description": "The desired name for the project",
|
|
56301
|
+
"example": "a-project-name",
|
|
56302
|
+
"type": "string",
|
|
56303
|
+
"maxLength": 100
|
|
56304
|
+
},
|
|
56305
|
+
"paidFeatures": {
|
|
56306
|
+
"type": "object",
|
|
56307
|
+
"additionalProperties": false,
|
|
56308
|
+
"properties": {
|
|
56309
|
+
"concurrentBuilds": {
|
|
56310
|
+
"type": "integer",
|
|
56311
|
+
"nullable": true
|
|
56312
|
+
},
|
|
56313
|
+
"passwordProtection": {
|
|
56314
|
+
"type": "boolean",
|
|
56315
|
+
"nullable": true
|
|
56316
|
+
},
|
|
56317
|
+
"previewDeploymentSuffix": {
|
|
56318
|
+
"type": "boolean",
|
|
56319
|
+
"nullable": true
|
|
56320
|
+
}
|
|
56321
|
+
}
|
|
56322
|
+
}
|
|
56323
|
+
}
|
|
56324
|
+
}
|
|
56325
|
+
}
|
|
56326
|
+
}
|
|
56327
|
+
}
|
|
56328
|
+
}
|
|
56329
|
+
},
|
|
56330
|
+
"/v1/projects/{idOrName}/protection-bypass": {
|
|
56331
|
+
"patch": {
|
|
56332
|
+
"description": "Update the deployment protection automation bypass for a project",
|
|
56333
|
+
"operationId": "updateProjectProtectionBypass",
|
|
56334
|
+
"security": [
|
|
56335
|
+
{
|
|
56336
|
+
"bearerToken": []
|
|
56337
|
+
}
|
|
56338
|
+
],
|
|
56339
|
+
"summary": "Update Protection Bypass for Automation",
|
|
56340
|
+
"tags": [
|
|
56341
|
+
"projects"
|
|
56342
|
+
],
|
|
56343
|
+
"responses": {
|
|
56344
|
+
"200": {
|
|
56345
|
+
"description": "",
|
|
56346
|
+
"content": {
|
|
56347
|
+
"application/json": {
|
|
56348
|
+
"schema": {
|
|
56349
|
+
"properties": {
|
|
56350
|
+
"protectionBypass": {
|
|
56351
|
+
"additionalProperties": {
|
|
56352
|
+
"oneOf": [
|
|
56353
|
+
{
|
|
56354
|
+
"properties": {
|
|
56355
|
+
"createdAt": {
|
|
56356
|
+
"type": "number"
|
|
56357
|
+
},
|
|
56358
|
+
"createdBy": {
|
|
56359
|
+
"type": "string"
|
|
56360
|
+
},
|
|
56361
|
+
"scope": {
|
|
56362
|
+
"type": "string",
|
|
56363
|
+
"enum": [
|
|
56364
|
+
"integration-automation-bypass"
|
|
56365
|
+
]
|
|
56366
|
+
},
|
|
56367
|
+
"integrationId": {
|
|
56368
|
+
"type": "string"
|
|
56369
|
+
},
|
|
56370
|
+
"configurationId": {
|
|
56371
|
+
"type": "string"
|
|
56372
|
+
}
|
|
56373
|
+
},
|
|
56374
|
+
"required": [
|
|
56375
|
+
"createdAt",
|
|
56376
|
+
"createdBy",
|
|
56377
|
+
"scope",
|
|
56378
|
+
"integrationId",
|
|
56379
|
+
"configurationId"
|
|
56380
|
+
],
|
|
56381
|
+
"type": "object"
|
|
56382
|
+
},
|
|
56383
|
+
{
|
|
56384
|
+
"properties": {
|
|
56385
|
+
"createdAt": {
|
|
56386
|
+
"type": "number"
|
|
56387
|
+
},
|
|
56388
|
+
"createdBy": {
|
|
56389
|
+
"type": "string"
|
|
56390
|
+
},
|
|
56391
|
+
"scope": {
|
|
56392
|
+
"type": "string",
|
|
56393
|
+
"enum": [
|
|
56394
|
+
"automation-bypass"
|
|
56395
|
+
]
|
|
56396
|
+
}
|
|
56397
|
+
},
|
|
56398
|
+
"required": [
|
|
56399
|
+
"createdAt",
|
|
56400
|
+
"createdBy",
|
|
56401
|
+
"scope"
|
|
56402
|
+
],
|
|
56403
|
+
"type": "object"
|
|
56404
|
+
}
|
|
56405
|
+
]
|
|
56406
|
+
},
|
|
56407
|
+
"type": "object"
|
|
56408
|
+
}
|
|
56409
|
+
},
|
|
56410
|
+
"type": "object"
|
|
56411
|
+
}
|
|
56412
|
+
}
|
|
56413
|
+
}
|
|
56414
|
+
},
|
|
56415
|
+
"400": {
|
|
56416
|
+
"description": "One of the provided values in the request body is invalid.\nOne of the provided values in the request query is invalid.",
|
|
54529
56417
|
"content": {
|
|
54530
56418
|
"application/json": {
|
|
54531
56419
|
"schema": {
|
|
@@ -55883,48 +57771,7 @@
|
|
|
55883
57771
|
"managedRules": {
|
|
55884
57772
|
"type": "object",
|
|
55885
57773
|
"additionalProperties": {
|
|
55886
|
-
"anyOf": [
|
|
55887
|
-
{
|
|
55888
|
-
"type": "object",
|
|
55889
|
-
"properties": {
|
|
55890
|
-
"active": {
|
|
55891
|
-
"type": "boolean"
|
|
55892
|
-
},
|
|
55893
|
-
"action": {
|
|
55894
|
-
"type": "string",
|
|
55895
|
-
"enum": [
|
|
55896
|
-
"log",
|
|
55897
|
-
"challenge",
|
|
55898
|
-
"deny"
|
|
55899
|
-
]
|
|
55900
|
-
},
|
|
55901
|
-
"ruleGroups": {
|
|
55902
|
-
"type": "object",
|
|
55903
|
-
"additionalProperties": {
|
|
55904
|
-
"type": "object",
|
|
55905
|
-
"properties": {
|
|
55906
|
-
"active": {
|
|
55907
|
-
"type": "boolean"
|
|
55908
|
-
},
|
|
55909
|
-
"action": {
|
|
55910
|
-
"type": "string",
|
|
55911
|
-
"enum": [
|
|
55912
|
-
"log",
|
|
55913
|
-
"challenge",
|
|
55914
|
-
"deny"
|
|
55915
|
-
]
|
|
55916
|
-
}
|
|
55917
|
-
},
|
|
55918
|
-
"additionalProperties": false
|
|
55919
|
-
}
|
|
55920
|
-
}
|
|
55921
|
-
},
|
|
55922
|
-
"required": [
|
|
55923
|
-
"active"
|
|
55924
|
-
],
|
|
55925
|
-
"additionalProperties": false
|
|
55926
|
-
}
|
|
55927
|
-
]
|
|
57774
|
+
"anyOf": []
|
|
55928
57775
|
}
|
|
55929
57776
|
},
|
|
55930
57777
|
"crs": {
|
|
@@ -74556,16 +76403,16 @@
|
|
|
74556
76403
|
"properties": {
|
|
74557
76404
|
"connection": {
|
|
74558
76405
|
"properties": {
|
|
74559
|
-
"status": {
|
|
74560
|
-
"type": "string",
|
|
74561
|
-
"description": "Current status of the connection.",
|
|
74562
|
-
"example": "linked"
|
|
74563
|
-
},
|
|
74564
76406
|
"type": {
|
|
74565
76407
|
"type": "string",
|
|
74566
76408
|
"description": "The Identity Provider \"type\", for example Okta.",
|
|
74567
76409
|
"example": "OktaSAML"
|
|
74568
76410
|
},
|
|
76411
|
+
"status": {
|
|
76412
|
+
"type": "string",
|
|
76413
|
+
"description": "Current status of the connection.",
|
|
76414
|
+
"example": "linked"
|
|
76415
|
+
},
|
|
74569
76416
|
"state": {
|
|
74570
76417
|
"type": "string",
|
|
74571
76418
|
"description": "Current state of the connection.",
|
|
@@ -74583,8 +76430,8 @@
|
|
|
74583
76430
|
}
|
|
74584
76431
|
},
|
|
74585
76432
|
"required": [
|
|
74586
|
-
"status",
|
|
74587
76433
|
"type",
|
|
76434
|
+
"status",
|
|
74588
76435
|
"state",
|
|
74589
76436
|
"connectedAt"
|
|
74590
76437
|
],
|
|
@@ -74831,6 +76678,9 @@
|
|
|
74831
76678
|
},
|
|
74832
76679
|
"type": "array"
|
|
74833
76680
|
},
|
|
76681
|
+
"teamId": {
|
|
76682
|
+
"type": "string"
|
|
76683
|
+
},
|
|
74834
76684
|
"confirmed": {
|
|
74835
76685
|
"type": "boolean"
|
|
74836
76686
|
},
|
|
@@ -74880,9 +76730,6 @@
|
|
|
74880
76730
|
},
|
|
74881
76731
|
"type": "array"
|
|
74882
76732
|
},
|
|
74883
|
-
"teamId": {
|
|
74884
|
-
"type": "string"
|
|
74885
|
-
},
|
|
74886
76733
|
"createdAt": {
|
|
74887
76734
|
"type": "number"
|
|
74888
76735
|
},
|