@ngrok/ngrok-api 0.3.0 → 0.7.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 (242) hide show
  1. package/README.md +0 -28
  2. package/docs/assets/js/search.js +1 -1
  3. package/docs/classes/client.Ngrok.html +191 -100
  4. package/docs/classes/services.APIKeys.html +6 -105
  5. package/docs/classes/services.AbuseReports.html +3 -102
  6. package/docs/classes/services.AgentIngresses.html +6 -105
  7. package/docs/classes/services.CertificateAuthorities.html +6 -105
  8. package/docs/classes/services.Credentials.html +6 -105
  9. package/docs/classes/services.EdgeRouteBackendModule.html +270 -0
  10. package/docs/classes/services.EdgeRouteCircuitBreakerModule.html +270 -0
  11. package/docs/classes/services.EdgeRouteCompressionModule.html +270 -0
  12. package/docs/classes/{services.EndpointCircuitBreakerModule.html → services.EdgeRouteIPRestrictionModule.html} +28 -127
  13. package/docs/classes/services.EdgeRouteOAuthModule.html +270 -0
  14. package/docs/classes/services.EdgeRouteOIDCModule.html +270 -0
  15. package/docs/classes/{services.EndpointResponseHeadersModule.html → services.EdgeRouteRequestHeadersModule.html} +28 -127
  16. package/docs/classes/services.EdgeRouteResponseHeadersModule.html +270 -0
  17. package/docs/classes/services.EdgeRouteSAMLModule.html +270 -0
  18. package/docs/classes/services.EdgeRouteWebhookVerificationModule.html +270 -0
  19. package/docs/classes/services.EdgeRouteWebsocketTCPConverterModule.html +270 -0
  20. package/docs/classes/services.EdgesHTTPS.html +343 -0
  21. package/docs/classes/services.EdgesHTTPSRoutes.html +317 -0
  22. package/docs/classes/services.EdgesTCP.html +343 -0
  23. package/docs/classes/services.EdgesTLS.html +343 -0
  24. package/docs/classes/services.Endpoints.html +256 -0
  25. package/docs/classes/services.EventDestinations.html +7 -106
  26. package/docs/classes/services.EventSources.html +6 -105
  27. package/docs/classes/services.EventSubscriptions.html +6 -105
  28. package/docs/classes/services.FailoverBackends.html +353 -0
  29. package/docs/classes/services.HTTPResponseBackends.html +318 -0
  30. package/docs/classes/{services.EndpointMutualTLSModule.html → services.HTTPSEdgeMutualTLSModule.html} +22 -121
  31. package/docs/classes/{services.EndpointTLSTerminationModule.html → services.HTTPSEdgeTLSTerminationModule.html} +22 -121
  32. package/docs/classes/services.IPPolicies.html +6 -105
  33. package/docs/classes/services.IPPolicyRules.html +6 -105
  34. package/docs/classes/services.IPRestrictions.html +7 -106
  35. package/docs/classes/services.ReservedAddrs.html +6 -137
  36. package/docs/classes/services.ReservedDomains.html +8 -171
  37. package/docs/classes/services.SSHCertificateAuthorities.html +6 -105
  38. package/docs/classes/services.SSHCredentials.html +6 -105
  39. package/docs/classes/services.SSHHostCertificates.html +6 -105
  40. package/docs/classes/services.SSHUserCertificates.html +6 -105
  41. package/docs/classes/{services.EndpointSAMLModule.html → services.TCPEdgeBackendModule.html} +25 -124
  42. package/docs/classes/{services.EndpointIPPolicyModule.html → services.TCPEdgeIPRestrictionModule.html} +22 -121
  43. package/docs/classes/services.TLSCertificates.html +6 -105
  44. package/docs/classes/{services.EndpointLoggingModule.html → services.TLSEdgeBackendModule.html} +25 -124
  45. package/docs/classes/{services.EndpointOIDCModule.html → services.TLSEdgeIPRestrictionModule.html} +25 -124
  46. package/docs/classes/{services.EndpointOAuthModule.html → services.TLSEdgeMutualTLSModule.html} +25 -124
  47. package/docs/classes/services.TLSEdgeTLSTerminationModule.html +270 -0
  48. package/docs/classes/services.TunnelGroupBackends.html +351 -0
  49. package/docs/classes/services.TunnelSessions.html +6 -105
  50. package/docs/classes/services.Tunnels.html +34 -101
  51. package/docs/classes/{services.EventStreams.html → services.WeightedBackends.html} +51 -140
  52. package/docs/index.html +0 -27
  53. package/docs/interfaces/client.NgrokConfig.html +2 -2
  54. package/docs/interfaces/datatypes.APIKey.html +6 -6
  55. package/docs/interfaces/datatypes.APIKeyCreate.html +2 -2
  56. package/docs/interfaces/datatypes.APIKeyList.html +3 -3
  57. package/docs/interfaces/datatypes.APIKeyUpdate.html +3 -3
  58. package/docs/interfaces/datatypes.AWSAuth.html +2 -2
  59. package/docs/interfaces/datatypes.AWSCredentials.html +2 -2
  60. package/docs/interfaces/datatypes.AWSRole.html +1 -1
  61. package/docs/interfaces/datatypes.AbuseReport.html +7 -7
  62. package/docs/interfaces/datatypes.AbuseReportCreate.html +2 -2
  63. package/docs/interfaces/datatypes.AbuseReportHostname.html +2 -2
  64. package/docs/interfaces/datatypes.AgentIngress.html +8 -8
  65. package/docs/interfaces/datatypes.AgentIngressCreate.html +3 -3
  66. package/docs/interfaces/datatypes.AgentIngressList.html +3 -3
  67. package/docs/interfaces/datatypes.AgentIngressUpdate.html +3 -3
  68. package/docs/interfaces/datatypes.CertificateAuthority.html +11 -11
  69. package/docs/interfaces/datatypes.CertificateAuthorityCreate.html +3 -3
  70. package/docs/interfaces/datatypes.CertificateAuthorityList.html +3 -3
  71. package/docs/interfaces/datatypes.CertificateAuthorityUpdate.html +3 -3
  72. package/docs/interfaces/datatypes.Credential.html +7 -7
  73. package/docs/interfaces/datatypes.CredentialCreate.html +3 -3
  74. package/docs/interfaces/datatypes.CredentialList.html +3 -3
  75. package/docs/interfaces/datatypes.CredentialUpdate.html +4 -4
  76. package/docs/interfaces/{datatypes.EndpointOIDCReplace.html → datatypes.EdgeBackendReplace.html} +12 -12
  77. package/docs/interfaces/{datatypes.EndpointIPPolicyReplace.html → datatypes.EdgeIPRestrictionReplace.html} +11 -11
  78. package/docs/interfaces/{datatypes.EndpointMutualTLSReplace.html → datatypes.EdgeMutualTLSReplace.html} +11 -11
  79. package/docs/interfaces/datatypes.EdgeRouteBackendReplace.html +190 -0
  80. package/docs/interfaces/datatypes.EdgeRouteCircuitBreakerReplace.html +190 -0
  81. package/docs/interfaces/{datatypes.EndpointCompressionReplace.html → datatypes.EdgeRouteCompressionReplace.html} +25 -11
  82. package/docs/interfaces/datatypes.EdgeRouteIPRestrictionReplace.html +190 -0
  83. package/docs/interfaces/{datatypes.EndpointCircuitBreakerReplace.html → datatypes.EdgeRouteItem.html} +27 -17
  84. package/docs/interfaces/{datatypes.EndpointOAuthReplace.html → datatypes.EdgeRouteOAuthReplace.html} +25 -11
  85. package/docs/interfaces/datatypes.EdgeRouteOIDCReplace.html +190 -0
  86. package/docs/interfaces/{datatypes.EndpointRequestHeadersReplace.html → datatypes.EdgeRouteRequestHeadersReplace.html} +25 -11
  87. package/docs/interfaces/datatypes.EdgeRouteResponseHeadersReplace.html +190 -0
  88. package/docs/interfaces/{datatypes.EndpointSAMLReplace.html → datatypes.EdgeRouteSAMLReplace.html} +25 -11
  89. package/docs/interfaces/{datatypes.EndpointWebhookValidationReplace.html → datatypes.EdgeRouteWebhookVerificationReplace.html} +25 -11
  90. package/docs/interfaces/datatypes.EdgeRouteWebsocketTCPConverterReplace.html +190 -0
  91. package/docs/interfaces/{datatypes.EndpointResponseHeadersReplace.html → datatypes.EdgeTLSTerminationAtEdgeReplace.html} +12 -12
  92. package/docs/interfaces/{datatypes.EndpointTLSTerminationReplace.html → datatypes.EdgeTLSTerminationReplace.html} +11 -11
  93. package/docs/interfaces/datatypes.Endpoint.html +395 -0
  94. package/docs/interfaces/{datatypes.EndpointLogging.html → datatypes.EndpointBackend.html} +19 -19
  95. package/docs/interfaces/{datatypes.EndpointLoggingMutate.html → datatypes.EndpointBackendMutate.html} +19 -19
  96. package/docs/interfaces/datatypes.EndpointCircuitBreaker.html +6 -6
  97. package/docs/interfaces/datatypes.EndpointCompression.html +1 -1
  98. package/docs/interfaces/datatypes.EndpointIPPolicy.html +2 -2
  99. package/docs/interfaces/datatypes.EndpointIPPolicyMutate.html +2 -2
  100. package/docs/interfaces/datatypes.EndpointList.html +205 -0
  101. package/docs/interfaces/datatypes.EndpointMutualTLS.html +2 -2
  102. package/docs/interfaces/datatypes.EndpointMutualTLSMutate.html +2 -2
  103. package/docs/interfaces/datatypes.EndpointOAuth.html +7 -7
  104. package/docs/interfaces/datatypes.EndpointOAuthFacebook.html +5 -5
  105. package/docs/interfaces/datatypes.EndpointOAuthGitHub.html +7 -7
  106. package/docs/interfaces/datatypes.EndpointOAuthGoogle.html +5 -5
  107. package/docs/interfaces/datatypes.EndpointOAuthMicrosoft.html +5 -5
  108. package/docs/interfaces/datatypes.EndpointOAuthProvider.html +4 -4
  109. package/docs/interfaces/datatypes.EndpointOIDC.html +9 -9
  110. package/docs/interfaces/datatypes.EndpointRequestHeaders.html +3 -3
  111. package/docs/interfaces/datatypes.EndpointResponseHeaders.html +3 -3
  112. package/docs/interfaces/datatypes.EndpointSAML.html +15 -15
  113. package/docs/interfaces/datatypes.EndpointSAMLMutate.html +10 -10
  114. package/docs/interfaces/datatypes.EndpointTLSTermination.html +3 -3
  115. package/docs/interfaces/datatypes.EndpointTLSTerminationAtEdge.html +186 -0
  116. package/docs/interfaces/datatypes.EndpointWebhookValidation.html +4 -4
  117. package/docs/interfaces/datatypes.EndpointWebsocketTCPConverter.html +167 -0
  118. package/docs/interfaces/datatypes.Error.html +4 -4
  119. package/docs/interfaces/datatypes.EventDestination.html +7 -7
  120. package/docs/interfaces/datatypes.EventDestinationCreate.html +4 -4
  121. package/docs/interfaces/datatypes.EventDestinationList.html +3 -3
  122. package/docs/interfaces/datatypes.EventDestinationUpdate.html +5 -5
  123. package/docs/interfaces/datatypes.EventSource.html +2 -2
  124. package/docs/interfaces/datatypes.EventSourceCreate.html +2 -2
  125. package/docs/interfaces/datatypes.EventSourceItem.html +2 -2
  126. package/docs/interfaces/datatypes.EventSourceList.html +2 -2
  127. package/docs/interfaces/datatypes.EventSourcePaging.html +1 -1
  128. package/docs/interfaces/datatypes.EventSourceReplace.html +1 -1
  129. package/docs/interfaces/datatypes.EventSourceUpdate.html +2 -2
  130. package/docs/interfaces/datatypes.EventSubscription.html +7 -7
  131. package/docs/interfaces/datatypes.EventSubscriptionCreate.html +5 -5
  132. package/docs/interfaces/datatypes.EventSubscriptionList.html +3 -3
  133. package/docs/interfaces/datatypes.EventSubscriptionUpdate.html +6 -6
  134. package/docs/interfaces/datatypes.EventTarget.html +3 -3
  135. package/docs/interfaces/datatypes.EventTargetCloudwatchLogs.html +2 -2
  136. package/docs/interfaces/datatypes.EventTargetFirehose.html +2 -2
  137. package/docs/interfaces/datatypes.EventTargetKinesis.html +2 -2
  138. package/docs/interfaces/{datatypes.EventStreamCreate.html → datatypes.FailoverBackend.html} +44 -44
  139. package/docs/interfaces/datatypes.FailoverBackendCreate.html +205 -0
  140. package/docs/interfaces/datatypes.FailoverBackendList.html +205 -0
  141. package/docs/interfaces/datatypes.FailoverBackendUpdate.html +219 -0
  142. package/docs/interfaces/datatypes.HTTPResponseBackend.html +295 -0
  143. package/docs/interfaces/datatypes.HTTPResponseBackendCreate.html +243 -0
  144. package/docs/interfaces/datatypes.HTTPResponseBackendList.html +190 -0
  145. package/docs/interfaces/{datatypes.EventStreamUpdate.html → datatypes.HTTPResponseBackendUpdate.html} +40 -45
  146. package/docs/interfaces/{datatypes.EventStream.html → datatypes.HTTPSEdge.html} +58 -63
  147. package/docs/interfaces/datatypes.HTTPSEdgeCreate.html +238 -0
  148. package/docs/interfaces/{datatypes.EventStreamList.html → datatypes.HTTPSEdgeList.html} +20 -20
  149. package/docs/interfaces/{datatypes.EndpointConfiguration.html → datatypes.HTTPSEdgeRoute.html} +123 -104
  150. package/docs/interfaces/{datatypes.EndpointConfigurationCreate.html → datatypes.HTTPSEdgeRouteCreate.html} +108 -89
  151. package/docs/interfaces/{datatypes.EndpointConfigurationUpdate.html → datatypes.HTTPSEdgeRouteUpdate.html} +115 -77
  152. package/docs/interfaces/datatypes.HTTPSEdgeUpdate.html +257 -0
  153. package/docs/interfaces/datatypes.IPPolicy.html +5 -24
  154. package/docs/interfaces/datatypes.IPPolicyCreate.html +2 -21
  155. package/docs/interfaces/datatypes.IPPolicyList.html +3 -3
  156. package/docs/interfaces/datatypes.IPPolicyRule.html +26 -7
  157. package/docs/interfaces/datatypes.IPPolicyRuleCreate.html +23 -4
  158. package/docs/interfaces/datatypes.IPPolicyRuleList.html +3 -3
  159. package/docs/interfaces/datatypes.IPPolicyRuleUpdate.html +4 -4
  160. package/docs/interfaces/datatypes.IPPolicyUpdate.html +3 -3
  161. package/docs/interfaces/datatypes.IPRestriction.html +8 -8
  162. package/docs/interfaces/datatypes.IPRestrictionCreate.html +5 -5
  163. package/docs/interfaces/datatypes.IPRestrictionList.html +3 -3
  164. package/docs/interfaces/datatypes.IPRestrictionUpdate.html +5 -5
  165. package/docs/interfaces/datatypes.Item.html +1 -1
  166. package/docs/interfaces/datatypes.Paging.html +2 -2
  167. package/docs/interfaces/datatypes.Ref.html +2 -2
  168. package/docs/interfaces/datatypes.ReservedAddr.html +7 -26
  169. package/docs/interfaces/datatypes.ReservedAddrCreate.html +3 -22
  170. package/docs/interfaces/datatypes.ReservedAddrList.html +3 -3
  171. package/docs/interfaces/datatypes.ReservedAddrUpdate.html +3 -22
  172. package/docs/interfaces/datatypes.ReservedDomain.html +12 -50
  173. package/docs/interfaces/datatypes.ReservedDomainCertJob.html +4 -4
  174. package/docs/interfaces/datatypes.ReservedDomainCertPolicy.html +2 -2
  175. package/docs/interfaces/datatypes.ReservedDomainCertStatus.html +2 -2
  176. package/docs/interfaces/datatypes.ReservedDomainCreate.html +6 -44
  177. package/docs/interfaces/datatypes.ReservedDomainList.html +3 -3
  178. package/docs/interfaces/datatypes.ReservedDomainUpdate.html +5 -43
  179. package/docs/interfaces/datatypes.SSHCertificateAuthority.html +7 -7
  180. package/docs/interfaces/datatypes.SSHCertificateAuthorityCreate.html +5 -5
  181. package/docs/interfaces/datatypes.SSHCertificateAuthorityList.html +3 -3
  182. package/docs/interfaces/datatypes.SSHCertificateAuthorityUpdate.html +3 -3
  183. package/docs/interfaces/datatypes.SSHCredential.html +7 -7
  184. package/docs/interfaces/datatypes.SSHCredentialCreate.html +4 -4
  185. package/docs/interfaces/datatypes.SSHCredentialList.html +3 -3
  186. package/docs/interfaces/datatypes.SSHCredentialUpdate.html +4 -4
  187. package/docs/interfaces/datatypes.SSHHostCertificate.html +12 -12
  188. package/docs/interfaces/datatypes.SSHHostCertificateCreate.html +7 -7
  189. package/docs/interfaces/datatypes.SSHHostCertificateList.html +3 -3
  190. package/docs/interfaces/datatypes.SSHHostCertificateUpdate.html +3 -3
  191. package/docs/interfaces/datatypes.SSHUserCertificate.html +14 -14
  192. package/docs/interfaces/datatypes.SSHUserCertificateCreate.html +9 -9
  193. package/docs/interfaces/datatypes.SSHUserCertificateList.html +3 -3
  194. package/docs/interfaces/datatypes.SSHUserCertificateUpdate.html +3 -3
  195. package/docs/interfaces/datatypes.TCPEdge.html +295 -0
  196. package/docs/interfaces/datatypes.TCPEdgeCreate.html +238 -0
  197. package/docs/interfaces/datatypes.TCPEdgeList.html +205 -0
  198. package/docs/interfaces/datatypes.TCPEdgeUpdate.html +257 -0
  199. package/docs/interfaces/datatypes.TLSCertificate.html +21 -21
  200. package/docs/interfaces/datatypes.TLSCertificateCreate.html +4 -4
  201. package/docs/interfaces/datatypes.TLSCertificateList.html +3 -3
  202. package/docs/interfaces/datatypes.TLSCertificateSANs.html +2 -2
  203. package/docs/interfaces/datatypes.TLSCertificateUpdate.html +3 -3
  204. package/docs/interfaces/datatypes.TLSEdge.html +323 -0
  205. package/docs/interfaces/datatypes.TLSEdgeCreate.html +266 -0
  206. package/docs/interfaces/datatypes.TLSEdgeList.html +205 -0
  207. package/docs/interfaces/datatypes.TLSEdgeUpdate.html +285 -0
  208. package/docs/interfaces/datatypes.Tunnel.html +85 -9
  209. package/docs/interfaces/datatypes.TunnelGroupBackend.html +281 -0
  210. package/docs/interfaces/datatypes.TunnelGroupBackendCreate.html +205 -0
  211. package/docs/interfaces/datatypes.TunnelGroupBackendList.html +205 -0
  212. package/docs/interfaces/datatypes.TunnelGroupBackendUpdate.html +219 -0
  213. package/docs/interfaces/datatypes.TunnelList.html +3 -3
  214. package/docs/interfaces/datatypes.TunnelSession.html +10 -10
  215. package/docs/interfaces/datatypes.TunnelSessionList.html +3 -3
  216. package/docs/interfaces/datatypes.TunnelSessionsUpdate.html +1 -1
  217. package/docs/interfaces/datatypes.WeightedBackend.html +262 -0
  218. package/docs/interfaces/datatypes.WeightedBackendCreate.html +205 -0
  219. package/docs/interfaces/{datatypes.EndpointConfigurationList.html → datatypes.WeightedBackendList.html} +19 -19
  220. package/docs/interfaces/datatypes.WeightedBackendUpdate.html +219 -0
  221. package/docs/modules/datatypes.html +197 -69
  222. package/docs/modules/services.html +85 -29
  223. package/lib/client.d.ts +53 -19
  224. package/lib/client.d.ts.map +1 -1
  225. package/lib/client.js +42 -18
  226. package/lib/client.js.map +1 -1
  227. package/lib/datatypes.d.ts +570 -236
  228. package/lib/datatypes.d.ts.map +1 -1
  229. package/lib/services.d.ts +358 -138
  230. package/lib/services.d.ts.map +1 -1
  231. package/lib/services.js +1367 -528
  232. package/lib/services.js.map +1 -1
  233. package/package.json +2 -2
  234. package/src/client.ts +95 -38
  235. package/src/datatypes.ts +618 -252
  236. package/src/services.ts +1363 -543
  237. package/docs/classes/services.EndpointCompressionModule.html +0 -369
  238. package/docs/classes/services.EndpointConfigurations.html +0 -451
  239. package/docs/classes/services.EndpointRequestHeadersModule.html +0 -369
  240. package/docs/classes/services.EndpointWebhookValidationModule.html +0 -369
  241. package/docs/interfaces/datatypes.EndpointLoggingReplace.html +0 -176
  242. package/test/endpointConfigurations.test.js +0 -67
@@ -124,6 +124,172 @@ export interface APIKeyList {
124
124
  /** URI of the next page, or null if there is no next page */
125
125
  nextPageUri?: string;
126
126
  }
127
+ export interface FailoverBackend {
128
+ /** unique identifier for this Failover backend */
129
+ id: string;
130
+ /** URI of the FailoverBackend API resource */
131
+ uri: string;
132
+ /** timestamp when the backend was created, RFC 3339 format */
133
+ createdAt: string;
134
+ /** human-readable description of this backend. Optional */
135
+ description: string;
136
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
137
+ metadata: string;
138
+ /** the ids of the child backends in order */
139
+ backends: Array<string>;
140
+ }
141
+ export interface FailoverBackendCreate {
142
+ /** human-readable description of this backend. Optional */
143
+ description: string;
144
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
145
+ metadata: string;
146
+ /** the ids of the child backends in order */
147
+ backends: Array<string>;
148
+ }
149
+ export interface FailoverBackendUpdate {
150
+ id: string;
151
+ /** human-readable description of this backend. Optional */
152
+ description?: string;
153
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
154
+ metadata?: string;
155
+ /** the ids of the child backends in order */
156
+ backends: Array<string>;
157
+ }
158
+ export interface FailoverBackendList {
159
+ /** the list of all Failover backends on this account */
160
+ backends: Array<FailoverBackend>;
161
+ /** URI of the Failover backends list API resource */
162
+ uri: string;
163
+ /** URI of the next page, or null if there is no next page */
164
+ nextPageUri?: string;
165
+ }
166
+ export interface HTTPResponseBackend {
167
+ id: string;
168
+ /** URI of the HTTPResponseBackend API resource */
169
+ uri: string;
170
+ /** timestamp when the backend was created, RFC 3339 format */
171
+ createdAt: string;
172
+ /** human-readable description of this backend. Optional */
173
+ description: string;
174
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
175
+ metadata: string;
176
+ /** body to return as fixed content */
177
+ body: string;
178
+ /** headers to return */
179
+ headers: Map<string, string>;
180
+ /** status code to return */
181
+ statusCode: number;
182
+ }
183
+ export interface HTTPResponseBackendCreate {
184
+ /** human-readable description of this backend. Optional */
185
+ description: string;
186
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
187
+ metadata: string;
188
+ /** body to return as fixed content */
189
+ body: string;
190
+ /** headers to return */
191
+ headers: Map<string, string>;
192
+ /** status code to return */
193
+ statusCode?: number;
194
+ }
195
+ export interface HTTPResponseBackendUpdate {
196
+ id: string;
197
+ /** human-readable description of this backend. Optional */
198
+ description?: string;
199
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
200
+ metadata?: string;
201
+ /** body to return as fixed content */
202
+ body?: string;
203
+ /** headers to return */
204
+ headers?: Map<string, string>;
205
+ /** status code to return */
206
+ statusCode?: number;
207
+ }
208
+ export interface HTTPResponseBackendList {
209
+ backends: Array<HTTPResponseBackend>;
210
+ uri: string;
211
+ nextPageUri?: string;
212
+ }
213
+ export interface TunnelGroupBackend {
214
+ /** unique identifier for this TunnelGroup backend */
215
+ id: string;
216
+ /** URI of the TunnelGroupBackend API resource */
217
+ uri: string;
218
+ /** timestamp when the backend was created, RFC 3339 format */
219
+ createdAt: string;
220
+ /** human-readable description of this backend. Optional */
221
+ description: string;
222
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
223
+ metadata: string;
224
+ /** labels to watch for tunnels on, e.g. app->foo, dc->bar */
225
+ labels: Map<string, string>;
226
+ /** tunnels matching this backend */
227
+ tunnels: Array<Ref>;
228
+ }
229
+ export interface TunnelGroupBackendCreate {
230
+ /** human-readable description of this backend. Optional */
231
+ description: string;
232
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
233
+ metadata: string;
234
+ /** labels to watch for tunnels on, e.g. app->foo, dc->bar */
235
+ labels: Map<string, string>;
236
+ }
237
+ export interface TunnelGroupBackendUpdate {
238
+ id: string;
239
+ /** human-readable description of this backend. Optional */
240
+ description?: string;
241
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
242
+ metadata?: string;
243
+ /** labels to watch for tunnels on, e.g. app->foo, dc->bar */
244
+ labels: Map<string, string>;
245
+ }
246
+ export interface TunnelGroupBackendList {
247
+ /** the list of all TunnelGroup backends on this account */
248
+ backends: Array<TunnelGroupBackend>;
249
+ /** URI of the TunnelGroup backends list API resource */
250
+ uri: string;
251
+ /** URI of the next page, or null if there is no next page */
252
+ nextPageUri?: string;
253
+ }
254
+ export interface WeightedBackend {
255
+ /** unique identifier for this Weighted backend */
256
+ id: string;
257
+ /** URI of the WeightedBackend API resource */
258
+ uri: string;
259
+ /** timestamp when the backend was created, RFC 3339 format */
260
+ createdAt: string;
261
+ /** human-readable description of this backend. Optional */
262
+ description: string;
263
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
264
+ metadata: string;
265
+ /** the ids of the child backends to their weights (0-10000) */
266
+ backends: Map<string, number>;
267
+ }
268
+ export interface WeightedBackendCreate {
269
+ /** human-readable description of this backend. Optional */
270
+ description: string;
271
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
272
+ metadata: string;
273
+ /** the ids of the child backends to their weights (0-10000) */
274
+ backends: Map<string, number>;
275
+ }
276
+ export interface WeightedBackendUpdate {
277
+ id: string;
278
+ /** human-readable description of this backend. Optional */
279
+ description?: string;
280
+ /** arbitrary user-defined machine-readable data of this backend. Optional */
281
+ metadata?: string;
282
+ /** the ids of the child backends to their weights (0-10000) */
283
+ backends: Map<string, number>;
284
+ }
285
+ export interface WeightedBackendList {
286
+ /** the list of all Weighted backends on this account */
287
+ backends: Array<WeightedBackend>;
288
+ /** URI of the Weighted backends list API resource */
289
+ uri: string;
290
+ /** URI of the next page, or null if there is no next page */
291
+ nextPageUri?: string;
292
+ }
127
293
  export interface CertificateAuthorityCreate {
128
294
  /** human-readable description of this Certificate Authority. optional, max 255 bytes. */
129
295
  description: string;
@@ -212,120 +378,10 @@ export interface CredentialList {
212
378
  /** URI of the next page, or null if there is no next page */
213
379
  nextPageUri?: string;
214
380
  }
215
- export interface EndpointConfiguration {
216
- /** unique identifier of this endpoint configuration */
217
- id: string;
218
- /** they type of traffic this endpoint configuration can be applied to. one of: `http`, `https`, `tcp` */
219
- type: string;
220
- /** human-readable description of what this endpoint configuration will be do when applied or what traffic it will be applied to. Optional, max 255 bytes */
221
- description: string;
222
- /** arbitrary user-defined machine-readable data of this endpoint configuration. Optional, max 4096 bytes. */
223
- metadata: string;
224
- /** timestamp when the endpoint configuration was created, RFC 3339 format */
225
- createdAt: string;
226
- /** URI of the endpoint configuration API resource */
227
- uri: string;
228
- /** circuit breaker module configuration or `null` */
229
- circuitBreaker?: EndpointCircuitBreaker;
230
- /** compression module configuration or `null` */
231
- compression?: EndpointCompression;
232
- /** request headers module configuration or `null` */
233
- requestHeaders?: EndpointRequestHeaders;
234
- /** response headers module configuration or `null` */
235
- responseHeaders?: EndpointResponseHeaders;
236
- /** ip policy module configuration or `null` */
237
- ipPolicy?: EndpointIPPolicy;
238
- /** mutual TLS module configuration or `null` */
239
- mutualTls?: EndpointMutualTLS;
240
- /** TLS termination module configuration or `null` */
241
- tlsTermination?: EndpointTLSTermination;
242
- /** webhook validation module configuration or `null` */
243
- webhookValidation?: EndpointWebhookValidation;
244
- /** oauth module configuration or `null` */
245
- oauth?: EndpointOAuth;
246
- /** logging module configuration or `null` */
247
- logging?: EndpointLogging;
248
- /** saml module configuration or `null` */
249
- saml?: EndpointSAML;
250
- /** oidc module configuration or `null` */
251
- oidc?: EndpointOIDC;
252
- }
253
- export interface EndpointConfigurationList {
254
- /** the list of all endpoint configurations on this account */
255
- endpointConfigurations: Array<EndpointConfiguration>;
256
- /** URI of the endpoint configurations list API resource */
257
- uri: string;
258
- /** URI of the next page, or null if there is no next page */
259
- nextPageUri?: string;
260
- }
261
- export interface EndpointConfigurationUpdate {
262
- /** unique identifier of this endpoint configuration */
263
- id: string;
264
- /** human-readable description of what this endpoint configuration will be do when applied or what traffic it will be applied to. Optional, max 255 bytes */
265
- description?: string;
266
- /** arbitrary user-defined machine-readable data of this endpoint configuration. Optional, max 4096 bytes. */
267
- metadata?: string;
268
- /** circuit breaker module configuration or `null` */
269
- circuitBreaker?: EndpointCircuitBreaker;
270
- /** compression module configuration or `null` */
271
- compression?: EndpointCompression;
272
- /** request headers module configuration or `null` */
273
- requestHeaders?: EndpointRequestHeaders;
274
- /** response headers module configuration or `null` */
275
- responseHeaders?: EndpointResponseHeaders;
276
- /** ip policy module configuration or `null` */
277
- ipPolicy?: EndpointIPPolicyMutate;
278
- /** mutual TLS module configuration or `null` */
279
- mutualTls?: EndpointMutualTLSMutate;
280
- /** TLS termination module configuration or `null` */
281
- tlsTermination?: EndpointTLSTermination;
282
- /** webhook validation module configuration or `null` */
283
- webhookValidation?: EndpointWebhookValidation;
284
- /** oauth module configuration or `null` */
285
- oauth?: EndpointOAuth;
286
- /** logging module configuration or `null` */
287
- logging?: EndpointLoggingMutate;
288
- /** saml module configuration or `null` */
289
- saml?: EndpointSAMLMutate;
290
- /** oidc module configuration or `null` */
291
- oidc?: EndpointOIDC;
292
- }
293
- export interface EndpointConfigurationCreate {
294
- /** they type of traffic this endpoint configuration can be applied to. one of: `http`, `https`, `tcp` */
295
- type: string;
296
- /** human-readable description of what this endpoint configuration will be do when applied or what traffic it will be applied to. Optional, max 255 bytes */
297
- description: string;
298
- /** arbitrary user-defined machine-readable data of this endpoint configuration. Optional, max 4096 bytes. */
299
- metadata: string;
300
- /** circuit breaker module configuration or `null` */
301
- circuitBreaker?: EndpointCircuitBreaker;
302
- /** compression module configuration or `null` */
303
- compression?: EndpointCompression;
304
- /** request headers module configuration or `null` */
305
- requestHeaders?: EndpointRequestHeaders;
306
- /** response headers module configuration or `null` */
307
- responseHeaders?: EndpointResponseHeaders;
308
- /** ip policy module configuration or `null` */
309
- ipPolicy?: EndpointIPPolicyMutate;
310
- /** mutual TLS module configuration or `null` */
311
- mutualTls?: EndpointMutualTLSMutate;
312
- /** TLS termination module configuration or `null` */
313
- tlsTermination?: EndpointTLSTermination;
314
- /** webhook validation module configuration or `null` */
315
- webhookValidation?: EndpointWebhookValidation;
316
- /** oauth module configuration or `null` */
317
- oauth?: EndpointOAuth;
318
- /** logging module configuration or `null` */
319
- logging?: EndpointLoggingMutate;
320
- /** saml module configuration or `null` */
321
- saml?: EndpointSAMLMutate;
322
- /** oidc module configuration or `null` */
323
- oidc?: EndpointOIDC;
324
- }
325
381
  export interface EndpointWebhookValidation {
326
382
  /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
327
383
  enabled?: boolean;
328
- /** a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers: `SLACK`, `SNS`, `STRIPE`, `GITHUB`, `TWILIO`, `SHOPIFY`, `GITLAB`, `INTERCOM`, `SENDGRID`, `XERO`. */
384
+ /** a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers: `SLACK`, `SNS`, `STRIPE`, `GITHUB`, `TWILIO`, `SHOPIFY`, `GITLAB`, `INTERCOM`, `SENDGRID`, `XERO`, `PAGERDUTY`. */
329
385
  provider: string;
330
386
  /** a string secret used to validate requests from the given provider. All providers except AWS SNS require a secret */
331
387
  secret: string;
@@ -354,17 +410,11 @@ export interface EndpointTLSTermination {
354
410
  /** The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if `terminate_at` is set to `upstream`. */
355
411
  minVersion?: string;
356
412
  }
357
- export interface EndpointLogging {
358
- /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
359
- enabled?: boolean;
360
- /** list of all EventStreams that will be used to configure and export this endpoint's logs */
361
- eventStreams: Array<Ref>;
362
- }
363
- export interface EndpointLoggingMutate {
413
+ export interface EndpointTLSTerminationAtEdge {
364
414
  /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
365
415
  enabled?: boolean;
366
- /** list of all EventStreams that will be used to configure and export this endpoint's logs */
367
- eventStreamIds: Array<string>;
416
+ /** The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if `terminate_at` is set to `upstream`. */
417
+ minVersion?: string;
368
418
  }
369
419
  export interface EndpointRequestHeaders {
370
420
  /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
@@ -559,61 +609,403 @@ export interface EndpointOIDC {
559
609
  /** The set of scopes to request from the OIDC identity provider. */
560
610
  scopes: Array<string>;
561
611
  }
562
- export interface EventStreamCreate {
563
- /** Arbitrary user-defined machine-readable data of this Event Stream. Optional, max 4096 bytes. */
612
+ export interface EndpointBackend {
613
+ /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
614
+ enabled?: boolean;
615
+ /** backend to be used to back this endpoint */
616
+ backend: Ref;
617
+ }
618
+ export interface EndpointBackendMutate {
619
+ /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
620
+ enabled?: boolean;
621
+ /** backend to be used to back this endpoint */
622
+ backendId: string;
623
+ }
624
+ export interface EndpointWebsocketTCPConverter {
625
+ /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
626
+ enabled?: boolean;
627
+ }
628
+ export interface EdgeRouteItem {
629
+ /** unique identifier of this edge */
630
+ edgeId: string;
631
+ /** unique identifier of this edge route */
632
+ id: string;
633
+ }
634
+ export interface HTTPSEdgeRouteCreate {
635
+ /** unique identifier of this edge */
636
+ edgeId: string;
637
+ /** Type of match to use for this route. Valid values are "exact_path" and "path_prefix". */
638
+ matchType: string;
639
+ /** Route selector: "/blog" or "example.com" or "example.com/blog" */
640
+ match: string;
641
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
642
+ description: string;
643
+ /** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
564
644
  metadata: string;
565
- /** Human-readable description of the Event Stream. Optional, max 255 bytes. */
645
+ /** backend module configuration or `null` */
646
+ backend?: EndpointBackendMutate;
647
+ /** ip restriction module configuration or `null` */
648
+ ipRestriction?: EndpointIPPolicyMutate;
649
+ /** circuit breaker module configuration or `null` */
650
+ circuitBreaker?: EndpointCircuitBreaker;
651
+ /** compression module configuration or `null` */
652
+ compression?: EndpointCompression;
653
+ /** request headers module configuration or `null` */
654
+ requestHeaders?: EndpointRequestHeaders;
655
+ /** response headers module configuration or `null` */
656
+ responseHeaders?: EndpointResponseHeaders;
657
+ /** webhook verification module configuration or `null` */
658
+ webhookVerification?: EndpointWebhookValidation;
659
+ /** oauth module configuration or `null` */
660
+ oauth?: EndpointOAuth;
661
+ /** saml module configuration or `null` */
662
+ saml?: EndpointSAMLMutate;
663
+ /** oidc module configuration or `null` */
664
+ oidc?: EndpointOIDC;
665
+ /** websocket to tcp adapter configuration or `null` */
666
+ websocketTcpConverter?: EndpointWebsocketTCPConverter;
667
+ }
668
+ export interface HTTPSEdgeRouteUpdate {
669
+ /** unique identifier of this edge */
670
+ edgeId: string;
671
+ /** unique identifier of this edge route */
672
+ id: string;
673
+ /** Type of match to use for this route. Valid values are "exact_path" and "path_prefix". */
674
+ matchType: string;
675
+ /** Route selector: "/blog" or "example.com" or "example.com/blog" */
676
+ match: string;
677
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
566
678
  description: string;
567
- /** A list of protocol-specific fields you want to collect on each event. */
568
- fields: Array<string>;
569
- /** The protocol that determines which events will be collected. Supported values are `tcp_connection_closed` and `http_request_complete`. */
570
- eventType: string;
571
- /** A list of Event Destination IDs which should be used for this Event Stream. Event Streams are required to have at least one Event Destination. */
572
- destinationIds: Array<string>;
573
- /** The percentage of all events you would like to capture. Valid values range from 0.01, representing 1% of all events to 1.00, representing 100% of all events. */
574
- samplingRate: number;
679
+ /** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
680
+ metadata: string;
681
+ /** backend module configuration or `null` */
682
+ backend?: EndpointBackendMutate;
683
+ /** ip restriction module configuration or `null` */
684
+ ipRestriction?: EndpointIPPolicyMutate;
685
+ /** circuit breaker module configuration or `null` */
686
+ circuitBreaker?: EndpointCircuitBreaker;
687
+ /** compression module configuration or `null` */
688
+ compression?: EndpointCompression;
689
+ /** request headers module configuration or `null` */
690
+ requestHeaders?: EndpointRequestHeaders;
691
+ /** response headers module configuration or `null` */
692
+ responseHeaders?: EndpointResponseHeaders;
693
+ /** webhook verification module configuration or `null` */
694
+ webhookVerification?: EndpointWebhookValidation;
695
+ /** oauth module configuration or `null` */
696
+ oauth?: EndpointOAuth;
697
+ /** saml module configuration or `null` */
698
+ saml?: EndpointSAMLMutate;
699
+ /** oidc module configuration or `null` */
700
+ oidc?: EndpointOIDC;
701
+ /** websocket to tcp adapter configuration or `null` */
702
+ websocketTcpConverter?: EndpointWebsocketTCPConverter;
575
703
  }
576
- export interface EventStreamUpdate {
577
- /** Unique identifier for this Event Stream. */
704
+ export interface HTTPSEdgeRoute {
705
+ /** unique identifier of this edge */
706
+ edgeId: string;
707
+ /** unique identifier of this edge route */
578
708
  id: string;
579
- /** Arbitrary user-defined machine-readable data of this Event Stream. Optional, max 4096 bytes. */
580
- metadata?: string;
581
- /** Human-readable description of the Event Stream. Optional, max 255 bytes. */
582
- description?: string;
583
- /** A list of protocol-specific fields you want to collect on each event. */
584
- fields?: Array<string>;
585
- /** A list of Event Destination IDs which should be used for this Event Stream. Event Streams are required to have at least one Event Destination. */
586
- destinationIds?: Array<string>;
587
- /** The percentage of all events you would like to capture. Valid values range from 0.01, representing 1% of all events to 1.00, representing 100% of all events. */
588
- samplingRate?: number;
709
+ /** timestamp when the edge configuration was created, RFC 3339 format */
710
+ createdAt: string;
711
+ /** Type of match to use for this route. Valid values are "exact_path" and "path_prefix". */
712
+ matchType: string;
713
+ /** Route selector: "/blog" or "example.com" or "example.com/blog" */
714
+ match: string;
715
+ /** URI of the edge API resource */
716
+ uri: string;
717
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
718
+ description: string;
719
+ /** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
720
+ metadata: string;
721
+ /** backend module configuration or `null` */
722
+ backend?: EndpointBackend;
723
+ /** ip restriction module configuration or `null` */
724
+ ipRestriction?: EndpointIPPolicy;
725
+ /** circuit breaker module configuration or `null` */
726
+ circuitBreaker?: EndpointCircuitBreaker;
727
+ /** compression module configuration or `null` */
728
+ compression?: EndpointCompression;
729
+ /** request headers module configuration or `null` */
730
+ requestHeaders?: EndpointRequestHeaders;
731
+ /** response headers module configuration or `null` */
732
+ responseHeaders?: EndpointResponseHeaders;
733
+ /** webhook verification module configuration or `null` */
734
+ webhookVerification?: EndpointWebhookValidation;
735
+ /** oauth module configuration or `null` */
736
+ oauth?: EndpointOAuth;
737
+ /** saml module configuration or `null` */
738
+ saml?: EndpointSAML;
739
+ /** oidc module configuration or `null` */
740
+ oidc?: EndpointOIDC;
741
+ /** websocket to tcp adapter configuration or `null` */
742
+ websocketTcpConverter?: EndpointWebsocketTCPConverter;
589
743
  }
590
- export interface EventStreamList {
591
- /** The list of all Event Streams on this account. */
592
- eventStreams: Array<EventStream>;
593
- /** URI of the Event Stream list API resource. */
744
+ export interface HTTPSEdgeList {
745
+ /** the list of all HTTPS Edges on this account */
746
+ httpsEdges: Array<HTTPSEdge>;
747
+ /** URI of the HTTPS Edge list API resource */
594
748
  uri: string;
595
- /** URI of the next page, or null if there is no next page. */
749
+ /** URI of the next page, or null if there is no next page */
596
750
  nextPageUri?: string;
597
751
  }
598
- export interface EventStream {
599
- /** Unique identifier for this Event Stream. */
752
+ export interface HTTPSEdgeCreate {
753
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
754
+ description: string;
755
+ /** arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes. */
756
+ metadata: string;
757
+ /** hostports served by this edge */
758
+ hostports?: Array<string>;
759
+ /** edge modules */
760
+ mutualTls?: EndpointMutualTLSMutate;
761
+ tlsTermination?: EndpointTLSTerminationAtEdge;
762
+ }
763
+ export interface HTTPSEdgeUpdate {
764
+ /** unique identifier of this edge */
600
765
  id: string;
601
- /** URI of the Event Stream API resource. */
766
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
767
+ description?: string;
768
+ /** arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes. */
769
+ metadata?: string;
770
+ /** hostports served by this edge */
771
+ hostports?: Array<string>;
772
+ /** edge modules */
773
+ mutualTls?: EndpointMutualTLSMutate;
774
+ tlsTermination?: EndpointTLSTerminationAtEdge;
775
+ }
776
+ export interface HTTPSEdge {
777
+ /** unique identifier of this edge */
778
+ id: string;
779
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
780
+ description: string;
781
+ /** arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes. */
782
+ metadata: string;
783
+ /** timestamp when the edge configuration was created, RFC 3339 format */
784
+ createdAt: string;
785
+ /** URI of the edge API resource */
602
786
  uri: string;
603
- /** Timestamp when the Event Stream was created, RFC 3339 format. */
787
+ /** hostports served by this edge */
788
+ hostports?: Array<string>;
789
+ /** edge modules */
790
+ mutualTls?: EndpointMutualTLS;
791
+ tlsTermination?: EndpointTLSTermination;
792
+ /** routes */
793
+ routes: Array<HTTPSEdgeRoute>;
794
+ }
795
+ export interface EdgeBackendReplace {
796
+ id: string;
797
+ module: EndpointBackendMutate;
798
+ }
799
+ export interface EdgeIPRestrictionReplace {
800
+ id: string;
801
+ module: EndpointIPPolicyMutate;
802
+ }
803
+ export interface EdgeMutualTLSReplace {
804
+ id: string;
805
+ module: EndpointMutualTLSMutate;
806
+ }
807
+ export interface EdgeTLSTerminationReplace {
808
+ id: string;
809
+ module: EndpointTLSTermination;
810
+ }
811
+ export interface EdgeTLSTerminationAtEdgeReplace {
812
+ id: string;
813
+ module: EndpointTLSTerminationAtEdge;
814
+ }
815
+ export interface EdgeRouteBackendReplace {
816
+ edgeId: string;
817
+ id: string;
818
+ module: EndpointBackendMutate;
819
+ }
820
+ export interface EdgeRouteIPRestrictionReplace {
821
+ edgeId: string;
822
+ id: string;
823
+ module: EndpointIPPolicyMutate;
824
+ }
825
+ export interface EdgeRouteRequestHeadersReplace {
826
+ edgeId: string;
827
+ id: string;
828
+ module: EndpointRequestHeaders;
829
+ }
830
+ export interface EdgeRouteResponseHeadersReplace {
831
+ edgeId: string;
832
+ id: string;
833
+ module: EndpointResponseHeaders;
834
+ }
835
+ export interface EdgeRouteCompressionReplace {
836
+ edgeId: string;
837
+ id: string;
838
+ module: EndpointCompression;
839
+ }
840
+ export interface EdgeRouteCircuitBreakerReplace {
841
+ edgeId: string;
842
+ id: string;
843
+ module: EndpointCircuitBreaker;
844
+ }
845
+ export interface EdgeRouteWebhookVerificationReplace {
846
+ edgeId: string;
847
+ id: string;
848
+ module: EndpointWebhookValidation;
849
+ }
850
+ export interface EdgeRouteOAuthReplace {
851
+ edgeId: string;
852
+ id: string;
853
+ module: EndpointOAuth;
854
+ }
855
+ export interface EdgeRouteSAMLReplace {
856
+ edgeId: string;
857
+ id: string;
858
+ module: EndpointSAMLMutate;
859
+ }
860
+ export interface EdgeRouteOIDCReplace {
861
+ edgeId: string;
862
+ id: string;
863
+ module: EndpointOIDC;
864
+ }
865
+ export interface EdgeRouteWebsocketTCPConverterReplace {
866
+ edgeId: string;
867
+ id: string;
868
+ module: EndpointWebsocketTCPConverter;
869
+ }
870
+ export interface TCPEdgeList {
871
+ /** the list of all TCP Edges on this account */
872
+ tcpEdges: Array<TCPEdge>;
873
+ /** URI of the TCP Edge list API resource */
874
+ uri: string;
875
+ /** URI of the next page, or null if there is no next page */
876
+ nextPageUri?: string;
877
+ }
878
+ export interface TCPEdgeCreate {
879
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
880
+ description: string;
881
+ /** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
882
+ metadata: string;
883
+ /** hostports served by this edge */
884
+ hostports?: Array<string>;
885
+ /** edge modules */
886
+ backend?: EndpointBackendMutate;
887
+ ipRestriction?: EndpointIPPolicyMutate;
888
+ }
889
+ export interface TCPEdgeUpdate {
890
+ /** unique identifier of this edge */
891
+ id: string;
892
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
893
+ description?: string;
894
+ /** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
895
+ metadata?: string;
896
+ /** hostports served by this edge */
897
+ hostports?: Array<string>;
898
+ /** edge modules */
899
+ backend?: EndpointBackendMutate;
900
+ ipRestriction?: EndpointIPPolicyMutate;
901
+ }
902
+ export interface TCPEdge {
903
+ /** unique identifier of this edge */
904
+ id: string;
905
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
906
+ description: string;
907
+ /** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
908
+ metadata: string;
909
+ /** timestamp when the edge was created, RFC 3339 format */
604
910
  createdAt: string;
605
- /** Arbitrary user-defined machine-readable data of this Event Stream. Optional, max 4096 bytes. */
911
+ /** URI of the edge API resource */
912
+ uri: string;
913
+ /** hostports served by this edge */
914
+ hostports?: Array<string>;
915
+ /** edge modules */
916
+ backend?: EndpointBackend;
917
+ ipRestriction?: EndpointIPPolicy;
918
+ }
919
+ export interface TLSEdgeList {
920
+ /** the list of all TLS Edges on this account */
921
+ tlsEdges: Array<TLSEdge>;
922
+ /** URI of the TLS Edge list API resource */
923
+ uri: string;
924
+ /** URI of the next page, or null if there is no next page */
925
+ nextPageUri?: string;
926
+ }
927
+ export interface TLSEdgeCreate {
928
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
929
+ description: string;
930
+ /** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
606
931
  metadata: string;
607
- /** Human-readable description of the Event Stream. Optional, max 255 bytes. */
932
+ /** hostports served by this edge */
933
+ hostports?: Array<string>;
934
+ /** edge modules */
935
+ backend?: EndpointBackendMutate;
936
+ ipRestriction?: EndpointIPPolicyMutate;
937
+ mutualTls?: EndpointMutualTLSMutate;
938
+ tlsTermination?: EndpointTLSTermination;
939
+ }
940
+ export interface TLSEdgeUpdate {
941
+ /** unique identifier of this edge */
942
+ id: string;
943
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
944
+ description?: string;
945
+ /** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
946
+ metadata?: string;
947
+ /** hostports served by this edge */
948
+ hostports?: Array<string>;
949
+ /** edge modules */
950
+ backend?: EndpointBackendMutate;
951
+ ipRestriction?: EndpointIPPolicyMutate;
952
+ mutualTls?: EndpointMutualTLSMutate;
953
+ tlsTermination?: EndpointTLSTermination;
954
+ }
955
+ export interface TLSEdge {
956
+ /** unique identifier of this edge */
957
+ id: string;
958
+ /** human-readable description of what this edge will be used for; optional, max 255 bytes. */
608
959
  description: string;
609
- /** A list of protocol-specific fields you want to collect on each event. */
610
- fields: Array<string>;
611
- /** The protocol that determines which events will be collected. Supported values are `tcp_connection_closed` and `http_request_complete`. */
612
- eventType: string;
613
- /** A list of Event Destination IDs which should be used for this Event Stream. Event Streams are required to have at least one Event Destination. */
614
- destinationIds: Array<string>;
615
- /** The percentage of all events you would like to capture. Valid values range from 0.01, representing 1% of all events to 1.00, representing 100% of all events. */
616
- samplingRate: number;
960
+ /** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
961
+ metadata: string;
962
+ /** timestamp when the edge configuration was created, RFC 3339 format */
963
+ createdAt: string;
964
+ /** URI of the edge API resource */
965
+ uri: string;
966
+ /** hostports served by this edge */
967
+ hostports?: Array<string>;
968
+ /** edge modules */
969
+ backend?: EndpointBackend;
970
+ ipRestriction?: EndpointIPPolicy;
971
+ mutualTls?: EndpointMutualTLS;
972
+ tlsTermination?: EndpointTLSTermination;
973
+ }
974
+ export interface Endpoint {
975
+ /** unique endpoint resource identifier */
976
+ id: string;
977
+ /** identifier of the region this endpoint belongs to */
978
+ region: string;
979
+ /** timestamp when the endpoint was created in RFC 3339 format */
980
+ createdAt: string;
981
+ /** timestamp when the endpoint was updated in RFC 3339 format */
982
+ updatedAt: string;
983
+ /** URL of the hostport served by this endpoint */
984
+ publicUrl: string;
985
+ /** protocol served by this endpoint. one of `http`, `https`, `tcp`, or `tls` */
986
+ proto: string;
987
+ /** hostport served by this endpoint (hostname:port) */
988
+ hostport: string;
989
+ /** whether the endpoint is `ephemeral` (served directly by an agent-initiated tunnel) or `edge` (served by an edge) */
990
+ type: string;
991
+ /** user-supplied metadata of the associated tunnel or edge object */
992
+ metadata: string;
993
+ /** the domain reserved for this endpoint */
994
+ domain?: Ref;
995
+ /** the address reserved for this endpoint */
996
+ tcpAddr?: Ref;
997
+ /** the tunnel serving requests to this endpoint, if this is an ephemeral endpoint */
998
+ tunnel?: Ref;
999
+ /** the edge serving requests to this endpoint, if this is an edge endpoint */
1000
+ edge?: Ref;
1001
+ }
1002
+ export interface EndpointList {
1003
+ /** the list of all active endpoints on this account */
1004
+ endpoints: Array<Endpoint>;
1005
+ /** URI of the endpoints list API resource */
1006
+ uri: string;
1007
+ /** URI of the next page, or null if there is no next page */
1008
+ nextPageUri?: string;
617
1009
  }
618
1010
  export interface EventDestinationCreate {
619
1011
  /** Arbitrary user-defined machine-readable data of this Event Destination. Optional, max 4096 bytes. */
@@ -710,7 +1102,7 @@ export interface EventSubscriptionCreate {
710
1102
  description: string;
711
1103
  /** Sources containing the types for which this event subscription will trigger */
712
1104
  sources: Array<EventSourceReplace>;
713
- /** A list of Event Destination IDs which should be used for this Event Stream. Event Streams are required to have at least one Event Destination. */
1105
+ /** A list of Event Destination IDs which should be used for this Event Subscription. */
714
1106
  destinationIds: Array<string>;
715
1107
  }
716
1108
  export interface EventSubscriptionUpdate {
@@ -722,7 +1114,7 @@ export interface EventSubscriptionUpdate {
722
1114
  description?: string;
723
1115
  /** Sources containing the types for which this event subscription will trigger */
724
1116
  sources?: Array<EventSourceReplace>;
725
- /** A list of Event Destination IDs which should be used for this Event Stream. Event Streams are required to have at least one Event Destination. */
1117
+ /** A list of Event Destination IDs which should be used for this Event Subscription. */
726
1118
  destinationIds?: Array<string>;
727
1119
  }
728
1120
  export interface EventSubscriptionList {
@@ -794,8 +1186,6 @@ export interface IPPolicyCreate {
794
1186
  description: string;
795
1187
  /** arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes. */
796
1188
  metadata: string;
797
- /** the IP policy action. Supported values are `allow` or `deny` */
798
- action: string;
799
1189
  }
800
1190
  export interface IPPolicyUpdate {
801
1191
  id: string;
@@ -815,8 +1205,6 @@ export interface IPPolicy {
815
1205
  description: string;
816
1206
  /** arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes. */
817
1207
  metadata: string;
818
- /** the IP policy action. Supported values are `allow` or `deny` */
819
- action: string;
820
1208
  }
821
1209
  export interface IPPolicyList {
822
1210
  /** the list of all IP policies on this account */
@@ -835,6 +1223,8 @@ export interface IPPolicyRuleCreate {
835
1223
  cidr: string;
836
1224
  /** ID of the IP policy this IP policy rule will be attached to */
837
1225
  ipPolicyId: string;
1226
+ /** the action to apply to the policy rule, either `allow` or `deny` */
1227
+ action?: string;
838
1228
  }
839
1229
  export interface IPPolicyRuleUpdate {
840
1230
  id: string;
@@ -860,6 +1250,8 @@ export interface IPPolicyRule {
860
1250
  cidr: string;
861
1251
  /** object describing the IP policy this IP Policy Rule belongs to */
862
1252
  ipPolicy: Ref;
1253
+ /** the action to apply to the policy rule, either `allow` or `deny` */
1254
+ action: string;
863
1255
  }
864
1256
  export interface IPPolicyRuleList {
865
1257
  /** the list of all IP policy rules on this account */
@@ -918,54 +1310,6 @@ export interface IPRestrictionList {
918
1310
  /** URI of the next page, or null if there is no next page */
919
1311
  nextPageUri?: string;
920
1312
  }
921
- export interface EndpointLoggingReplace {
922
- id: string;
923
- module: EndpointLoggingMutate;
924
- }
925
- export interface EndpointCircuitBreakerReplace {
926
- id: string;
927
- module: EndpointCircuitBreaker;
928
- }
929
- export interface EndpointCompressionReplace {
930
- id: string;
931
- module: EndpointCompression;
932
- }
933
- export interface EndpointTLSTerminationReplace {
934
- id: string;
935
- module: EndpointTLSTermination;
936
- }
937
- export interface EndpointIPPolicyReplace {
938
- id: string;
939
- module: EndpointIPPolicyMutate;
940
- }
941
- export interface EndpointMutualTLSReplace {
942
- id: string;
943
- module: EndpointMutualTLSMutate;
944
- }
945
- export interface EndpointRequestHeadersReplace {
946
- id: string;
947
- module: EndpointRequestHeaders;
948
- }
949
- export interface EndpointResponseHeadersReplace {
950
- id: string;
951
- module: EndpointResponseHeaders;
952
- }
953
- export interface EndpointOAuthReplace {
954
- id: string;
955
- module: EndpointOAuth;
956
- }
957
- export interface EndpointWebhookValidationReplace {
958
- id: string;
959
- module: EndpointWebhookValidation;
960
- }
961
- export interface EndpointSAMLReplace {
962
- id: string;
963
- module: EndpointSAMLMutate;
964
- }
965
- export interface EndpointOIDCReplace {
966
- id: string;
967
- module: EndpointOIDC;
968
- }
969
1313
  export interface ReservedAddrCreate {
970
1314
  /** human-readable description of what this reserved address will be used for */
971
1315
  description: string;
@@ -973,8 +1317,6 @@ export interface ReservedAddrCreate {
973
1317
  metadata: string;
974
1318
  /** reserve the address in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa) */
975
1319
  region: string;
976
- /** ID of an endpoint configuration of type tcp that will be used to handle inbound traffic to this address */
977
- endpointConfigurationId?: string;
978
1320
  }
979
1321
  export interface ReservedAddrUpdate {
980
1322
  id: string;
@@ -982,8 +1324,6 @@ export interface ReservedAddrUpdate {
982
1324
  description?: string;
983
1325
  /** arbitrary user-defined machine-readable data of this reserved address. Optional, max 4096 bytes. */
984
1326
  metadata?: string;
985
- /** ID of an endpoint configuration of type tcp that will be used to handle inbound traffic to this address */
986
- endpointConfigurationId?: string;
987
1327
  }
988
1328
  export interface ReservedAddr {
989
1329
  /** unique reserved address resource identifier */
@@ -1000,8 +1340,6 @@ export interface ReservedAddr {
1000
1340
  addr: string;
1001
1341
  /** reserve the address in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa) */
1002
1342
  region: string;
1003
- /** object reference to the endpoint configuration that will be applied to traffic to this address */
1004
- endpointConfiguration?: Ref;
1005
1343
  }
1006
1344
  export interface ReservedAddrList {
1007
1345
  /** the list of all reserved addresses on this account */
@@ -1020,10 +1358,6 @@ export interface ReservedDomainCreate {
1020
1358
  description: string;
1021
1359
  /** arbitrary user-defined machine-readable data of this reserved domain. Optional, max 4096 bytes. */
1022
1360
  metadata: string;
1023
- /** ID of an endpoint configuration of type http that will be used to handle inbound http traffic to this domain */
1024
- httpEndpointConfigurationId?: string;
1025
- /** ID of an endpoint configuration of type https that will be used to handle inbound https traffic to this domain */
1026
- httpsEndpointConfigurationId?: string;
1027
1361
  /** ID of a user-uploaded TLS certificate to use for connections to targeting this domain. Optional, mutually exclusive with `certificate_management_policy`. */
1028
1362
  certificateId?: string;
1029
1363
  /** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled. Optional, mutually exclusive with `certificate_id`. */
@@ -1035,10 +1369,6 @@ export interface ReservedDomainUpdate {
1035
1369
  description?: string;
1036
1370
  /** arbitrary user-defined machine-readable data of this reserved domain. Optional, max 4096 bytes. */
1037
1371
  metadata?: string;
1038
- /** ID of an endpoint configuration of type http that will be used to handle inbound http traffic to this domain */
1039
- httpEndpointConfigurationId?: string;
1040
- /** ID of an endpoint configuration of type https that will be used to handle inbound https traffic to this domain */
1041
- httpsEndpointConfigurationId?: string;
1042
1372
  /** ID of a user-uploaded TLS certificate to use for connections to targeting this domain. Optional, mutually exclusive with `certificate_management_policy`. */
1043
1373
  certificateId?: string;
1044
1374
  /** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled. Optional, mutually exclusive with `certificate_id`. */
@@ -1061,10 +1391,6 @@ export interface ReservedDomain {
1061
1391
  region: string;
1062
1392
  /** DNS CNAME target for a custom hostname, or null if the reserved domain is a subdomain of *.ngrok.io */
1063
1393
  cnameTarget?: string;
1064
- /** object referencing the endpoint configuration applied to http traffic on this domain */
1065
- httpEndpointConfiguration?: Ref;
1066
- /** object referencing the endpoint configuration applied to https traffic on this domain */
1067
- httpsEndpointConfiguration?: Ref;
1068
1394
  /** object referencing the TLS certificate used for connections to this domain. This can be either a user-uploaded certificate, the most recently issued automatic one, or null otherwise. */
1069
1395
  certificate?: Ref;
1070
1396
  /** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled */
@@ -1423,18 +1749,26 @@ export interface TunnelSessionsUpdate {
1423
1749
  export interface Tunnel {
1424
1750
  /** unique tunnel resource identifier */
1425
1751
  id: string;
1426
- /** URL of the tunnel's public endpoint */
1752
+ /** URL of the ephemeral tunnel's public endpoint */
1427
1753
  publicUrl: string;
1428
1754
  /** timestamp when the tunnel was initiated in RFC 3339 format */
1429
1755
  startedAt: string;
1430
1756
  /** user-supplied metadata for the tunnel defined in the ngrok configuration file. See the tunnel [metadata configuration option](https://ngrok.com/docs#tunnel-definitions-metadata) In API version 0, this value was instead pulled from the top-level [metadata configuration option](https://ngrok.com/docs#config_metadata). */
1431
1757
  metadata: string;
1432
- /** tunnel protocol. one of `http`, `https`, `tcp` or `tls` */
1758
+ /** tunnel protocol for ephemeral tunnels. one of `http`, `https`, `tcp` or `tls` */
1433
1759
  proto: string;
1434
1760
  /** identifier of tune region where the tunnel is running */
1435
1761
  region: string;
1436
1762
  /** reference object pointing to the tunnel session on which this tunnel was started */
1437
1763
  tunnelSession: Ref;
1764
+ /** the ephemeral endpoint this tunnel is associated with, if this is an agent-initiated tunnel */
1765
+ endpoint?: Ref;
1766
+ /** the labels the tunnel group backends will match against, if this is a backend tunnel */
1767
+ labels: Map<string, string>;
1768
+ /** tunnel group backends served by this backend tunnel */
1769
+ backends?: Array<Ref>;
1770
+ /** upstream address the ngrok agent forwards traffic over this tunnel to. this may be expressed as a URL or a network address. */
1771
+ forwardsTo: string;
1438
1772
  }
1439
1773
  export interface TunnelList {
1440
1774
  /** the list of all online tunnels on this account */