@vercel/sdk 1.6.3 → 1.6.4

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.
Files changed (144) hide show
  1. package/README.md +2 -0
  2. package/bin/mcp-server.js +3504 -1244
  3. package/bin/mcp-server.js.map +28 -25
  4. package/docs/sdks/edgeconfig/README.md +2 -6
  5. package/docs/sdks/marketplace/README.md +2 -6
  6. package/docs/sdks/security/README.md +90 -0
  7. package/docs/sdks/webhooks/README.md +2 -6
  8. package/esm/__tests__/deployments.test.js +16 -1
  9. package/esm/__tests__/deployments.test.js.map +1 -1
  10. package/esm/__tests__/marketplace.test.js +7 -2
  11. package/esm/__tests__/marketplace.test.js.map +1 -1
  12. package/esm/__tests__/projects.test.js +4 -4
  13. package/esm/__tests__/projects.test.js.map +1 -1
  14. package/esm/__tests__/security.test.js +163 -3
  15. package/esm/__tests__/security.test.js.map +1 -1
  16. package/esm/funcs/projectsCreateProject.js +2 -2
  17. package/esm/funcs/projectsCreateProject.js.map +1 -1
  18. package/esm/funcs/securityPutFirewallConfig.d.ts +19 -0
  19. package/esm/funcs/securityPutFirewallConfig.d.ts.map +1 -0
  20. package/esm/funcs/securityPutFirewallConfig.js +88 -0
  21. package/esm/funcs/securityPutFirewallConfig.js.map +1 -0
  22. package/esm/lib/config.d.ts +3 -3
  23. package/esm/lib/config.js +3 -3
  24. package/esm/mcp-server/mcp-server.js +1 -1
  25. package/esm/mcp-server/server.d.ts.map +1 -1
  26. package/esm/mcp-server/server.js +3 -1
  27. package/esm/mcp-server/server.js.map +1 -1
  28. package/esm/mcp-server/tools/securityPutFirewallConfig.d.ts +7 -0
  29. package/esm/mcp-server/tools/securityPutFirewallConfig.d.ts.map +1 -0
  30. package/esm/mcp-server/tools/securityPutFirewallConfig.js +28 -0
  31. package/esm/mcp-server/tools/securityPutFirewallConfig.js.map +1 -0
  32. package/esm/models/authtoken.d.ts +6 -0
  33. package/esm/models/authtoken.d.ts.map +1 -1
  34. package/esm/models/authtoken.js +2 -0
  35. package/esm/models/authtoken.js.map +1 -1
  36. package/esm/models/authuser.d.ts +46 -0
  37. package/esm/models/authuser.d.ts.map +1 -1
  38. package/esm/models/authuser.js +28 -0
  39. package/esm/models/authuser.js.map +1 -1
  40. package/esm/models/canceldeploymentop.d.ts +274 -73
  41. package/esm/models/canceldeploymentop.d.ts.map +1 -1
  42. package/esm/models/canceldeploymentop.js +270 -72
  43. package/esm/models/canceldeploymentop.js.map +1 -1
  44. package/esm/models/createdeploymentop.d.ts +274 -73
  45. package/esm/models/createdeploymentop.d.ts.map +1 -1
  46. package/esm/models/createdeploymentop.js +270 -72
  47. package/esm/models/createdeploymentop.js.map +1 -1
  48. package/esm/models/createprojectenvop.d.ts +12 -18
  49. package/esm/models/createprojectenvop.d.ts.map +1 -1
  50. package/esm/models/createprojectenvop.js +12 -12
  51. package/esm/models/createprojectenvop.js.map +1 -1
  52. package/esm/models/createprojectop.d.ts +175 -13
  53. package/esm/models/createprojectop.d.ts.map +1 -1
  54. package/esm/models/createprojectop.js +157 -6
  55. package/esm/models/createprojectop.js.map +1 -1
  56. package/esm/models/editprojectenvop.d.ts +4 -7
  57. package/esm/models/editprojectenvop.d.ts.map +1 -1
  58. package/esm/models/editprojectenvop.js +4 -4
  59. package/esm/models/editprojectenvop.js.map +1 -1
  60. package/esm/models/filterprojectenvsop.d.ts +18 -27
  61. package/esm/models/filterprojectenvsop.d.ts.map +1 -1
  62. package/esm/models/filterprojectenvsop.js +18 -18
  63. package/esm/models/filterprojectenvsop.js.map +1 -1
  64. package/esm/models/getdeploymentop.d.ts +574 -172
  65. package/esm/models/getdeploymentop.d.ts.map +1 -1
  66. package/esm/models/getdeploymentop.js +567 -171
  67. package/esm/models/getdeploymentop.js.map +1 -1
  68. package/esm/models/getfirewallconfigop.d.ts +214 -214
  69. package/esm/models/getfirewallconfigop.d.ts.map +1 -1
  70. package/esm/models/getfirewallconfigop.js +210 -231
  71. package/esm/models/getfirewallconfigop.js.map +1 -1
  72. package/esm/models/getprojectdomainsop.d.ts +198 -36
  73. package/esm/models/getprojectdomainsop.d.ts.map +1 -1
  74. package/esm/models/getprojectdomainsop.js +193 -32
  75. package/esm/models/getprojectdomainsop.js.map +1 -1
  76. package/esm/models/getprojectenvop.d.ts +10 -16
  77. package/esm/models/getprojectenvop.d.ts.map +1 -1
  78. package/esm/models/getprojectenvop.js +10 -10
  79. package/esm/models/getprojectenvop.js.map +1 -1
  80. package/esm/models/getprojectsop.d.ts +175 -13
  81. package/esm/models/getprojectsop.d.ts.map +1 -1
  82. package/esm/models/getprojectsop.js +156 -6
  83. package/esm/models/getprojectsop.js.map +1 -1
  84. package/esm/models/putfirewallconfigop.d.ts +2901 -0
  85. package/esm/models/putfirewallconfigop.d.ts.map +1 -0
  86. package/esm/models/putfirewallconfigop.js +2383 -0
  87. package/esm/models/putfirewallconfigop.js.map +1 -0
  88. package/esm/models/removeprojectenvop.d.ts +18 -27
  89. package/esm/models/removeprojectenvop.d.ts.map +1 -1
  90. package/esm/models/removeprojectenvop.js +18 -18
  91. package/esm/models/removeprojectenvop.js.map +1 -1
  92. package/esm/models/updatefirewallconfigop.d.ts +323 -323
  93. package/esm/models/updatefirewallconfigop.d.ts.map +1 -1
  94. package/esm/models/updatefirewallconfigop.js +379 -357
  95. package/esm/models/updatefirewallconfigop.js.map +1 -1
  96. package/esm/models/updateprojectdatacacheop.d.ts +183 -21
  97. package/esm/models/updateprojectdatacacheop.d.ts.map +1 -1
  98. package/esm/models/updateprojectdatacacheop.js +172 -18
  99. package/esm/models/updateprojectdatacacheop.js.map +1 -1
  100. package/esm/models/updateprojectop.d.ts +175 -13
  101. package/esm/models/updateprojectop.d.ts.map +1 -1
  102. package/esm/models/updateprojectop.js +157 -6
  103. package/esm/models/updateprojectop.js.map +1 -1
  104. package/esm/models/userevent.d.ts +46 -19
  105. package/esm/models/userevent.d.ts.map +1 -1
  106. package/esm/models/userevent.js +34 -10
  107. package/esm/models/userevent.js.map +1 -1
  108. package/esm/sdk/security.d.ts +8 -0
  109. package/esm/sdk/security.d.ts.map +1 -1
  110. package/esm/sdk/security.js +10 -0
  111. package/esm/sdk/security.js.map +1 -1
  112. package/jsr.json +1 -1
  113. package/package.json +3 -3
  114. package/src/__tests__/deployments.test.ts +16 -1
  115. package/src/__tests__/marketplace.test.ts +7 -2
  116. package/src/__tests__/projects.test.ts +4 -4
  117. package/src/__tests__/security.test.ts +165 -5
  118. package/src/funcs/projectsCreateProject.ts +2 -2
  119. package/src/funcs/securityPutFirewallConfig.ts +194 -0
  120. package/src/lib/config.ts +3 -3
  121. package/src/mcp-server/mcp-server.ts +1 -1
  122. package/src/mcp-server/server.ts +3 -1
  123. package/src/mcp-server/tools/securityPutFirewallConfig.ts +37 -0
  124. package/src/models/authtoken.ts +2 -0
  125. package/src/models/authuser.ts +52 -0
  126. package/src/models/canceldeploymentop.ts +591 -148
  127. package/src/models/createdeploymentop.ts +616 -165
  128. package/src/models/createprojectenvop.ts +24 -30
  129. package/src/models/createprojectop.ts +336 -15
  130. package/src/models/editprojectenvop.ts +8 -11
  131. package/src/models/filterprojectenvsop.ts +36 -45
  132. package/src/models/getdeploymentop.ts +1288 -353
  133. package/src/models/getfirewallconfigop.ts +555 -410
  134. package/src/models/getprojectdomainsop.ts +470 -63
  135. package/src/models/getprojectenvop.ts +20 -26
  136. package/src/models/getprojectsop.ts +338 -16
  137. package/src/models/putfirewallconfigop.ts +4932 -0
  138. package/src/models/removeprojectenvop.ts +36 -45
  139. package/src/models/updatefirewallconfigop.ts +820 -612
  140. package/src/models/updateprojectdatacacheop.ts +353 -34
  141. package/src/models/updateprojectop.ts +336 -15
  142. package/src/models/userevent.ts +54 -29
  143. package/src/sdk/security.ts +22 -0
  144. package/vercel-spec.json +1375 -286
@@ -3,6 +3,7 @@ import { AddBypassIpRequest, AddBypassIpResponseBody } from "../models/addbypass
3
3
  import { GetActiveAttackStatusRequest, GetActiveAttackStatusResponseBody } from "../models/getactiveattackstatusop.js";
4
4
  import { GetBypassIpRequest, GetBypassIpResponseBody } from "../models/getbypassipop.js";
5
5
  import { GetFirewallConfigRequest, GetFirewallConfigResponseBody } from "../models/getfirewallconfigop.js";
6
+ import { PutFirewallConfigRequest, PutFirewallConfigResponseBody } from "../models/putfirewallconfigop.js";
6
7
  import { RemoveBypassIpRequest, RemoveBypassIpResponseBody } from "../models/removebypassipop.js";
7
8
  import { UpdateAttackChallengeModeRequest, UpdateAttackChallengeModeResponseBody } from "../models/updateattackchallengemodeop.js";
8
9
  import { UpdateFirewallConfigRequest, UpdateFirewallConfigResponseBody } from "../models/updatefirewallconfigop.js";
@@ -14,6 +15,13 @@ export declare class Security extends ClientSDK {
14
15
  * Update the setting for determining if the project has Attack Challenge mode enabled.
15
16
  */
16
17
  updateAttackChallengeMode(request: UpdateAttackChallengeModeRequest, options?: RequestOptions): Promise<UpdateAttackChallengeModeResponseBody>;
18
+ /**
19
+ * Put Firewall Configuration
20
+ *
21
+ * @remarks
22
+ * Set the firewall configuration to provided rules and settings. Creates or overwrite the existing firewall configuration.
23
+ */
24
+ putFirewallConfig(request: PutFirewallConfigRequest, options?: RequestOptions): Promise<PutFirewallConfigResponseBody>;
17
25
  /**
18
26
  * Update Firewall Configuration
19
27
  *
@@ -1 +1 @@
1
- {"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/sdk/security.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,4BAA4B,EAC5B,iCAAiC,EAClC,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,gCAAgC,EAChC,qCAAqC,EACtC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,2BAA2B,EAC3B,gCAAgC,EACjC,MAAM,qCAAqC,CAAC;AAG7C,qBAAa,QAAS,SAAQ,SAAS;IACrC;;;;;OAKG;IACG,yBAAyB,CAC7B,OAAO,EAAE,gCAAgC,EACzC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,qCAAqC,CAAC;IAQjD;;;;;OAKG;IACG,oBAAoB,CACxB,OAAO,EAAE,2BAA2B,EACpC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gCAAgC,CAAC;IAQ5C;;;;;OAKG;IACG,iBAAiB,CACrB,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,6BAA6B,CAAC;IAQzC;;;;;OAKG;IACG,qBAAqB,CACzB,OAAO,EAAE,4BAA4B,EACrC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,iCAAiC,CAAC;IAQ7C;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,kBAAkB,EAC3B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,uBAAuB,CAAC;IAQnC;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,kBAAkB,EAC3B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,uBAAuB,CAAC;IAQnC;;;;;OAKG;IACG,cAAc,CAClB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,0BAA0B,CAAC;CAOvC"}
1
+ {"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/sdk/security.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,4BAA4B,EAC5B,iCAAiC,EAClC,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC9B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,gCAAgC,EAChC,qCAAqC,EACtC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,2BAA2B,EAC3B,gCAAgC,EACjC,MAAM,qCAAqC,CAAC;AAG7C,qBAAa,QAAS,SAAQ,SAAS;IACrC;;;;;OAKG;IACG,yBAAyB,CAC7B,OAAO,EAAE,gCAAgC,EACzC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,qCAAqC,CAAC;IAQjD;;;;;OAKG;IACG,iBAAiB,CACrB,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,6BAA6B,CAAC;IAQzC;;;;;OAKG;IACG,oBAAoB,CACxB,OAAO,EAAE,2BAA2B,EACpC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,gCAAgC,CAAC;IAQ5C;;;;;OAKG;IACG,iBAAiB,CACrB,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,6BAA6B,CAAC;IAQzC;;;;;OAKG;IACG,qBAAqB,CACzB,OAAO,EAAE,4BAA4B,EACrC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,iCAAiC,CAAC;IAQ7C;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,kBAAkB,EAC3B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,uBAAuB,CAAC;IAQnC;;;;;OAKG;IACG,WAAW,CACf,OAAO,EAAE,kBAAkB,EAC3B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,uBAAuB,CAAC;IAQnC;;;;;OAKG;IACG,cAAc,CAClB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,0BAA0B,CAAC;CAOvC"}
@@ -5,6 +5,7 @@ import { securityAddBypassIp } from "../funcs/securityAddBypassIp.js";
5
5
  import { securityGetActiveAttackStatus } from "../funcs/securityGetActiveAttackStatus.js";
6
6
  import { securityGetBypassIp } from "../funcs/securityGetBypassIp.js";
7
7
  import { securityGetFirewallConfig } from "../funcs/securityGetFirewallConfig.js";
8
+ import { securityPutFirewallConfig } from "../funcs/securityPutFirewallConfig.js";
8
9
  import { securityRemoveBypassIp } from "../funcs/securityRemoveBypassIp.js";
9
10
  import { securityUpdateAttackChallengeMode } from "../funcs/securityUpdateAttackChallengeMode.js";
10
11
  import { securityUpdateFirewallConfig } from "../funcs/securityUpdateFirewallConfig.js";
@@ -20,6 +21,15 @@ export class Security extends ClientSDK {
20
21
  async updateAttackChallengeMode(request, options) {
21
22
  return unwrapAsync(securityUpdateAttackChallengeMode(this, request, options));
22
23
  }
24
+ /**
25
+ * Put Firewall Configuration
26
+ *
27
+ * @remarks
28
+ * Set the firewall configuration to provided rules and settings. Creates or overwrite the existing firewall configuration.
29
+ */
30
+ async putFirewallConfig(request, options) {
31
+ return unwrapAsync(securityPutFirewallConfig(this, request, options));
32
+ }
23
33
  /**
24
34
  * Update Firewall Configuration
25
35
  *
@@ -1 +1 @@
1
- {"version":3,"file":"security.js","sourceRoot":"","sources":["../../src/sdk/security.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EAAE,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AA6B3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC;;;;;OAKG;IACH,KAAK,CAAC,yBAAyB,CAC7B,OAAyC,EACzC,OAAwB;QAExB,OAAO,WAAW,CAAC,iCAAiC,CAClD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,oBAAoB,CACxB,OAAoC,EACpC,OAAwB;QAExB,OAAO,WAAW,CAAC,4BAA4B,CAC7C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CACrB,OAAiC,EACjC,OAAwB;QAExB,OAAO,WAAW,CAAC,yBAAyB,CAC1C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CACzB,OAAqC,EACrC,OAAwB;QAExB,OAAO,WAAW,CAAC,6BAA6B,CAC9C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CACf,OAA2B,EAC3B,OAAwB;QAExB,OAAO,WAAW,CAAC,mBAAmB,CACpC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CACf,OAA2B,EAC3B,OAAwB;QAExB,OAAO,WAAW,CAAC,mBAAmB,CACpC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAClB,OAA8B,EAC9B,OAAwB;QAExB,OAAO,WAAW,CAAC,sBAAsB,CACvC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"security.js","sourceRoot":"","sources":["../../src/sdk/security.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,EAAE,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAiC3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC;;;;;OAKG;IACH,KAAK,CAAC,yBAAyB,CAC7B,OAAyC,EACzC,OAAwB;QAExB,OAAO,WAAW,CAAC,iCAAiC,CAClD,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CACrB,OAAiC,EACjC,OAAwB;QAExB,OAAO,WAAW,CAAC,yBAAyB,CAC1C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,oBAAoB,CACxB,OAAoC,EACpC,OAAwB;QAExB,OAAO,WAAW,CAAC,4BAA4B,CAC7C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CACrB,OAAiC,EACjC,OAAwB;QAExB,OAAO,WAAW,CAAC,yBAAyB,CAC1C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CACzB,OAAqC,EACrC,OAAwB;QAExB,OAAO,WAAW,CAAC,6BAA6B,CAC9C,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CACf,OAA2B,EAC3B,OAAwB;QAExB,OAAO,WAAW,CAAC,mBAAmB,CACpC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CACf,OAA2B,EAC3B,OAAwB;QAExB,OAAO,WAAW,CAAC,mBAAmB,CACpC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,cAAc,CAClB,OAA8B,EAC9B,OAAwB;QAExB,OAAO,WAAW,CAAC,sBAAsB,CACvC,IAAI,EACJ,OAAO,EACP,OAAO,CACR,CAAC,CAAC;IACL,CAAC;CACF"}
package/jsr.json CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  {
4
4
  "name": "@vercel/sdk",
5
- "version": "1.6.3",
5
+ "version": "1.6.4",
6
6
  "exports": {
7
7
  ".": "./src/index.ts",
8
8
  "./models": "./src/models/index.ts",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vercel/sdk",
3
- "version": "1.6.3",
3
+ "version": "1.6.4",
4
4
  "author": "Speakeasy",
5
5
  "type": "module",
6
6
  "bin": {
@@ -39,7 +39,7 @@
39
39
  "prepublishOnly": "npm run build"
40
40
  },
41
41
  "peerDependencies": {
42
- "@modelcontextprotocol/sdk": "^1.5.0",
42
+ "@modelcontextprotocol/sdk": ">=1.5.0 <1.10.0",
43
43
  "zod": ">= 3"
44
44
  },
45
45
  "peerDependenciesMeta": {
@@ -47,7 +47,7 @@
47
47
  },
48
48
  "devDependencies": {
49
49
  "@eslint/js": "^9.19.0",
50
- "@modelcontextprotocol/sdk": "^1.5.0",
50
+ "@modelcontextprotocol/sdk": ">=1.5.0 <1.10.0",
51
51
  "@stricli/core": "^1.1.1",
52
52
  "@types/express": "^4.17.21",
53
53
  "@types/node": "^18.19.3",
@@ -262,7 +262,22 @@ test("Deployments List Deployment Files", async () => {
262
262
  slug: "my-team-url-slug",
263
263
  });
264
264
  expect(result).toBeDefined();
265
- expect(result).toEqual([]);
265
+ expect(result).toEqual([
266
+ {
267
+ name: "my-file.json",
268
+ type: "file",
269
+ uid: "2d4aad419917f15b1146e9e03ddc9bb31747e4d0",
270
+ contentType: "application/json",
271
+ mode: 956.44,
272
+ },
273
+ {
274
+ name: "my-file.json",
275
+ type: "file",
276
+ uid: "2d4aad419917f15b1146e9e03ddc9bb31747e4d0",
277
+ contentType: "application/json",
278
+ mode: 1805.56,
279
+ },
280
+ ]);
266
281
  });
267
282
 
268
283
  test("Deployments Get Deployment File Contents", async () => {
@@ -385,7 +385,10 @@ test("Marketplace Head /V1 /Installations/{integration Configuration Id}/resourc
385
385
  });
386
386
  expect(result).toBeDefined();
387
387
  expect(result).toEqual({
388
- items: {},
388
+ items: {
389
+ "key": {},
390
+ "key1": true,
391
+ },
389
392
  updatedAt: 6086.93,
390
393
  digest: "<value>",
391
394
  });
@@ -409,7 +412,9 @@ test("Marketplace Put /V1 /Installations/{integration Configuration Id}/resource
409
412
  });
410
413
  expect(result).toBeDefined();
411
414
  expect(result).toEqual({
412
- items: {},
415
+ items: {
416
+ "key": true,
417
+ },
413
418
  updatedAt: 6820.68,
414
419
  digest: "<value>",
415
420
  });
@@ -559,8 +559,8 @@ test("Projects Get Project Env", async () => {
559
559
  expect(result).toBeDefined();
560
560
  expect(result).toEqual({
561
561
  type: "plain",
562
- key: "<key>",
563
562
  value: "<value>",
563
+ key: "<key>",
564
564
  });
565
565
  });
566
566
 
@@ -630,18 +630,18 @@ test("Projects Remove Project Env", async () => {
630
630
  expect(result).toEqual([
631
631
  {
632
632
  type: "sensitive",
633
- key: "<key>",
634
633
  value: "<value>",
634
+ key: "<key>",
635
635
  },
636
636
  {
637
637
  type: "plain",
638
- key: "<key>",
639
638
  value: "<value>",
639
+ key: "<key>",
640
640
  },
641
641
  {
642
642
  type: "encrypted",
643
- key: "<key>",
644
643
  value: "<value>",
644
+ key: "<key>",
645
645
  },
646
646
  ]);
647
647
  });
@@ -2,7 +2,7 @@
2
2
  * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
3
  */
4
4
 
5
- import { assert, expect, it, test } from "vitest";
5
+ import { expect, test } from "vitest";
6
6
  import { Vercel } from "../index.js";
7
7
  import { createTestHTTPClient } from "./testclient.js";
8
8
 
@@ -30,10 +30,170 @@ test("Security Update Attack Challenge Mode", async () => {
30
30
  });
31
31
  });
32
32
 
33
- it.skip("Security Put Firewall Config", async () => {
34
- assert.fail(
35
- "incomplete test found please make sure to address the following errors: [`workflow step putFirewallConfig.test referencing operation putFirewallConfig not found in document`]",
36
- );
33
+ test("Security Put Firewall Config", async () => {
34
+ const testHttpClient = createTestHTTPClient("putFirewallConfig");
35
+
36
+ const vercel = new Vercel({
37
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
38
+ httpClient: testHttpClient,
39
+ bearerToken: "<YOUR_BEARER_TOKEN_HERE>",
40
+ });
41
+
42
+ const result = await vercel.security.putFirewallConfig({
43
+ projectId: "<id>",
44
+ teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l",
45
+ slug: "my-team-url-slug",
46
+ requestBody: {
47
+ firewallEnabled: true,
48
+ },
49
+ });
50
+ expect(result).toBeDefined();
51
+ expect(result).toEqual({
52
+ active: {
53
+ ownerId: "<id>",
54
+ projectKey: "<value>",
55
+ id: "<id>",
56
+ version: 4570.86,
57
+ updatedAt: "<value>",
58
+ firewallEnabled: true,
59
+ crs: {
60
+ sd: {
61
+ active: false,
62
+ action: "deny",
63
+ },
64
+ ma: {
65
+ active: false,
66
+ action: "log",
67
+ },
68
+ lfi: {
69
+ active: false,
70
+ action: "log",
71
+ },
72
+ rfi: {
73
+ active: false,
74
+ action: "deny",
75
+ },
76
+ rce: {
77
+ active: false,
78
+ action: "deny",
79
+ },
80
+ php: {
81
+ active: true,
82
+ action: "deny",
83
+ },
84
+ gen: {
85
+ active: false,
86
+ action: "deny",
87
+ },
88
+ xss: {
89
+ active: false,
90
+ action: "deny",
91
+ },
92
+ sqli: {
93
+ active: true,
94
+ action: "log",
95
+ },
96
+ sf: {
97
+ active: true,
98
+ action: "deny",
99
+ },
100
+ java: {
101
+ active: true,
102
+ action: "log",
103
+ },
104
+ },
105
+ rules: [
106
+ {
107
+ id: "<id>",
108
+ name: "<value>",
109
+ active: true,
110
+ conditionGroup: [
111
+ {
112
+ conditions: [
113
+ {
114
+ type: "ip_address",
115
+ op: "suf",
116
+ },
117
+ {
118
+ type: "geo_as_number",
119
+ op: "pre",
120
+ },
121
+ {
122
+ type: "ja3_digest",
123
+ op: "inc",
124
+ },
125
+ ],
126
+ },
127
+ {
128
+ conditions: [
129
+ {
130
+ type: "geo_as_number",
131
+ op: "neq",
132
+ },
133
+ {
134
+ type: "protocol",
135
+ op: "sub",
136
+ },
137
+ {
138
+ type: "ja3_digest",
139
+ op: "suf",
140
+ },
141
+ ],
142
+ },
143
+ {
144
+ conditions: [
145
+ {
146
+ type: "region",
147
+ op: "neq",
148
+ },
149
+ ],
150
+ },
151
+ ],
152
+ action: {},
153
+ },
154
+ {
155
+ id: "<id>",
156
+ name: "<value>",
157
+ active: false,
158
+ conditionGroup: [],
159
+ action: {},
160
+ },
161
+ {
162
+ id: "<id>",
163
+ name: "<value>",
164
+ active: false,
165
+ conditionGroup: [
166
+ {
167
+ conditions: [
168
+ {
169
+ type: "scheme",
170
+ op: "neq",
171
+ },
172
+ ],
173
+ },
174
+ {
175
+ conditions: [],
176
+ },
177
+ {
178
+ conditions: [
179
+ {
180
+ type: "header",
181
+ op: "inc",
182
+ },
183
+ {
184
+ type: "query",
185
+ op: "eq",
186
+ },
187
+ ],
188
+ },
189
+ ],
190
+ action: {},
191
+ },
192
+ ],
193
+ ips: [],
194
+ changes: [],
195
+ },
196
+ });
37
197
  });
38
198
 
39
199
  test("Security Update Firewall Config", async () => {
@@ -146,7 +146,7 @@ async function $do(
146
146
 
147
147
  const doResult = await client._do(req, {
148
148
  context,
149
- errorCodes: ["400", "401", "402", "403", "409", "4XX", "501", "5XX"],
149
+ errorCodes: ["400", "401", "402", "403", "409", "4XX", "5XX"],
150
150
  retryConfig: context.retryConfig,
151
151
  retryCodes: context.retryCodes,
152
152
  });
@@ -175,7 +175,7 @@ async function $do(
175
175
  M.jsonErr(400, VercelBadRequestError$inboundSchema),
176
176
  M.jsonErr(401, VercelForbiddenError$inboundSchema),
177
177
  M.fail([402, 403, 409, "4XX"]),
178
- M.fail([501, "5XX"]),
178
+ M.fail("5XX"),
179
179
  )(response, { extraFields: responseFields });
180
180
  if (!result.ok) {
181
181
  return [result, { status: "complete", request: req, response }];
@@ -0,0 +1,194 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { VercelCore } from "../core.js";
6
+ import { encodeFormQuery, encodeJSON } from "../lib/encodings.js";
7
+ import * as M from "../lib/matchers.js";
8
+ import { compactMap } from "../lib/primitives.js";
9
+ import { safeParse } from "../lib/schemas.js";
10
+ import { RequestOptions } from "../lib/sdks.js";
11
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
12
+ import { pathToFunc } from "../lib/url.js";
13
+ import {
14
+ ConnectionError,
15
+ InvalidRequestError,
16
+ RequestAbortedError,
17
+ RequestTimeoutError,
18
+ UnexpectedClientError,
19
+ } from "../models/httpclienterrors.js";
20
+ import {
21
+ PutFirewallConfigRequest,
22
+ PutFirewallConfigRequest$outboundSchema,
23
+ PutFirewallConfigResponseBody,
24
+ PutFirewallConfigResponseBody$inboundSchema,
25
+ } from "../models/putfirewallconfigop.js";
26
+ import { SDKError } from "../models/sdkerror.js";
27
+ import { SDKValidationError } from "../models/sdkvalidationerror.js";
28
+ import {
29
+ VercelBadRequestError,
30
+ VercelBadRequestError$inboundSchema,
31
+ } from "../models/vercelbadrequesterror.js";
32
+ import {
33
+ VercelForbiddenError,
34
+ VercelForbiddenError$inboundSchema,
35
+ } from "../models/vercelforbiddenerror.js";
36
+ import {
37
+ VercelNotFoundError,
38
+ VercelNotFoundError$inboundSchema,
39
+ } from "../models/vercelnotfounderror.js";
40
+ import { APICall, APIPromise } from "../types/async.js";
41
+ import { Result } from "../types/fp.js";
42
+
43
+ /**
44
+ * Put Firewall Configuration
45
+ *
46
+ * @remarks
47
+ * Set the firewall configuration to provided rules and settings. Creates or overwrite the existing firewall configuration.
48
+ */
49
+ export function securityPutFirewallConfig(
50
+ client: VercelCore,
51
+ request: PutFirewallConfigRequest,
52
+ options?: RequestOptions,
53
+ ): APIPromise<
54
+ Result<
55
+ PutFirewallConfigResponseBody,
56
+ | VercelBadRequestError
57
+ | VercelForbiddenError
58
+ | VercelNotFoundError
59
+ | SDKError
60
+ | SDKValidationError
61
+ | UnexpectedClientError
62
+ | InvalidRequestError
63
+ | RequestAbortedError
64
+ | RequestTimeoutError
65
+ | ConnectionError
66
+ >
67
+ > {
68
+ return new APIPromise($do(
69
+ client,
70
+ request,
71
+ options,
72
+ ));
73
+ }
74
+
75
+ async function $do(
76
+ client: VercelCore,
77
+ request: PutFirewallConfigRequest,
78
+ options?: RequestOptions,
79
+ ): Promise<
80
+ [
81
+ Result<
82
+ PutFirewallConfigResponseBody,
83
+ | VercelBadRequestError
84
+ | VercelForbiddenError
85
+ | VercelNotFoundError
86
+ | SDKError
87
+ | SDKValidationError
88
+ | UnexpectedClientError
89
+ | InvalidRequestError
90
+ | RequestAbortedError
91
+ | RequestTimeoutError
92
+ | ConnectionError
93
+ >,
94
+ APICall,
95
+ ]
96
+ > {
97
+ const parsed = safeParse(
98
+ request,
99
+ (value) => PutFirewallConfigRequest$outboundSchema.parse(value),
100
+ "Input validation failed",
101
+ );
102
+ if (!parsed.ok) {
103
+ return [parsed, { status: "invalid" }];
104
+ }
105
+ const payload = parsed.value;
106
+ const body = encodeJSON("body", payload.RequestBody, { explode: true });
107
+
108
+ const path = pathToFunc("/v1/security/firewall/config")();
109
+
110
+ const query = encodeFormQuery({
111
+ "projectId": payload.projectId,
112
+ "slug": payload.slug,
113
+ "teamId": payload.teamId,
114
+ });
115
+
116
+ const headers = new Headers(compactMap({
117
+ "Content-Type": "application/json",
118
+ Accept: "application/json",
119
+ }));
120
+
121
+ const secConfig = await extractSecurity(client._options.bearerToken);
122
+ const securityInput = secConfig == null ? {} : { bearerToken: secConfig };
123
+ const requestSecurity = resolveGlobalSecurity(securityInput);
124
+
125
+ const context = {
126
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
127
+ operationID: "putFirewallConfig",
128
+ oAuth2Scopes: [],
129
+
130
+ resolvedSecurity: requestSecurity,
131
+
132
+ securitySource: client._options.bearerToken,
133
+ retryConfig: options?.retries
134
+ || client._options.retryConfig
135
+ || { strategy: "none" },
136
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
137
+ };
138
+
139
+ const requestRes = client._createRequest(context, {
140
+ security: requestSecurity,
141
+ method: "PUT",
142
+ baseURL: options?.serverURL,
143
+ path: path,
144
+ headers: headers,
145
+ query: query,
146
+ body: body,
147
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
148
+ }, options);
149
+ if (!requestRes.ok) {
150
+ return [requestRes, { status: "invalid" }];
151
+ }
152
+ const req = requestRes.value;
153
+
154
+ const doResult = await client._do(req, {
155
+ context,
156
+ errorCodes: ["400", "401", "402", "403", "404", "4XX", "500", "5XX"],
157
+ retryConfig: context.retryConfig,
158
+ retryCodes: context.retryCodes,
159
+ });
160
+ if (!doResult.ok) {
161
+ return [doResult, { status: "request-error", request: req }];
162
+ }
163
+ const response = doResult.value;
164
+
165
+ const responseFields = {
166
+ HttpMeta: { Response: response, Request: req },
167
+ };
168
+
169
+ const [result] = await M.match<
170
+ PutFirewallConfigResponseBody,
171
+ | VercelBadRequestError
172
+ | VercelForbiddenError
173
+ | VercelNotFoundError
174
+ | SDKError
175
+ | SDKValidationError
176
+ | UnexpectedClientError
177
+ | InvalidRequestError
178
+ | RequestAbortedError
179
+ | RequestTimeoutError
180
+ | ConnectionError
181
+ >(
182
+ M.json(200, PutFirewallConfigResponseBody$inboundSchema),
183
+ M.jsonErr(400, VercelBadRequestError$inboundSchema),
184
+ M.jsonErr(401, VercelForbiddenError$inboundSchema),
185
+ M.jsonErr(404, VercelNotFoundError$inboundSchema),
186
+ M.fail([402, 403, "4XX"]),
187
+ M.fail([500, "5XX"]),
188
+ )(response, { extraFields: responseFields });
189
+ if (!result.ok) {
190
+ return [result, { status: "complete", request: req, response }];
191
+ }
192
+
193
+ return [result, { status: "complete", request: req, response }];
194
+ }
package/src/lib/config.ts CHANGED
@@ -57,7 +57,7 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
57
57
  export const SDK_METADATA = {
58
58
  language: "typescript",
59
59
  openapiDocVersion: "0.0.1",
60
- sdkVersion: "1.6.3",
61
- genVersion: "2.578.0",
62
- userAgent: "speakeasy-sdk/typescript 1.6.3 2.578.0 0.0.1 @vercel/sdk",
60
+ sdkVersion: "1.6.4",
61
+ genVersion: "2.593.3",
62
+ userAgent: "speakeasy-sdk/typescript 1.6.4 2.593.3 0.0.1 @vercel/sdk",
63
63
  } as const;
@@ -19,7 +19,7 @@ const routes = buildRouteMap({
19
19
  export const app = buildApplication(routes, {
20
20
  name: "mcp",
21
21
  versionInfo: {
22
- currentVersion: "1.6.3",
22
+ currentVersion: "1.6.4",
23
23
  },
24
24
  });
25
25
 
@@ -149,6 +149,7 @@ import { tool$securityAddBypassIp } from "./tools/securityAddBypassIp.js";
149
149
  import { tool$securityGetActiveAttackStatus } from "./tools/securityGetActiveAttackStatus.js";
150
150
  import { tool$securityGetBypassIp } from "./tools/securityGetBypassIp.js";
151
151
  import { tool$securityGetFirewallConfig } from "./tools/securityGetFirewallConfig.js";
152
+ import { tool$securityPutFirewallConfig } from "./tools/securityPutFirewallConfig.js";
152
153
  import { tool$securityRemoveBypassIp } from "./tools/securityRemoveBypassIp.js";
153
154
  import { tool$securityUpdateAttackChallengeMode } from "./tools/securityUpdateAttackChallengeMode.js";
154
155
  import { tool$securityUpdateFirewallConfig } from "./tools/securityUpdateFirewallConfig.js";
@@ -183,7 +184,7 @@ export function createMCPServer(deps: {
183
184
  }) {
184
185
  const server = new McpServer({
185
186
  name: "Vercel",
186
- version: "1.6.3",
187
+ version: "1.6.4",
187
188
  });
188
189
 
189
190
  const client = new VercelCore({
@@ -340,6 +341,7 @@ export function createMCPServer(deps: {
340
341
  tool(tool$environmentUpdateCustomEnvironment);
341
342
  tool(tool$environmentRemoveCustomEnvironment);
342
343
  tool(tool$securityUpdateAttackChallengeMode);
344
+ tool(tool$securityPutFirewallConfig);
343
345
  tool(tool$securityUpdateFirewallConfig);
344
346
  tool(tool$securityGetFirewallConfig);
345
347
  tool(tool$securityGetActiveAttackStatus);
@@ -0,0 +1,37 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { securityPutFirewallConfig } from "../../funcs/securityPutFirewallConfig.js";
6
+ import { PutFirewallConfigRequest$inboundSchema } from "../../models/putfirewallconfigop.js";
7
+ import { formatResult, ToolDefinition } from "../tools.js";
8
+
9
+ const args = {
10
+ request: PutFirewallConfigRequest$inboundSchema,
11
+ };
12
+
13
+ export const tool$securityPutFirewallConfig: ToolDefinition<typeof args> = {
14
+ name: "security-put-firewall-config",
15
+ description: `Put Firewall Configuration
16
+
17
+ Set the firewall configuration to provided rules and settings. Creates or overwrite the existing firewall configuration.`,
18
+ args,
19
+ tool: async (client, args, ctx) => {
20
+ const [result, apiCall] = await securityPutFirewallConfig(
21
+ client,
22
+ args.request,
23
+ { fetchOptions: { signal: ctx.signal } },
24
+ ).$inspect();
25
+
26
+ if (!result.ok) {
27
+ return {
28
+ content: [{ type: "text", text: result.error.message }],
29
+ isError: true,
30
+ };
31
+ }
32
+
33
+ const value = result.value;
34
+
35
+ return formatResult(value, apiCall);
36
+ },
37
+ };
@@ -24,6 +24,7 @@ export const AuthTokenScopesOrigin = {
24
24
  Otp: "otp",
25
25
  Sms: "sms",
26
26
  Invite: "invite",
27
+ Google: "google",
27
28
  } as const;
28
29
  export type AuthTokenScopesOrigin = ClosedEnum<typeof AuthTokenScopesOrigin>;
29
30
 
@@ -75,6 +76,7 @@ export const ScopesOrigin = {
75
76
  Otp: "otp",
76
77
  Sms: "sms",
77
78
  Invite: "invite",
79
+ Google: "google",
78
80
  } as const;
79
81
  export type ScopesOrigin = ClosedEnum<typeof ScopesOrigin>;
80
82