@ngrok/ngrok-api 0.13.0 → 0.17.0

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 (289) hide show
  1. package/.github/workflows/ci.yml +28 -0
  2. package/CHANGELOG.md +15 -0
  3. package/docs/assets/js/search.js +1 -1
  4. package/docs/classes/client.Ngrok.html +66 -28
  5. package/docs/classes/services.APIKeys.html +6 -6
  6. package/docs/classes/services.AbuseReports.html +3 -3
  7. package/docs/classes/services.AgentIngresses.html +6 -6
  8. package/docs/classes/services.ApplicationSessions.html +4 -4
  9. package/docs/classes/services.ApplicationUsers.html +4 -4
  10. package/docs/classes/services.BotUsers.html +6 -6
  11. package/docs/classes/services.CertificateAuthorities.html +6 -6
  12. package/docs/classes/services.Credentials.html +6 -6
  13. package/docs/classes/services.EdgeRouteBackendModule.html +4 -4
  14. package/docs/classes/services.EdgeRouteCircuitBreakerModule.html +4 -4
  15. package/docs/classes/services.EdgeRouteCompressionModule.html +4 -4
  16. package/docs/classes/services.EdgeRouteIPRestrictionModule.html +4 -4
  17. package/docs/classes/services.EdgeRouteOAuthModule.html +4 -4
  18. package/docs/classes/services.EdgeRouteOIDCModule.html +4 -4
  19. package/docs/classes/services.EdgeRouteRequestHeadersModule.html +4 -4
  20. package/docs/classes/services.EdgeRouteResponseHeadersModule.html +4 -4
  21. package/docs/classes/services.EdgeRouteSAMLModule.html +4 -4
  22. package/docs/classes/services.EdgeRouteTrafficPolicyModule.html +4 -4
  23. package/docs/classes/services.EdgeRouteUserAgentFilterModule.html +4 -4
  24. package/docs/classes/services.EdgeRouteWebhookVerificationModule.html +4 -4
  25. package/docs/classes/services.EdgeRouteWebsocketTCPConverterModule.html +4 -4
  26. package/docs/classes/services.EdgesHTTPS.html +6 -6
  27. package/docs/classes/services.EdgesHTTPSRoutes.html +5 -5
  28. package/docs/classes/services.EdgesTCP.html +6 -6
  29. package/docs/classes/services.EdgesTLS.html +6 -6
  30. package/docs/classes/services.Endpoints.html +6 -6
  31. package/docs/classes/services.EventDestinations.html +6 -6
  32. package/docs/classes/services.EventSources.html +6 -6
  33. package/docs/classes/services.EventSubscriptions.html +6 -6
  34. package/docs/classes/services.FailoverBackends.html +6 -6
  35. package/docs/classes/services.HTTPResponseBackends.html +6 -6
  36. package/docs/classes/services.HTTPSEdgeMutualTLSModule.html +4 -4
  37. package/docs/classes/services.HTTPSEdgeTLSTerminationModule.html +4 -4
  38. package/docs/classes/services.IPPolicies.html +6 -6
  39. package/docs/classes/services.IPPolicyRules.html +6 -6
  40. package/docs/classes/services.IPRestrictions.html +6 -6
  41. package/docs/classes/services.ReservedAddrs.html +6 -6
  42. package/docs/classes/services.ReservedDomains.html +8 -8
  43. package/docs/classes/services.SSHCertificateAuthorities.html +6 -6
  44. package/docs/classes/services.SSHCredentials.html +6 -6
  45. package/docs/classes/services.SSHHostCertificates.html +6 -6
  46. package/docs/classes/services.SSHUserCertificates.html +6 -6
  47. package/docs/classes/services.Secrets.html +359 -0
  48. package/docs/classes/services.StaticBackends.html +6 -6
  49. package/docs/classes/services.TCPEdgeBackendModule.html +4 -4
  50. package/docs/classes/services.TCPEdgeIPRestrictionModule.html +4 -4
  51. package/docs/classes/services.TCPEdgeTrafficPolicyModule.html +4 -4
  52. package/docs/classes/services.TLSCertificates.html +6 -6
  53. package/docs/classes/services.TLSEdgeBackendModule.html +4 -4
  54. package/docs/classes/services.TLSEdgeIPRestrictionModule.html +4 -4
  55. package/docs/classes/services.TLSEdgeMutualTLSModule.html +4 -4
  56. package/docs/classes/services.TLSEdgeTLSTerminationModule.html +4 -4
  57. package/docs/classes/services.TLSEdgeTrafficPolicyModule.html +4 -4
  58. package/docs/classes/services.TunnelGroupBackends.html +6 -6
  59. package/docs/classes/services.TunnelSessions.html +6 -6
  60. package/docs/classes/services.Tunnels.html +3 -3
  61. package/docs/classes/services.Vaults.html +397 -0
  62. package/docs/classes/services.WeightedBackends.html +6 -6
  63. package/docs/interfaces/client.NgrokConfig.html +2 -2
  64. package/docs/interfaces/datatypes.APIKey.html +7 -7
  65. package/docs/interfaces/datatypes.APIKeyCreate.html +3 -3
  66. package/docs/interfaces/datatypes.APIKeyList.html +3 -3
  67. package/docs/interfaces/datatypes.APIKeyUpdate.html +3 -3
  68. package/docs/interfaces/datatypes.AWSAuth.html +2 -2
  69. package/docs/interfaces/datatypes.AWSCredentials.html +2 -2
  70. package/docs/interfaces/datatypes.AWSRole.html +1 -1
  71. package/docs/interfaces/datatypes.AbuseReport.html +7 -7
  72. package/docs/interfaces/datatypes.AbuseReportCreate.html +2 -2
  73. package/docs/interfaces/datatypes.AbuseReportHostname.html +2 -2
  74. package/docs/interfaces/datatypes.AgentIngress.html +10 -10
  75. package/docs/interfaces/datatypes.AgentIngressCertJob.html +4 -4
  76. package/docs/interfaces/datatypes.AgentIngressCertPolicy.html +2 -2
  77. package/docs/interfaces/datatypes.AgentIngressCertStatus.html +2 -2
  78. package/docs/interfaces/datatypes.AgentIngressCreate.html +4 -4
  79. package/docs/interfaces/datatypes.AgentIngressList.html +3 -3
  80. package/docs/interfaces/datatypes.AgentIngressUpdate.html +4 -4
  81. package/docs/interfaces/datatypes.ApplicationSession.html +11 -11
  82. package/docs/interfaces/datatypes.ApplicationSessionList.html +3 -3
  83. package/docs/interfaces/datatypes.ApplicationUser.html +10 -10
  84. package/docs/interfaces/datatypes.ApplicationUserList.html +3 -3
  85. package/docs/interfaces/datatypes.BotUser.html +5 -5
  86. package/docs/interfaces/datatypes.BotUserCreate.html +2 -2
  87. package/docs/interfaces/datatypes.BotUserList.html +3 -3
  88. package/docs/interfaces/datatypes.BotUserUpdate.html +3 -3
  89. package/docs/interfaces/datatypes.BrowserSession.html +3 -3
  90. package/docs/interfaces/datatypes.CertificateAuthority.html +11 -11
  91. package/docs/interfaces/datatypes.CertificateAuthorityCreate.html +3 -3
  92. package/docs/interfaces/datatypes.CertificateAuthorityList.html +3 -3
  93. package/docs/interfaces/datatypes.CertificateAuthorityUpdate.html +3 -3
  94. package/docs/interfaces/datatypes.Credential.html +8 -8
  95. package/docs/interfaces/datatypes.CredentialCreate.html +4 -4
  96. package/docs/interfaces/datatypes.CredentialList.html +3 -3
  97. package/docs/interfaces/datatypes.CredentialUpdate.html +4 -4
  98. package/docs/interfaces/datatypes.EdgeBackendReplace.html +2 -2
  99. package/docs/interfaces/datatypes.EdgeIPRestrictionReplace.html +2 -2
  100. package/docs/interfaces/datatypes.EdgeMutualTLSReplace.html +2 -2
  101. package/docs/interfaces/datatypes.EdgeRouteBackendReplace.html +3 -3
  102. package/docs/interfaces/datatypes.EdgeRouteCircuitBreakerReplace.html +3 -3
  103. package/docs/interfaces/datatypes.EdgeRouteCompressionReplace.html +3 -3
  104. package/docs/interfaces/datatypes.EdgeRouteIPRestrictionReplace.html +3 -3
  105. package/docs/interfaces/datatypes.EdgeRouteItem.html +2 -2
  106. package/docs/interfaces/datatypes.EdgeRouteOAuthReplace.html +3 -3
  107. package/docs/interfaces/datatypes.EdgeRouteOIDCReplace.html +3 -3
  108. package/docs/interfaces/datatypes.EdgeRouteRequestHeadersReplace.html +3 -3
  109. package/docs/interfaces/datatypes.EdgeRouteResponseHeadersReplace.html +3 -3
  110. package/docs/interfaces/datatypes.EdgeRouteSAMLReplace.html +3 -3
  111. package/docs/interfaces/datatypes.EdgeRouteTrafficPolicyReplace.html +3 -3
  112. package/docs/interfaces/datatypes.EdgeRouteUserAgentFilterReplace.html +3 -3
  113. package/docs/interfaces/datatypes.EdgeRouteWebhookVerificationReplace.html +3 -3
  114. package/docs/interfaces/datatypes.EdgeRouteWebsocketTCPConverterReplace.html +3 -3
  115. package/docs/interfaces/datatypes.EdgeTLSTerminationAtEdgeReplace.html +2 -2
  116. package/docs/interfaces/datatypes.EdgeTLSTerminationReplace.html +2 -2
  117. package/docs/interfaces/datatypes.EdgeTrafficPolicyReplace.html +2 -2
  118. package/docs/interfaces/datatypes.Endpoint.html +51 -51
  119. package/docs/interfaces/datatypes.EndpointBackend.html +2 -2
  120. package/docs/interfaces/datatypes.EndpointBackendMutate.html +2 -2
  121. package/docs/interfaces/datatypes.EndpointCircuitBreaker.html +6 -6
  122. package/docs/interfaces/datatypes.EndpointCompression.html +1 -1
  123. package/docs/interfaces/datatypes.EndpointCreate.html +21 -7
  124. package/docs/interfaces/datatypes.EndpointIPPolicy.html +2 -2
  125. package/docs/interfaces/datatypes.EndpointIPPolicyMutate.html +2 -2
  126. package/docs/interfaces/datatypes.EndpointList.html +3 -3
  127. package/docs/interfaces/datatypes.EndpointListArgs.html +204 -0
  128. package/docs/interfaces/datatypes.EndpointMutualTLS.html +2 -2
  129. package/docs/interfaces/datatypes.EndpointMutualTLSMutate.html +2 -2
  130. package/docs/interfaces/datatypes.EndpointOAuth.html +7 -7
  131. package/docs/interfaces/datatypes.EndpointOAuthAmazon.html +5 -5
  132. package/docs/interfaces/datatypes.EndpointOAuthFacebook.html +5 -5
  133. package/docs/interfaces/datatypes.EndpointOAuthGitHub.html +7 -7
  134. package/docs/interfaces/datatypes.EndpointOAuthGitLab.html +5 -5
  135. package/docs/interfaces/datatypes.EndpointOAuthGoogle.html +5 -5
  136. package/docs/interfaces/datatypes.EndpointOAuthLinkedIn.html +5 -5
  137. package/docs/interfaces/datatypes.EndpointOAuthMicrosoft.html +5 -5
  138. package/docs/interfaces/datatypes.EndpointOAuthProvider.html +8 -8
  139. package/docs/interfaces/datatypes.EndpointOAuthTwitch.html +5 -5
  140. package/docs/interfaces/datatypes.EndpointOIDC.html +9 -9
  141. package/docs/interfaces/datatypes.EndpointRequestHeaders.html +3 -3
  142. package/docs/interfaces/datatypes.EndpointResponseHeaders.html +3 -3
  143. package/docs/interfaces/datatypes.EndpointSAML.html +15 -15
  144. package/docs/interfaces/datatypes.EndpointSAMLMutate.html +10 -10
  145. package/docs/interfaces/datatypes.EndpointTLSTermination.html +3 -3
  146. package/docs/interfaces/datatypes.EndpointTLSTerminationAtEdge.html +2 -2
  147. package/docs/interfaces/datatypes.EndpointTrafficPolicy.html +2 -2
  148. package/docs/interfaces/datatypes.EndpointUpdate.html +20 -6
  149. package/docs/interfaces/datatypes.EndpointUserAgentFilter.html +3 -3
  150. package/docs/interfaces/datatypes.EndpointWebhookValidation.html +3 -3
  151. package/docs/interfaces/datatypes.EndpointWebsocketTCPConverter.html +1 -1
  152. package/docs/interfaces/datatypes.Error.html +4 -4
  153. package/docs/interfaces/datatypes.EventDestination.html +7 -7
  154. package/docs/interfaces/datatypes.EventDestinationCreate.html +4 -4
  155. package/docs/interfaces/datatypes.EventDestinationList.html +3 -3
  156. package/docs/interfaces/datatypes.EventDestinationUpdate.html +5 -5
  157. package/docs/interfaces/datatypes.EventSource.html +2 -2
  158. package/docs/interfaces/datatypes.EventSourceCreate.html +2 -2
  159. package/docs/interfaces/datatypes.EventSourceItem.html +2 -2
  160. package/docs/interfaces/datatypes.EventSourceList.html +2 -2
  161. package/docs/interfaces/datatypes.EventSourcePaging.html +1 -1
  162. package/docs/interfaces/datatypes.EventSourceReplace.html +1 -1
  163. package/docs/interfaces/datatypes.EventSourceUpdate.html +2 -2
  164. package/docs/interfaces/datatypes.EventSubscription.html +7 -7
  165. package/docs/interfaces/datatypes.EventSubscriptionCreate.html +4 -4
  166. package/docs/interfaces/datatypes.EventSubscriptionList.html +3 -3
  167. package/docs/interfaces/datatypes.EventSubscriptionUpdate.html +5 -5
  168. package/docs/interfaces/datatypes.EventTarget.html +5 -5
  169. package/docs/interfaces/datatypes.EventTargetAzureLogsIngestion.html +6 -6
  170. package/docs/interfaces/datatypes.EventTargetCloudwatchLogs.html +2 -2
  171. package/docs/interfaces/datatypes.EventTargetDatadog.html +4 -4
  172. package/docs/interfaces/datatypes.EventTargetFirehose.html +2 -2
  173. package/docs/interfaces/datatypes.EventTargetKinesis.html +2 -2
  174. package/docs/interfaces/datatypes.FailoverBackend.html +6 -6
  175. package/docs/interfaces/datatypes.FailoverBackendCreate.html +3 -3
  176. package/docs/interfaces/datatypes.FailoverBackendList.html +3 -3
  177. package/docs/interfaces/datatypes.FailoverBackendUpdate.html +4 -4
  178. package/docs/interfaces/datatypes.HTTPResponseBackend.html +8 -8
  179. package/docs/interfaces/datatypes.HTTPResponseBackendCreate.html +5 -5
  180. package/docs/interfaces/datatypes.HTTPResponseBackendList.html +3 -3
  181. package/docs/interfaces/datatypes.HTTPResponseBackendUpdate.html +6 -6
  182. package/docs/interfaces/datatypes.HTTPSEdge.html +9 -9
  183. package/docs/interfaces/datatypes.HTTPSEdgeCreate.html +5 -5
  184. package/docs/interfaces/datatypes.HTTPSEdgeList.html +3 -3
  185. package/docs/interfaces/datatypes.HTTPSEdgeRoute.html +21 -21
  186. package/docs/interfaces/datatypes.HTTPSEdgeRouteCreate.html +18 -18
  187. package/docs/interfaces/datatypes.HTTPSEdgeRouteUpdate.html +19 -19
  188. package/docs/interfaces/datatypes.HTTPSEdgeUpdate.html +6 -6
  189. package/docs/interfaces/datatypes.IPPolicy.html +5 -5
  190. package/docs/interfaces/datatypes.IPPolicyCreate.html +2 -2
  191. package/docs/interfaces/datatypes.IPPolicyList.html +3 -3
  192. package/docs/interfaces/datatypes.IPPolicyRule.html +8 -8
  193. package/docs/interfaces/datatypes.IPPolicyRuleCreate.html +5 -5
  194. package/docs/interfaces/datatypes.IPPolicyRuleList.html +3 -3
  195. package/docs/interfaces/datatypes.IPPolicyRuleUpdate.html +4 -4
  196. package/docs/interfaces/datatypes.IPPolicyUpdate.html +3 -3
  197. package/docs/interfaces/datatypes.IPRestriction.html +8 -8
  198. package/docs/interfaces/datatypes.IPRestrictionCreate.html +5 -5
  199. package/docs/interfaces/datatypes.IPRestrictionList.html +3 -3
  200. package/docs/interfaces/datatypes.IPRestrictionUpdate.html +5 -5
  201. package/docs/interfaces/datatypes.IdentityProvider.html +2 -2
  202. package/docs/interfaces/datatypes.Item.html +1 -1
  203. package/docs/interfaces/datatypes.ItemPaging.html +195 -0
  204. package/docs/interfaces/datatypes.Location.html +4 -4
  205. package/docs/interfaces/datatypes.Paging.html +2 -2
  206. package/docs/interfaces/datatypes.Ref.html +2 -2
  207. package/docs/interfaces/datatypes.ReservedAddr.html +7 -7
  208. package/docs/interfaces/datatypes.ReservedAddrCreate.html +3 -3
  209. package/docs/interfaces/datatypes.ReservedAddrList.html +3 -3
  210. package/docs/interfaces/datatypes.ReservedAddrUpdate.html +3 -3
  211. package/docs/interfaces/datatypes.ReservedDomain.html +12 -12
  212. package/docs/interfaces/datatypes.ReservedDomainCertJob.html +4 -4
  213. package/docs/interfaces/datatypes.ReservedDomainCertPolicy.html +2 -2
  214. package/docs/interfaces/datatypes.ReservedDomainCertStatus.html +2 -2
  215. package/docs/interfaces/datatypes.ReservedDomainCreate.html +6 -6
  216. package/docs/interfaces/datatypes.ReservedDomainList.html +3 -3
  217. package/docs/interfaces/datatypes.ReservedDomainUpdate.html +5 -5
  218. package/docs/interfaces/datatypes.SSHCertificateAuthority.html +7 -7
  219. package/docs/interfaces/datatypes.SSHCertificateAuthorityCreate.html +5 -5
  220. package/docs/interfaces/datatypes.SSHCertificateAuthorityList.html +3 -3
  221. package/docs/interfaces/datatypes.SSHCertificateAuthorityUpdate.html +3 -3
  222. package/docs/interfaces/datatypes.SSHCredential.html +8 -8
  223. package/docs/interfaces/datatypes.SSHCredentialCreate.html +5 -5
  224. package/docs/interfaces/datatypes.SSHCredentialList.html +3 -3
  225. package/docs/interfaces/datatypes.SSHCredentialUpdate.html +4 -4
  226. package/docs/interfaces/datatypes.SSHHostCertificate.html +12 -12
  227. package/docs/interfaces/datatypes.SSHHostCertificateCreate.html +7 -7
  228. package/docs/interfaces/datatypes.SSHHostCertificateList.html +3 -3
  229. package/docs/interfaces/datatypes.SSHHostCertificateUpdate.html +3 -3
  230. package/docs/interfaces/datatypes.SSHUserCertificate.html +14 -14
  231. package/docs/interfaces/datatypes.SSHUserCertificateCreate.html +9 -9
  232. package/docs/interfaces/datatypes.SSHUserCertificateList.html +3 -3
  233. package/docs/interfaces/datatypes.SSHUserCertificateUpdate.html +3 -3
  234. package/docs/interfaces/datatypes.Secret.html +338 -0
  235. package/docs/interfaces/datatypes.SecretCreate.html +243 -0
  236. package/docs/interfaces/datatypes.SecretList.html +200 -0
  237. package/docs/interfaces/datatypes.SecretUpdate.html +243 -0
  238. package/docs/interfaces/datatypes.StaticBackend.html +7 -7
  239. package/docs/interfaces/datatypes.StaticBackendCreate.html +4 -4
  240. package/docs/interfaces/datatypes.StaticBackendList.html +3 -3
  241. package/docs/interfaces/datatypes.StaticBackendTLS.html +1 -1
  242. package/docs/interfaces/datatypes.StaticBackendUpdate.html +5 -5
  243. package/docs/interfaces/datatypes.TCPEdge.html +9 -9
  244. package/docs/interfaces/datatypes.TCPEdgeCreate.html +6 -6
  245. package/docs/interfaces/datatypes.TCPEdgeList.html +3 -3
  246. package/docs/interfaces/datatypes.TCPEdgeUpdate.html +7 -7
  247. package/docs/interfaces/datatypes.TLSCertificate.html +21 -21
  248. package/docs/interfaces/datatypes.TLSCertificateCreate.html +4 -4
  249. package/docs/interfaces/datatypes.TLSCertificateList.html +3 -3
  250. package/docs/interfaces/datatypes.TLSCertificateSANs.html +2 -2
  251. package/docs/interfaces/datatypes.TLSCertificateUpdate.html +3 -3
  252. package/docs/interfaces/datatypes.TLSEdge.html +11 -11
  253. package/docs/interfaces/datatypes.TLSEdgeCreate.html +8 -8
  254. package/docs/interfaces/datatypes.TLSEdgeList.html +3 -3
  255. package/docs/interfaces/datatypes.TLSEdgeUpdate.html +9 -9
  256. package/docs/interfaces/datatypes.Tunnel.html +11 -11
  257. package/docs/interfaces/datatypes.TunnelGroupBackend.html +7 -7
  258. package/docs/interfaces/datatypes.TunnelGroupBackendCreate.html +3 -3
  259. package/docs/interfaces/datatypes.TunnelGroupBackendList.html +3 -3
  260. package/docs/interfaces/datatypes.TunnelGroupBackendUpdate.html +4 -4
  261. package/docs/interfaces/datatypes.TunnelList.html +3 -3
  262. package/docs/interfaces/datatypes.TunnelSession.html +10 -10
  263. package/docs/interfaces/datatypes.TunnelSessionList.html +3 -3
  264. package/docs/interfaces/datatypes.TunnelSessionsUpdate.html +1 -1
  265. package/docs/interfaces/datatypes.UserAgent.html +6 -6
  266. package/docs/interfaces/datatypes.Vault.html +319 -0
  267. package/docs/interfaces/datatypes.VaultCreate.html +205 -0
  268. package/docs/interfaces/datatypes.VaultList.html +200 -0
  269. package/docs/interfaces/datatypes.VaultUpdate.html +224 -0
  270. package/docs/interfaces/datatypes.WeightedBackend.html +6 -6
  271. package/docs/interfaces/datatypes.WeightedBackendCreate.html +3 -3
  272. package/docs/interfaces/datatypes.WeightedBackendList.html +3 -3
  273. package/docs/interfaces/datatypes.WeightedBackendUpdate.html +4 -4
  274. package/docs/modules/datatypes.html +40 -0
  275. package/docs/modules/services.html +8 -0
  276. package/lib/client.d.ts +8 -0
  277. package/lib/client.d.ts.map +1 -1
  278. package/lib/client.js +3 -1
  279. package/lib/client.js.map +1 -1
  280. package/lib/datatypes.d.ts +117 -5
  281. package/lib/datatypes.d.ts.map +1 -1
  282. package/lib/services.d.ts +66 -0
  283. package/lib/services.d.ts.map +1 -1
  284. package/lib/services.js +289 -25
  285. package/lib/services.js.map +1 -1
  286. package/package.json +1 -1
  287. package/src/client.ts +11 -1
  288. package/src/datatypes.ts +127 -5
  289. package/src/services.ts +265 -2
package/src/datatypes.ts CHANGED
@@ -12,6 +12,13 @@ export interface Paging {
12
12
  limit?: string;
13
13
  }
14
14
 
15
+ export interface ItemPaging {
16
+ /** a resource identifier */
17
+ id: string;
18
+ beforeId?: string;
19
+ limit?: string;
20
+ }
21
+
15
22
  export interface Error {
16
23
  errorCode: string;
17
24
  statusCode: number;
@@ -1470,23 +1477,23 @@ export interface Endpoint {
1470
1477
  /** the local address the tunnel forwards to */
1471
1478
  upstreamUrl?: string;
1472
1479
  /** the protocol the agent uses to forward with */
1473
- upstreamProto?: string;
1480
+ upstreamProtocol?: string;
1474
1481
  /** the url of the endpoint */
1475
1482
  url?: string;
1476
1483
  /** The ID of the owner (bot or user) that owns this endpoint */
1477
1484
  principal?: Ref;
1478
- /** TODO: deprecate me! */
1479
- principalId?: Ref;
1480
1485
  /** The traffic policy attached to this endpoint */
1481
1486
  trafficPolicy?: string;
1482
1487
  /** the bindings associated with this endpoint */
1483
1488
  bindings?: Array<string>;
1484
1489
  /** The tunnel session of the agent for this endpoint */
1485
1490
  tunnelSession?: Ref;
1486
- /** URI of the clep API resource */
1491
+ /** URI of the Cloud Endpoint API resource */
1487
1492
  uri?: string;
1488
1493
  /** user supplied name for the endpoint */
1489
1494
  name?: string;
1495
+ /** whether the endpoint allows pooling */
1496
+ poolingEnabled: boolean;
1490
1497
  }
1491
1498
 
1492
1499
  export interface EndpointList {
@@ -1501,7 +1508,7 @@ export interface EndpointList {
1501
1508
  export interface EndpointCreate {
1502
1509
  /** the url of the endpoint */
1503
1510
  url: string;
1504
- /** whether the endpoint is `ephemeral` (served directly by an agent-initiated tunnel) or `edge` (served by an edge) or `cloud (represents a cloud endpoint)` */
1511
+ /** Type of endpoint. Only 'cloud' is currently supported (represents a cloud endpoint). Defaults to 'cloud' if not specified. */
1505
1512
  type: string;
1506
1513
  /** The traffic policy attached to this endpoint */
1507
1514
  trafficPolicy: string;
@@ -1511,6 +1518,14 @@ export interface EndpointCreate {
1511
1518
  metadata?: string;
1512
1519
  /** the bindings associated with this endpoint */
1513
1520
  bindings?: Array<string>;
1521
+ poolingEnabled: boolean;
1522
+ }
1523
+
1524
+ export interface EndpointListArgs {
1525
+ beforeId?: string;
1526
+ limit?: string;
1527
+ id?: Array<string>;
1528
+ url?: Array<string>;
1514
1529
  }
1515
1530
 
1516
1531
  export interface EndpointUpdate {
@@ -1526,6 +1541,7 @@ export interface EndpointUpdate {
1526
1541
  metadata?: string;
1527
1542
  /** the bindings associated with this endpoint */
1528
1543
  bindings?: Array<string>;
1544
+ poolingEnabled: boolean;
1529
1545
  }
1530
1546
 
1531
1547
  export interface EventDestinationCreate {
@@ -2025,6 +2041,63 @@ export interface ReservedDomainCertJob {
2025
2041
  retriesAt?: Date;
2026
2042
  }
2027
2043
 
2044
+ export interface SecretCreate {
2045
+ /** Name of secret */
2046
+ name: string;
2047
+ /** Value of secret */
2048
+ value: string;
2049
+ /** Arbitrary user-defined metadata for this Secret */
2050
+ metadata?: string;
2051
+ /** description of Secret */
2052
+ description?: string;
2053
+ /** unique identifier of the referenced vault */
2054
+ vaultId: string;
2055
+ }
2056
+
2057
+ export interface SecretUpdate {
2058
+ /** identifier for Secret */
2059
+ id: string;
2060
+ /** Name of secret */
2061
+ name?: string;
2062
+ /** Value of secret */
2063
+ value?: string;
2064
+ /** Arbitrary user-defined metadata for this Secret */
2065
+ metadata?: string;
2066
+ /** description of Secret */
2067
+ description?: string;
2068
+ }
2069
+
2070
+ export interface Secret {
2071
+ /** identifier for Secret */
2072
+ id: string;
2073
+ /** URI of this Secret API resource */
2074
+ uri: string;
2075
+ /** Timestamp when the Secret was created (RFC 3339 format) */
2076
+ createdAt: Date;
2077
+ /** Timestamp when the Secret was last updated (RFC 3339 format) */
2078
+ updatedAt: Date;
2079
+ /** Name of secret */
2080
+ name: string;
2081
+ /** description of Secret */
2082
+ description?: string;
2083
+ /** Arbitrary user-defined metadata for this Secret */
2084
+ metadata?: string;
2085
+ /** Reference to who created this Secret */
2086
+ createdBy: Ref;
2087
+ /** Reference to who created this Secret */
2088
+ lastUpdatedBy: Ref;
2089
+ /** Reference to the vault the secret is stored in */
2090
+ vault: Ref;
2091
+ }
2092
+
2093
+ export interface SecretList {
2094
+ /** The list of Secrets for this account */
2095
+ secrets: Array<Secret>;
2096
+ uri: string;
2097
+ /** URI of the next page of results, or null if there is no next page */
2098
+ nextPageUri?: string;
2099
+ }
2100
+
2028
2101
  export interface SSHCertificateAuthorityCreate {
2029
2102
  /** human-readable description of this SSH Certificate Authority. optional, max 255 bytes. */
2030
2103
  description?: string;
@@ -2366,3 +2439,52 @@ export interface TunnelList {
2366
2439
  /** URI of the next page, or null if there is no next page */
2367
2440
  nextPageUri?: string;
2368
2441
  }
2442
+
2443
+ export interface VaultCreate {
2444
+ /** Name of vault */
2445
+ name: string;
2446
+ /** Arbitrary user-defined metadata for this Vault */
2447
+ metadata: string;
2448
+ /** description of Vault */
2449
+ description: string;
2450
+ }
2451
+
2452
+ export interface VaultUpdate {
2453
+ /** identifier for Vault */
2454
+ id: string;
2455
+ /** Name of vault */
2456
+ name?: string;
2457
+ /** Arbitrary user-defined metadata for this Vault */
2458
+ metadata?: string;
2459
+ /** description of Vault */
2460
+ description?: string;
2461
+ }
2462
+
2463
+ export interface Vault {
2464
+ /** identifier for Vault */
2465
+ id: string;
2466
+ /** URI of this Vault API resource */
2467
+ uri: string;
2468
+ /** Timestamp when the Vault was created (RFC 3339 format) */
2469
+ createdAt: Date;
2470
+ /** Timestamp when the Vault was last updated (RFC 3339 format) */
2471
+ updatedAt: Date;
2472
+ /** Name of vault */
2473
+ name: string;
2474
+ /** description of Vault */
2475
+ description?: string;
2476
+ /** Arbitrary user-defined metadata for this Vault */
2477
+ metadata?: string;
2478
+ /** Reference to who created this Vault */
2479
+ createdBy: string;
2480
+ /** Reference to who created this Vault */
2481
+ lastUpdatedBy: string;
2482
+ }
2483
+
2484
+ export interface VaultList {
2485
+ /** The list of Vaults for this account */
2486
+ vaults: Array<Vault>;
2487
+ uri: string;
2488
+ /** URI of the next page of results, or null if there is no next page */
2489
+ nextPageUri?: string;
2490
+ }
package/src/services.ts CHANGED
@@ -2485,7 +2485,9 @@ export class Endpoints {
2485
2485
  return array;
2486
2486
  }
2487
2487
 
2488
- private _pagedList(arg: datatypes.Paging): Promise<datatypes.EndpointList> {
2488
+ private _pagedList(
2489
+ arg: datatypes.EndpointListArgs
2490
+ ): Promise<datatypes.EndpointList> {
2489
2491
  return this.httpClient
2490
2492
  .url(`/endpoints`)
2491
2493
  .query(arg)
@@ -2496,7 +2498,7 @@ export class Endpoints {
2496
2498
 
2497
2499
  private async *_asyncList(beforeId: string, limit = '100') {
2498
2500
  let nextPage = 'initial loop';
2499
- let page: datatypes.Paging = { limit: limit };
2501
+ let page: datatypes.EndpointListArgs = { limit: limit };
2500
2502
 
2501
2503
  if (beforeId) {
2502
2504
  page.beforeId = beforeId;
@@ -3380,6 +3382,106 @@ export class ReservedDomains {
3380
3382
  }
3381
3383
  }
3382
3384
 
3385
+ /**
3386
+ * Secrets is an api service for securely storing and managing sensitive data such as secrets, credentials, and tokens.
3387
+ */
3388
+ export class Secrets {
3389
+ private httpClient: Wretcher;
3390
+
3391
+ /** Do not construct this object directly, use the <code>secrets</code> property of an <code>Ngrok</code> client object instead. */
3392
+ public constructor(httpClient: Wretcher) {
3393
+ this.httpClient = httpClient;
3394
+ }
3395
+ /**
3396
+ * Create a new Secret
3397
+ */
3398
+ public create(arg: datatypes.SecretCreate): Promise<datatypes.Secret> {
3399
+ return this.httpClient
3400
+ .url(`/vault_secrets`)
3401
+ .post(util.serializeArgument(arg))
3402
+ .json(payload => util.deserializeResult(payload))
3403
+ .then(f => f, util.onRejected);
3404
+ }
3405
+ /**
3406
+ * Update an existing Secret by ID
3407
+ */
3408
+ public update(arg: datatypes.SecretUpdate): Promise<datatypes.Secret> {
3409
+ return this.httpClient
3410
+ .url(`/vault_secrets/${arg.id}`)
3411
+ .patch(util.serializeArgument(arg))
3412
+ .json(payload => util.deserializeResult(payload))
3413
+ .then(f => f, util.onRejected);
3414
+ }
3415
+ /**
3416
+ * Delete a Secret
3417
+ */
3418
+ public delete(id): Promise<void> {
3419
+ return this.httpClient
3420
+ .url(`/vault_secrets/${id}`)
3421
+ .delete()
3422
+ .res()
3423
+ .then(f => f, util.onRejected);
3424
+ }
3425
+ /**
3426
+ * Get a Secret by ID
3427
+ */
3428
+ public get(id): Promise<datatypes.Secret> {
3429
+ return this.httpClient
3430
+ .url(`/vault_secrets/${id}`)
3431
+ .get()
3432
+ .json(payload => util.deserializeResult(payload))
3433
+ .then(f => f, util.onRejected);
3434
+ }
3435
+ /**
3436
+ * List all Secrets owned by account
3437
+ */
3438
+ public async list(
3439
+ beforeId?: string,
3440
+ limit?: string
3441
+ ): Promise<Array<datatypes.Secret>> {
3442
+ const array: Array<datatypes.Secret> = [];
3443
+ for await (const item of this._asyncList(beforeId, limit)) {
3444
+ array.push(item);
3445
+ }
3446
+ return array;
3447
+ }
3448
+
3449
+ private _pagedList(arg: datatypes.Paging): Promise<datatypes.SecretList> {
3450
+ return this.httpClient
3451
+ .url(`/vault_secrets`)
3452
+ .query(arg)
3453
+ .get()
3454
+ .json(payload => util.deserializeResult(payload))
3455
+ .then(util.onFulfilled, util.onRejected);
3456
+ }
3457
+
3458
+ private async *_asyncList(beforeId: string, limit = '100') {
3459
+ let nextPage = 'initial loop';
3460
+ let page: datatypes.Paging = { limit: limit };
3461
+
3462
+ if (beforeId) {
3463
+ page.beforeId = beforeId;
3464
+ }
3465
+
3466
+ while (nextPage) {
3467
+ const pagedList = await this._pagedList(page);
3468
+ nextPage = pagedList.nextPageUri;
3469
+ const items: datatypes.Secret[] = pagedList.secrets;
3470
+
3471
+ if (nextPage) {
3472
+ page = {
3473
+ beforeId: items[items.length - 1].id,
3474
+ limit: limit,
3475
+ };
3476
+ }
3477
+
3478
+ for (const item of items) {
3479
+ yield item;
3480
+ }
3481
+ }
3482
+ }
3483
+ }
3484
+
3383
3485
  /**
3384
3486
  * An SSH Certificate Authority is a pair of an SSH Certificate and its private
3385
3487
  key that can be used to sign other SSH host and user certificates.
@@ -3993,3 +4095,164 @@ export class Tunnels {
3993
4095
  .then(f => f, util.onRejected);
3994
4096
  }
3995
4097
  }
4098
+
4099
+ /**
4100
+ * Vaults is an api service for securely storing and managing sensitive data such as secrets, credentials, and tokens.
4101
+ */
4102
+ export class Vaults {
4103
+ private httpClient: Wretcher;
4104
+
4105
+ /** Do not construct this object directly, use the <code>vaults</code> property of an <code>Ngrok</code> client object instead. */
4106
+ public constructor(httpClient: Wretcher) {
4107
+ this.httpClient = httpClient;
4108
+ }
4109
+ /**
4110
+ * Create a new Vault
4111
+ */
4112
+ public create(arg: datatypes.VaultCreate): Promise<datatypes.Vault> {
4113
+ return this.httpClient
4114
+ .url(`/vaults`)
4115
+ .post(util.serializeArgument(arg))
4116
+ .json(payload => util.deserializeResult(payload))
4117
+ .then(f => f, util.onRejected);
4118
+ }
4119
+ /**
4120
+ * Update an existing Vault by ID
4121
+ */
4122
+ public update(arg: datatypes.VaultUpdate): Promise<datatypes.Vault> {
4123
+ return this.httpClient
4124
+ .url(`/vaults/${arg.id}`)
4125
+ .patch(util.serializeArgument(arg))
4126
+ .json(payload => util.deserializeResult(payload))
4127
+ .then(f => f, util.onRejected);
4128
+ }
4129
+ /**
4130
+ * Delete a Vault
4131
+ */
4132
+ public delete(id): Promise<void> {
4133
+ return this.httpClient
4134
+ .url(`/vaults/${id}`)
4135
+ .delete()
4136
+ .res()
4137
+ .then(f => f, util.onRejected);
4138
+ }
4139
+ /**
4140
+ * Get a Vault by ID
4141
+ */
4142
+ public get(id): Promise<datatypes.Vault> {
4143
+ return this.httpClient
4144
+ .url(`/vaults/${id}`)
4145
+ .get()
4146
+ .json(payload => util.deserializeResult(payload))
4147
+ .then(f => f, util.onRejected);
4148
+ }
4149
+ /**
4150
+ * Get Secrets by Vault ID
4151
+ */
4152
+ public async getSecretsByVault(
4153
+ id,
4154
+ beforeId?: string,
4155
+ limit?: string
4156
+ ): Promise<Array<datatypes.Secret>> {
4157
+ const array: Array<datatypes.Secret> = [];
4158
+ for await (const item of this._getSecretsByVault_asyncList(
4159
+ id,
4160
+ beforeId,
4161
+ limit
4162
+ )) {
4163
+ array.push(item);
4164
+ }
4165
+ return array;
4166
+ }
4167
+
4168
+ private _getSecretsByVault_pagedList(
4169
+ arg: datatypes.ItemPaging
4170
+ ): Promise<datatypes.SecretList> {
4171
+ return this.httpClient
4172
+ .url(`/vaults/${arg.id}/secrets`)
4173
+ .query(arg)
4174
+ .get()
4175
+ .json(payload => util.deserializeResult(payload))
4176
+ .then(util.onFulfilled, util.onRejected);
4177
+ }
4178
+
4179
+ private async *_getSecretsByVault_asyncList(
4180
+ id,
4181
+ beforeId: string,
4182
+ limit = '100'
4183
+ ) {
4184
+ let nextPage = 'initial loop';
4185
+ let page: datatypes.ItemPaging = { id: id, limit: limit };
4186
+
4187
+ if (beforeId) {
4188
+ page.beforeId = beforeId;
4189
+ }
4190
+ page.id = id;
4191
+
4192
+ while (nextPage) {
4193
+ const pagedList = await this._getSecretsByVault_pagedList(page);
4194
+ nextPage = pagedList.nextPageUri;
4195
+ const items: datatypes.Secret[] = pagedList.secrets;
4196
+
4197
+ if (nextPage) {
4198
+ page = {
4199
+ id: id,
4200
+ beforeId: items[items.length - 1].id,
4201
+ limit: limit,
4202
+ };
4203
+ }
4204
+
4205
+ for (const item of items) {
4206
+ yield item;
4207
+ }
4208
+ }
4209
+ }
4210
+ /**
4211
+ * List all Vaults owned by account
4212
+ */
4213
+ public async list(
4214
+ beforeId?: string,
4215
+ limit?: string
4216
+ ): Promise<Array<datatypes.Vault>> {
4217
+ const array: Array<datatypes.Vault> = [];
4218
+ for await (const item of this._asyncList(beforeId, limit)) {
4219
+ array.push(item);
4220
+ }
4221
+ return array;
4222
+ }
4223
+
4224
+ private _pagedList(arg: datatypes.Paging): Promise<datatypes.VaultList> {
4225
+ return this.httpClient
4226
+ .url(`/vaults`)
4227
+ .query(arg)
4228
+ .get()
4229
+ .json(payload => util.deserializeResult(payload))
4230
+ .then(util.onFulfilled, util.onRejected);
4231
+ }
4232
+
4233
+ private async *_asyncList(beforeId: string, limit = '100') {
4234
+ let nextPage = 'initial loop';
4235
+ let page: datatypes.Paging = { limit: limit };
4236
+
4237
+ if (beforeId) {
4238
+ page.beforeId = beforeId;
4239
+ }
4240
+
4241
+ while (nextPage) {
4242
+ const pagedList = await this._pagedList(page);
4243
+ nextPage = pagedList.nextPageUri;
4244
+ const items: datatypes.Vault[] = pagedList.vaults;
4245
+
4246
+ if (nextPage) {
4247
+ page = {
4248
+ beforeId: items[items.length - 1].id,
4249
+ limit: limit,
4250
+ };
4251
+ }
4252
+
4253
+ for (const item of items) {
4254
+ yield item;
4255
+ }
4256
+ }
4257
+ }
4258
+ }