@ngrok/ngrok-api 0.2.0 → 0.8.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 (244) hide show
  1. package/README.md +0 -28
  2. package/docs/CNAME +1 -0
  3. package/docs/assets/js/search.js +1 -1
  4. package/docs/classes/client.Ngrok.html +204 -119
  5. package/docs/classes/services.APIKeys.html +6 -105
  6. package/docs/classes/services.AbuseReports.html +3 -102
  7. package/docs/classes/{services.IPWhitelist.html → services.AgentIngresses.html} +41 -148
  8. package/docs/classes/services.CertificateAuthorities.html +6 -105
  9. package/docs/classes/services.Credentials.html +6 -105
  10. package/docs/classes/services.EdgeRouteBackendModule.html +270 -0
  11. package/docs/classes/services.EdgeRouteCircuitBreakerModule.html +270 -0
  12. package/docs/classes/services.EdgeRouteCompressionModule.html +270 -0
  13. package/docs/classes/services.EdgeRouteIPRestrictionModule.html +270 -0
  14. package/docs/classes/services.EdgeRouteOAuthModule.html +270 -0
  15. package/docs/classes/services.EdgeRouteOIDCModule.html +270 -0
  16. package/docs/classes/{services.EndpointResponseHeadersModule.html → services.EdgeRouteRequestHeadersModule.html} +28 -127
  17. package/docs/classes/services.EdgeRouteResponseHeadersModule.html +270 -0
  18. package/docs/classes/services.EdgeRouteSAMLModule.html +270 -0
  19. package/docs/classes/services.EdgeRouteWebhookVerificationModule.html +270 -0
  20. package/docs/classes/services.EdgeRouteWebsocketTCPConverterModule.html +270 -0
  21. package/docs/classes/services.EdgesHTTPS.html +343 -0
  22. package/docs/classes/services.EdgesHTTPSRoutes.html +317 -0
  23. package/docs/classes/services.EdgesTCP.html +343 -0
  24. package/docs/classes/services.EdgesTLS.html +343 -0
  25. package/docs/classes/services.Endpoints.html +256 -0
  26. package/docs/classes/services.EventDestinations.html +7 -106
  27. package/docs/classes/services.EventSources.html +6 -105
  28. package/docs/classes/services.EventSubscriptions.html +6 -105
  29. package/docs/classes/{services.EventStreams.html → services.FailoverBackends.html} +51 -140
  30. package/docs/classes/services.HTTPResponseBackends.html +318 -0
  31. package/docs/classes/{services.EndpointMutualTLSModule.html → services.HTTPSEdgeMutualTLSModule.html} +22 -121
  32. package/docs/classes/{services.EndpointTLSTerminationModule.html → services.HTTPSEdgeTLSTerminationModule.html} +22 -121
  33. package/docs/classes/services.IPPolicies.html +6 -105
  34. package/docs/classes/services.IPPolicyRules.html +6 -105
  35. package/docs/classes/services.IPRestrictions.html +7 -106
  36. package/docs/classes/services.ReservedAddrs.html +6 -137
  37. package/docs/classes/services.ReservedDomains.html +8 -171
  38. package/docs/classes/services.SSHCertificateAuthorities.html +6 -105
  39. package/docs/classes/services.SSHCredentials.html +6 -105
  40. package/docs/classes/services.SSHHostCertificates.html +6 -105
  41. package/docs/classes/services.SSHUserCertificates.html +6 -105
  42. package/docs/classes/{services.EndpointSAMLModule.html → services.TCPEdgeBackendModule.html} +25 -124
  43. package/docs/classes/{services.EndpointIPPolicyModule.html → services.TCPEdgeIPRestrictionModule.html} +22 -121
  44. package/docs/classes/services.TLSCertificates.html +6 -105
  45. package/docs/classes/{services.EndpointLoggingModule.html → services.TLSEdgeBackendModule.html} +25 -124
  46. package/docs/classes/{services.EndpointOIDCModule.html → services.TLSEdgeIPRestrictionModule.html} +25 -124
  47. package/docs/classes/{services.EndpointOAuthModule.html → services.TLSEdgeMutualTLSModule.html} +25 -124
  48. package/docs/classes/services.TLSEdgeTLSTerminationModule.html +270 -0
  49. package/docs/classes/services.TunnelGroupBackends.html +351 -0
  50. package/docs/classes/services.TunnelSessions.html +6 -105
  51. package/docs/classes/services.Tunnels.html +34 -101
  52. package/docs/classes/services.WeightedBackends.html +353 -0
  53. package/docs/index.html +0 -27
  54. package/docs/interfaces/client.NgrokConfig.html +2 -2
  55. package/docs/interfaces/datatypes.APIKey.html +6 -6
  56. package/docs/interfaces/datatypes.APIKeyCreate.html +2 -2
  57. package/docs/interfaces/datatypes.APIKeyList.html +3 -3
  58. package/docs/interfaces/datatypes.APIKeyUpdate.html +3 -3
  59. package/docs/interfaces/datatypes.AWSAuth.html +2 -2
  60. package/docs/interfaces/datatypes.AWSCredentials.html +2 -2
  61. package/docs/interfaces/datatypes.AWSRole.html +1 -1
  62. package/docs/interfaces/datatypes.AbuseReport.html +7 -7
  63. package/docs/interfaces/datatypes.AbuseReportCreate.html +2 -2
  64. package/docs/interfaces/datatypes.AbuseReportHostname.html +2 -2
  65. package/docs/interfaces/{datatypes.EventStream.html → datatypes.AgentIngress.html} +52 -71
  66. package/docs/interfaces/datatypes.AgentIngressCreate.html +205 -0
  67. package/docs/interfaces/datatypes.AgentIngressList.html +205 -0
  68. package/docs/interfaces/{datatypes.IPWhitelistEntryUpdate.html → datatypes.AgentIngressUpdate.html} +16 -16
  69. package/docs/interfaces/datatypes.CertificateAuthority.html +11 -11
  70. package/docs/interfaces/datatypes.CertificateAuthorityCreate.html +3 -3
  71. package/docs/interfaces/datatypes.CertificateAuthorityList.html +3 -3
  72. package/docs/interfaces/datatypes.CertificateAuthorityUpdate.html +3 -3
  73. package/docs/interfaces/datatypes.Credential.html +7 -7
  74. package/docs/interfaces/datatypes.CredentialCreate.html +3 -3
  75. package/docs/interfaces/datatypes.CredentialList.html +3 -3
  76. package/docs/interfaces/datatypes.CredentialUpdate.html +4 -4
  77. package/docs/interfaces/{datatypes.EndpointCircuitBreakerReplace.html → datatypes.EdgeBackendReplace.html} +12 -12
  78. package/docs/interfaces/{datatypes.EndpointIPPolicyReplace.html → datatypes.EdgeIPRestrictionReplace.html} +11 -11
  79. package/docs/interfaces/{datatypes.EndpointMutualTLSReplace.html → datatypes.EdgeMutualTLSReplace.html} +11 -11
  80. package/docs/interfaces/datatypes.EdgeRouteBackendReplace.html +190 -0
  81. package/docs/interfaces/datatypes.EdgeRouteCircuitBreakerReplace.html +190 -0
  82. package/docs/interfaces/{datatypes.EndpointCompressionReplace.html → datatypes.EdgeRouteCompressionReplace.html} +25 -11
  83. package/docs/interfaces/datatypes.EdgeRouteIPRestrictionReplace.html +190 -0
  84. package/docs/interfaces/{datatypes.ReservedDomainCertNSTarget.html → datatypes.EdgeRouteItem.html} +19 -19
  85. package/docs/interfaces/{datatypes.EndpointOAuthReplace.html → datatypes.EdgeRouteOAuthReplace.html} +25 -11
  86. package/docs/interfaces/datatypes.EdgeRouteOIDCReplace.html +190 -0
  87. package/docs/interfaces/{datatypes.EndpointRequestHeadersReplace.html → datatypes.EdgeRouteRequestHeadersReplace.html} +25 -11
  88. package/docs/interfaces/datatypes.EdgeRouteResponseHeadersReplace.html +190 -0
  89. package/docs/interfaces/{datatypes.EndpointSAMLReplace.html → datatypes.EdgeRouteSAMLReplace.html} +25 -11
  90. package/docs/interfaces/{datatypes.EndpointWebhookValidationReplace.html → datatypes.EdgeRouteWebhookVerificationReplace.html} +25 -11
  91. package/docs/interfaces/datatypes.EdgeRouteWebsocketTCPConverterReplace.html +190 -0
  92. package/docs/interfaces/{datatypes.EndpointResponseHeadersReplace.html → datatypes.EdgeTLSTerminationAtEdgeReplace.html} +12 -12
  93. package/docs/interfaces/{datatypes.EndpointTLSTerminationReplace.html → datatypes.EdgeTLSTerminationReplace.html} +11 -11
  94. package/docs/interfaces/datatypes.Endpoint.html +395 -0
  95. package/docs/interfaces/{datatypes.EndpointLogging.html → datatypes.EndpointBackend.html} +19 -19
  96. package/docs/interfaces/{datatypes.EndpointLoggingMutate.html → datatypes.EndpointBackendMutate.html} +19 -19
  97. package/docs/interfaces/datatypes.EndpointCircuitBreaker.html +6 -6
  98. package/docs/interfaces/datatypes.EndpointCompression.html +1 -1
  99. package/docs/interfaces/datatypes.EndpointIPPolicy.html +2 -2
  100. package/docs/interfaces/datatypes.EndpointIPPolicyMutate.html +2 -2
  101. package/docs/interfaces/{datatypes.EndpointConfigurationList.html → datatypes.EndpointList.html} +19 -19
  102. package/docs/interfaces/datatypes.EndpointMutualTLS.html +2 -2
  103. package/docs/interfaces/datatypes.EndpointMutualTLSMutate.html +2 -2
  104. package/docs/interfaces/datatypes.EndpointOAuth.html +7 -7
  105. package/docs/interfaces/datatypes.EndpointOAuthFacebook.html +5 -5
  106. package/docs/interfaces/datatypes.EndpointOAuthGitHub.html +7 -7
  107. package/docs/interfaces/datatypes.EndpointOAuthGoogle.html +5 -5
  108. package/docs/interfaces/datatypes.EndpointOAuthMicrosoft.html +5 -5
  109. package/docs/interfaces/datatypes.EndpointOAuthProvider.html +4 -4
  110. package/docs/interfaces/datatypes.EndpointOIDC.html +9 -9
  111. package/docs/interfaces/datatypes.EndpointRequestHeaders.html +3 -3
  112. package/docs/interfaces/datatypes.EndpointResponseHeaders.html +3 -3
  113. package/docs/interfaces/datatypes.EndpointSAML.html +33 -14
  114. package/docs/interfaces/datatypes.EndpointSAMLMutate.html +28 -9
  115. package/docs/interfaces/datatypes.EndpointTLSTermination.html +3 -3
  116. package/docs/interfaces/datatypes.EndpointTLSTerminationAtEdge.html +186 -0
  117. package/docs/interfaces/datatypes.EndpointWebhookValidation.html +4 -4
  118. package/docs/interfaces/{datatypes.EndpointOIDCReplace.html → datatypes.EndpointWebsocketTCPConverter.html} +16 -25
  119. package/docs/interfaces/datatypes.Error.html +4 -4
  120. package/docs/interfaces/datatypes.EventDestination.html +7 -7
  121. package/docs/interfaces/datatypes.EventDestinationCreate.html +4 -4
  122. package/docs/interfaces/datatypes.EventDestinationList.html +3 -3
  123. package/docs/interfaces/datatypes.EventDestinationUpdate.html +5 -5
  124. package/docs/interfaces/datatypes.EventSource.html +2 -2
  125. package/docs/interfaces/datatypes.EventSourceCreate.html +2 -2
  126. package/docs/interfaces/datatypes.EventSourceItem.html +2 -2
  127. package/docs/interfaces/datatypes.EventSourceList.html +2 -2
  128. package/docs/interfaces/datatypes.EventSourcePaging.html +1 -1
  129. package/docs/interfaces/datatypes.EventSourceReplace.html +1 -1
  130. package/docs/interfaces/datatypes.EventSourceUpdate.html +2 -2
  131. package/docs/interfaces/datatypes.EventSubscription.html +7 -7
  132. package/docs/interfaces/datatypes.EventSubscriptionCreate.html +5 -5
  133. package/docs/interfaces/datatypes.EventSubscriptionList.html +3 -3
  134. package/docs/interfaces/datatypes.EventSubscriptionUpdate.html +6 -6
  135. package/docs/interfaces/datatypes.EventTarget.html +3 -3
  136. package/docs/interfaces/datatypes.EventTargetCloudwatchLogs.html +2 -2
  137. package/docs/interfaces/datatypes.EventTargetFirehose.html +2 -2
  138. package/docs/interfaces/datatypes.EventTargetKinesis.html +2 -2
  139. package/docs/interfaces/{datatypes.IPWhitelistEntry.html → datatypes.FailoverBackend.html} +41 -41
  140. package/docs/interfaces/{datatypes.IPWhitelistEntryCreate.html → datatypes.FailoverBackendCreate.html} +23 -23
  141. package/docs/interfaces/datatypes.FailoverBackendList.html +205 -0
  142. package/docs/interfaces/datatypes.FailoverBackendUpdate.html +219 -0
  143. package/docs/interfaces/datatypes.HTTPResponseBackend.html +295 -0
  144. package/docs/interfaces/datatypes.HTTPResponseBackendCreate.html +243 -0
  145. package/docs/interfaces/datatypes.HTTPResponseBackendList.html +190 -0
  146. package/docs/interfaces/datatypes.HTTPResponseBackendUpdate.html +257 -0
  147. package/docs/interfaces/datatypes.HTTPSEdge.html +314 -0
  148. package/docs/interfaces/datatypes.HTTPSEdgeCreate.html +238 -0
  149. package/docs/interfaces/datatypes.HTTPSEdgeList.html +205 -0
  150. package/docs/interfaces/{datatypes.EndpointConfigurationUpdate.html → datatypes.HTTPSEdgeRoute.html} +154 -78
  151. package/docs/interfaces/{datatypes.EndpointConfigurationCreate.html → datatypes.HTTPSEdgeRouteCreate.html} +108 -89
  152. package/docs/interfaces/{datatypes.EndpointConfiguration.html → datatypes.HTTPSEdgeRouteUpdate.html} +104 -123
  153. package/docs/interfaces/datatypes.HTTPSEdgeUpdate.html +257 -0
  154. package/docs/interfaces/datatypes.IPPolicy.html +5 -24
  155. package/docs/interfaces/datatypes.IPPolicyCreate.html +2 -21
  156. package/docs/interfaces/datatypes.IPPolicyList.html +3 -3
  157. package/docs/interfaces/datatypes.IPPolicyRule.html +26 -7
  158. package/docs/interfaces/datatypes.IPPolicyRuleCreate.html +23 -4
  159. package/docs/interfaces/datatypes.IPPolicyRuleList.html +3 -3
  160. package/docs/interfaces/datatypes.IPPolicyRuleUpdate.html +4 -4
  161. package/docs/interfaces/datatypes.IPPolicyUpdate.html +3 -3
  162. package/docs/interfaces/datatypes.IPRestriction.html +8 -8
  163. package/docs/interfaces/datatypes.IPRestrictionCreate.html +5 -5
  164. package/docs/interfaces/datatypes.IPRestrictionList.html +3 -3
  165. package/docs/interfaces/datatypes.IPRestrictionUpdate.html +5 -5
  166. package/docs/interfaces/datatypes.Item.html +1 -1
  167. package/docs/interfaces/datatypes.Paging.html +2 -2
  168. package/docs/interfaces/datatypes.Ref.html +2 -2
  169. package/docs/interfaces/datatypes.ReservedAddr.html +7 -26
  170. package/docs/interfaces/datatypes.ReservedAddrCreate.html +3 -22
  171. package/docs/interfaces/datatypes.ReservedAddrList.html +3 -3
  172. package/docs/interfaces/datatypes.ReservedAddrUpdate.html +3 -22
  173. package/docs/interfaces/datatypes.ReservedDomain.html +30 -49
  174. package/docs/interfaces/datatypes.ReservedDomainCertJob.html +4 -23
  175. package/docs/interfaces/datatypes.ReservedDomainCertPolicy.html +2 -2
  176. package/docs/interfaces/datatypes.ReservedDomainCertStatus.html +2 -2
  177. package/docs/interfaces/datatypes.ReservedDomainCreate.html +6 -44
  178. package/docs/interfaces/datatypes.ReservedDomainList.html +3 -3
  179. package/docs/interfaces/datatypes.ReservedDomainUpdate.html +5 -43
  180. package/docs/interfaces/datatypes.SSHCertificateAuthority.html +7 -7
  181. package/docs/interfaces/datatypes.SSHCertificateAuthorityCreate.html +5 -5
  182. package/docs/interfaces/datatypes.SSHCertificateAuthorityList.html +3 -3
  183. package/docs/interfaces/datatypes.SSHCertificateAuthorityUpdate.html +3 -3
  184. package/docs/interfaces/datatypes.SSHCredential.html +7 -7
  185. package/docs/interfaces/datatypes.SSHCredentialCreate.html +4 -4
  186. package/docs/interfaces/datatypes.SSHCredentialList.html +3 -3
  187. package/docs/interfaces/datatypes.SSHCredentialUpdate.html +4 -4
  188. package/docs/interfaces/datatypes.SSHHostCertificate.html +12 -12
  189. package/docs/interfaces/datatypes.SSHHostCertificateCreate.html +7 -7
  190. package/docs/interfaces/datatypes.SSHHostCertificateList.html +3 -3
  191. package/docs/interfaces/datatypes.SSHHostCertificateUpdate.html +3 -3
  192. package/docs/interfaces/datatypes.SSHUserCertificate.html +14 -14
  193. package/docs/interfaces/datatypes.SSHUserCertificateCreate.html +9 -9
  194. package/docs/interfaces/datatypes.SSHUserCertificateList.html +3 -3
  195. package/docs/interfaces/datatypes.SSHUserCertificateUpdate.html +3 -3
  196. package/docs/interfaces/datatypes.TCPEdge.html +295 -0
  197. package/docs/interfaces/datatypes.TCPEdgeCreate.html +238 -0
  198. package/docs/interfaces/{datatypes.IPWhitelistEntryList.html → datatypes.TCPEdgeList.html} +22 -22
  199. package/docs/interfaces/{datatypes.EventStreamUpdate.html → datatypes.TCPEdgeUpdate.html} +43 -48
  200. package/docs/interfaces/datatypes.TLSCertificate.html +21 -21
  201. package/docs/interfaces/datatypes.TLSCertificateCreate.html +4 -4
  202. package/docs/interfaces/datatypes.TLSCertificateList.html +3 -3
  203. package/docs/interfaces/datatypes.TLSCertificateSANs.html +2 -2
  204. package/docs/interfaces/datatypes.TLSCertificateUpdate.html +3 -3
  205. package/docs/interfaces/datatypes.TLSEdge.html +323 -0
  206. package/docs/interfaces/datatypes.TLSEdgeCreate.html +266 -0
  207. package/docs/interfaces/{datatypes.EventStreamList.html → datatypes.TLSEdgeList.html} +23 -23
  208. package/docs/interfaces/datatypes.TLSEdgeUpdate.html +285 -0
  209. package/docs/interfaces/datatypes.Tunnel.html +85 -9
  210. package/docs/interfaces/datatypes.TunnelGroupBackend.html +281 -0
  211. package/docs/interfaces/datatypes.TunnelGroupBackendCreate.html +205 -0
  212. package/docs/interfaces/datatypes.TunnelGroupBackendList.html +205 -0
  213. package/docs/interfaces/datatypes.TunnelGroupBackendUpdate.html +219 -0
  214. package/docs/interfaces/datatypes.TunnelList.html +3 -3
  215. package/docs/interfaces/datatypes.TunnelSession.html +10 -10
  216. package/docs/interfaces/datatypes.TunnelSessionList.html +3 -3
  217. package/docs/interfaces/datatypes.TunnelSessionsUpdate.html +1 -1
  218. package/docs/interfaces/{datatypes.EventStreamCreate.html → datatypes.WeightedBackend.html} +44 -44
  219. package/docs/interfaces/datatypes.WeightedBackendCreate.html +205 -0
  220. package/docs/interfaces/datatypes.WeightedBackendList.html +205 -0
  221. package/docs/interfaces/datatypes.WeightedBackendUpdate.html +219 -0
  222. package/docs/modules/datatypes.html +213 -89
  223. package/docs/modules/services.html +89 -33
  224. package/lib/client.d.ts +54 -24
  225. package/lib/client.d.ts.map +1 -1
  226. package/lib/client.js +45 -22
  227. package/lib/client.js.map +1 -1
  228. package/lib/datatypes.d.ts +617 -281
  229. package/lib/datatypes.d.ts.map +1 -1
  230. package/lib/services.d.ts +385 -169
  231. package/lib/services.d.ts.map +1 -1
  232. package/lib/services.js +1432 -597
  233. package/lib/services.js.map +1 -1
  234. package/package.json +2 -2
  235. package/src/client.ts +98 -45
  236. package/src/datatypes.ts +669 -302
  237. package/src/services.ts +1426 -610
  238. package/docs/classes/services.EndpointCircuitBreakerModule.html +0 -369
  239. package/docs/classes/services.EndpointCompressionModule.html +0 -369
  240. package/docs/classes/services.EndpointConfigurations.html +0 -451
  241. package/docs/classes/services.EndpointRequestHeadersModule.html +0 -369
  242. package/docs/classes/services.EndpointWebhookValidationModule.html +0 -369
  243. package/docs/interfaces/datatypes.EndpointLoggingReplace.html +0 -176
  244. package/test/endpointConfigurations.test.js +0 -67
@@ -48,6 +48,47 @@ export interface AbuseReportCreate {
48
48
  /** arbitrary user-defined data about this abuse report. Optional, max 4096 bytes. */
49
49
  metadata: string;
50
50
  }
51
+ export interface AgentIngressCreate {
52
+ /** human-readable description of the use of this Agent Ingress. optional, max 255 bytes. */
53
+ description: string;
54
+ /** arbitrary user-defined machine-readable data of this Agent Ingress. optional, max 4096 bytes */
55
+ metadata: string;
56
+ /** the domain that you own to be used as the base domain name to generate regional agent ingress domains. */
57
+ domain: string;
58
+ }
59
+ export interface AgentIngressUpdate {
60
+ id: string;
61
+ /** human-readable description of the use of this Agent Ingress. optional, max 255 bytes. */
62
+ description?: string;
63
+ /** arbitrary user-defined machine-readable data of this Agent Ingress. optional, max 4096 bytes */
64
+ metadata?: string;
65
+ }
66
+ export interface AgentIngress {
67
+ /** unique Agent Ingress resource identifier */
68
+ id: string;
69
+ /** URI to the API resource of this Agent ingress */
70
+ uri: string;
71
+ /** human-readable description of the use of this Agent Ingress. optional, max 255 bytes. */
72
+ description: string;
73
+ /** arbitrary user-defined machine-readable data of this Agent Ingress. optional, max 4096 bytes */
74
+ metadata: string;
75
+ /** the domain that you own to be used as the base domain name to generate regional agent ingress domains. */
76
+ domain: string;
77
+ /** a list of target values to use as the values of NS records for the domain property these values will delegate control over the domain to ngrok */
78
+ nsTargets: Array<string>;
79
+ /** a list of regional agent ingress domains that are subdomains of the value of domain this value may increase over time as ngrok adds more regions */
80
+ regionDomains: Array<string>;
81
+ /** timestamp when the Agent Ingress was created, RFC 3339 format */
82
+ createdAt: string;
83
+ }
84
+ export interface AgentIngressList {
85
+ /** the list of Agent Ingresses owned by this account */
86
+ ingresses: Array<AgentIngress>;
87
+ /** URI of the Agent Ingress list API resource */
88
+ uri: string;
89
+ /** URI of the next page, or null if there is no next page */
90
+ nextPageUri?: string;
91
+ }
51
92
  export interface APIKeyCreate {
52
93
  /** human-readable description of what uses the API key to authenticate. optional, max 255 bytes. */
53
94
  description: string;
@@ -83,6 +124,172 @@ export interface APIKeyList {
83
124
  /** URI of the next page, or null if there is no next page */
84
125
  nextPageUri?: string;
85
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
+ }
86
293
  export interface CertificateAuthorityCreate {
87
294
  /** human-readable description of this Certificate Authority. optional, max 255 bytes. */
88
295
  description: string;
@@ -171,120 +378,10 @@ export interface CredentialList {
171
378
  /** URI of the next page, or null if there is no next page */
172
379
  nextPageUri?: string;
173
380
  }
174
- export interface EndpointConfiguration {
175
- /** unique identifier of this endpoint configuration */
176
- id: string;
177
- /** they type of traffic this endpoint configuration can be applied to. one of: `http`, `https`, `tcp` */
178
- type: string;
179
- /** 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 */
180
- description: string;
181
- /** arbitrary user-defined machine-readable data of this endpoint configuration. Optional, max 4096 bytes. */
182
- metadata: string;
183
- /** timestamp when the endpoint configuration was created, RFC 3339 format */
184
- createdAt: string;
185
- /** URI of the endpoint configuration API resource */
186
- uri: string;
187
- /** circuit breaker module configuration or `null` */
188
- circuitBreaker?: EndpointCircuitBreaker;
189
- /** compression module configuration or `null` */
190
- compression?: EndpointCompression;
191
- /** request headers module configuration or `null` */
192
- requestHeaders?: EndpointRequestHeaders;
193
- /** response headers module configuration or `null` */
194
- responseHeaders?: EndpointResponseHeaders;
195
- /** ip policy module configuration or `null` */
196
- ipPolicy?: EndpointIPPolicy;
197
- /** mutual TLS module configuration or `null` */
198
- mutualTls?: EndpointMutualTLS;
199
- /** TLS termination module configuration or `null` */
200
- tlsTermination?: EndpointTLSTermination;
201
- /** webhook validation module configuration or `null` */
202
- webhookValidation?: EndpointWebhookValidation;
203
- /** oauth module configuration or `null` */
204
- oauth?: EndpointOAuth;
205
- /** logging module configuration or `null` */
206
- logging?: EndpointLogging;
207
- /** saml module configuration or `null` */
208
- saml?: EndpointSAML;
209
- /** oidc module configuration or `null` */
210
- oidc?: EndpointOIDC;
211
- }
212
- export interface EndpointConfigurationList {
213
- /** the list of all endpoint configurations on this account */
214
- endpointConfigurations: Array<EndpointConfiguration>;
215
- /** URI of the endpoint configurations list API resource */
216
- uri: string;
217
- /** URI of the next page, or null if there is no next page */
218
- nextPageUri?: string;
219
- }
220
- export interface EndpointConfigurationUpdate {
221
- /** unique identifier of this endpoint configuration */
222
- id: string;
223
- /** 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 */
224
- description?: string;
225
- /** arbitrary user-defined machine-readable data of this endpoint configuration. Optional, max 4096 bytes. */
226
- metadata?: string;
227
- /** circuit breaker module configuration or `null` */
228
- circuitBreaker?: EndpointCircuitBreaker;
229
- /** compression module configuration or `null` */
230
- compression?: EndpointCompression;
231
- /** request headers module configuration or `null` */
232
- requestHeaders?: EndpointRequestHeaders;
233
- /** response headers module configuration or `null` */
234
- responseHeaders?: EndpointResponseHeaders;
235
- /** ip policy module configuration or `null` */
236
- ipPolicy?: EndpointIPPolicyMutate;
237
- /** mutual TLS module configuration or `null` */
238
- mutualTls?: EndpointMutualTLSMutate;
239
- /** TLS termination module configuration or `null` */
240
- tlsTermination?: EndpointTLSTermination;
241
- /** webhook validation module configuration or `null` */
242
- webhookValidation?: EndpointWebhookValidation;
243
- /** oauth module configuration or `null` */
244
- oauth?: EndpointOAuth;
245
- /** logging module configuration or `null` */
246
- logging?: EndpointLoggingMutate;
247
- /** saml module configuration or `null` */
248
- saml?: EndpointSAMLMutate;
249
- /** oidc module configuration or `null` */
250
- oidc?: EndpointOIDC;
251
- }
252
- export interface EndpointConfigurationCreate {
253
- /** they type of traffic this endpoint configuration can be applied to. one of: `http`, `https`, `tcp` */
254
- type: string;
255
- /** 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 */
256
- description: string;
257
- /** arbitrary user-defined machine-readable data of this endpoint configuration. Optional, max 4096 bytes. */
258
- metadata: string;
259
- /** circuit breaker module configuration or `null` */
260
- circuitBreaker?: EndpointCircuitBreaker;
261
- /** compression module configuration or `null` */
262
- compression?: EndpointCompression;
263
- /** request headers module configuration or `null` */
264
- requestHeaders?: EndpointRequestHeaders;
265
- /** response headers module configuration or `null` */
266
- responseHeaders?: EndpointResponseHeaders;
267
- /** ip policy module configuration or `null` */
268
- ipPolicy?: EndpointIPPolicyMutate;
269
- /** mutual TLS module configuration or `null` */
270
- mutualTls?: EndpointMutualTLSMutate;
271
- /** TLS termination module configuration or `null` */
272
- tlsTermination?: EndpointTLSTermination;
273
- /** webhook validation module configuration or `null` */
274
- webhookValidation?: EndpointWebhookValidation;
275
- /** oauth module configuration or `null` */
276
- oauth?: EndpointOAuth;
277
- /** logging module configuration or `null` */
278
- logging?: EndpointLoggingMutate;
279
- /** saml module configuration or `null` */
280
- saml?: EndpointSAMLMutate;
281
- /** oidc module configuration or `null` */
282
- oidc?: EndpointOIDC;
283
- }
284
381
  export interface EndpointWebhookValidation {
285
382
  /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
286
383
  enabled?: boolean;
287
- /** 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`. */
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`. */
288
385
  provider: string;
289
386
  /** a string secret used to validate requests from the given provider. All providers except AWS SNS require a secret */
290
387
  secret: string;
@@ -313,17 +410,11 @@ export interface EndpointTLSTermination {
313
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`. */
314
411
  minVersion?: string;
315
412
  }
316
- export interface EndpointLogging {
317
- /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
318
- enabled?: boolean;
319
- /** list of all EventStreams that will be used to configure and export this endpoint's logs */
320
- eventStreams: Array<Ref>;
321
- }
322
- export interface EndpointLoggingMutate {
413
+ export interface EndpointTLSTerminationAtEdge {
323
414
  /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
324
415
  enabled?: boolean;
325
- /** list of all EventStreams that will be used to configure and export this endpoint's logs */
326
- 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;
327
418
  }
328
419
  export interface EndpointRequestHeaders {
329
420
  /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
@@ -473,6 +564,8 @@ export interface EndpointSAML {
473
564
  requestSigningCertificatePem: string;
474
565
  /** A public URL where the SP's metadata is hosted. If an IdP supports dynamic configuration, this is the URL it can use to retrieve the SP metadata. */
475
566
  metadataUrl: string;
567
+ /** Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value of `urn:oasis:names:tc:SAML:2.0:nameid-format:persistent` will be used. A subset of the allowed values enumerated by the SAML specification are supported. */
568
+ nameidFormat: string;
476
569
  }
477
570
  export interface EndpointSAMLMutate {
478
571
  /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
@@ -493,6 +586,8 @@ export interface EndpointSAMLMutate {
493
586
  allowIdpInitiated?: boolean;
494
587
  /** If present, only users who are a member of one of the listed groups may access the target endpoint. */
495
588
  authorizedGroups: Array<string>;
589
+ /** Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value of `urn:oasis:names:tc:SAML:2.0:nameid-format:persistent` will be used. A subset of the allowed values enumerated by the SAML specification are supported. */
590
+ nameidFormat: string;
496
591
  }
497
592
  export interface EndpointOIDC {
498
593
  /** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
@@ -514,61 +609,403 @@ export interface EndpointOIDC {
514
609
  /** The set of scopes to request from the OIDC identity provider. */
515
610
  scopes: Array<string>;
516
611
  }
517
- export interface EventStreamCreate {
518
- /** 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. */
519
644
  metadata: string;
520
- /** 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. */
521
678
  description: string;
522
- /** A list of protocol-specific fields you want to collect on each event. */
523
- fields: Array<string>;
524
- /** The protocol that determines which events will be collected. Supported values are `tcp_connection_closed` and `http_request_complete`. */
525
- eventType: string;
526
- /** 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. */
527
- destinationIds: Array<string>;
528
- /** 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. */
529
- 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;
530
703
  }
531
- export interface EventStreamUpdate {
532
- /** 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 */
533
708
  id: string;
534
- /** Arbitrary user-defined machine-readable data of this Event Stream. Optional, max 4096 bytes. */
535
- metadata?: string;
536
- /** Human-readable description of the Event Stream. Optional, max 255 bytes. */
537
- description?: string;
538
- /** A list of protocol-specific fields you want to collect on each event. */
539
- fields?: Array<string>;
540
- /** 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. */
541
- destinationIds?: Array<string>;
542
- /** 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. */
543
- 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;
544
743
  }
545
- export interface EventStreamList {
546
- /** The list of all Event Streams on this account. */
547
- eventStreams: Array<EventStream>;
548
- /** 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 */
549
748
  uri: string;
550
- /** 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 */
551
750
  nextPageUri?: string;
552
751
  }
553
- export interface EventStream {
554
- /** 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 */
765
+ id: string;
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 */
786
+ uri: string;
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;
555
867
  id: string;
556
- /** URI of the Event Stream API resource. */
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 */
557
874
  uri: string;
558
- /** Timestamp when the Event Stream was created, RFC 3339 format. */
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 */
559
910
  createdAt: string;
560
- /** 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. */
561
931
  metadata: string;
562
- /** 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. */
563
959
  description: string;
564
- /** A list of protocol-specific fields you want to collect on each event. */
565
- fields: Array<string>;
566
- /** The protocol that determines which events will be collected. Supported values are `tcp_connection_closed` and `http_request_complete`. */
567
- eventType: string;
568
- /** 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. */
569
- destinationIds: Array<string>;
570
- /** 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. */
571
- 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;
572
1009
  }
573
1010
  export interface EventDestinationCreate {
574
1011
  /** Arbitrary user-defined machine-readable data of this Event Destination. Optional, max 4096 bytes. */
@@ -665,7 +1102,7 @@ export interface EventSubscriptionCreate {
665
1102
  description: string;
666
1103
  /** Sources containing the types for which this event subscription will trigger */
667
1104
  sources: Array<EventSourceReplace>;
668
- /** 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. */
669
1106
  destinationIds: Array<string>;
670
1107
  }
671
1108
  export interface EventSubscriptionUpdate {
@@ -677,7 +1114,7 @@ export interface EventSubscriptionUpdate {
677
1114
  description?: string;
678
1115
  /** Sources containing the types for which this event subscription will trigger */
679
1116
  sources?: Array<EventSourceReplace>;
680
- /** 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. */
681
1118
  destinationIds?: Array<string>;
682
1119
  }
683
1120
  export interface EventSubscriptionList {
@@ -749,8 +1186,6 @@ export interface IPPolicyCreate {
749
1186
  description: string;
750
1187
  /** arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes. */
751
1188
  metadata: string;
752
- /** the IP policy action. Supported values are `allow` or `deny` */
753
- action: string;
754
1189
  }
755
1190
  export interface IPPolicyUpdate {
756
1191
  id: string;
@@ -770,8 +1205,6 @@ export interface IPPolicy {
770
1205
  description: string;
771
1206
  /** arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes. */
772
1207
  metadata: string;
773
- /** the IP policy action. Supported values are `allow` or `deny` */
774
- action: string;
775
1208
  }
776
1209
  export interface IPPolicyList {
777
1210
  /** the list of all IP policies on this account */
@@ -790,6 +1223,8 @@ export interface IPPolicyRuleCreate {
790
1223
  cidr: string;
791
1224
  /** ID of the IP policy this IP policy rule will be attached to */
792
1225
  ipPolicyId: string;
1226
+ /** the action to apply to the policy rule, either `allow` or `deny` */
1227
+ action?: string;
793
1228
  }
794
1229
  export interface IPPolicyRuleUpdate {
795
1230
  id: string;
@@ -815,6 +1250,8 @@ export interface IPPolicyRule {
815
1250
  cidr: string;
816
1251
  /** object describing the IP policy this IP Policy Rule belongs to */
817
1252
  ipPolicy: Ref;
1253
+ /** the action to apply to the policy rule, either `allow` or `deny` */
1254
+ action: string;
818
1255
  }
819
1256
  export interface IPPolicyRuleList {
820
1257
  /** the list of all IP policy rules on this account */
@@ -873,91 +1310,6 @@ export interface IPRestrictionList {
873
1310
  /** URI of the next page, or null if there is no next page */
874
1311
  nextPageUri?: string;
875
1312
  }
876
- export interface IPWhitelistEntryCreate {
877
- /** human-readable description of the source IPs for this IP whitelist entry. optional, max 255 bytes. */
878
- description: string;
879
- /** arbitrary user-defined machine-readable data of this IP whitelist entry. optional, max 4096 bytes. */
880
- metadata: string;
881
- /** an IP address or IP network range in CIDR notation (e.g. 10.1.1.1 or 10.1.0.0/16) of addresses that will be whitelisted to communicate with your tunnel endpoints */
882
- ipNet: string;
883
- }
884
- export interface IPWhitelistEntryUpdate {
885
- id: string;
886
- /** human-readable description of the source IPs for this IP whitelist entry. optional, max 255 bytes. */
887
- description?: string;
888
- /** arbitrary user-defined machine-readable data of this IP whitelist entry. optional, max 4096 bytes. */
889
- metadata?: string;
890
- }
891
- export interface IPWhitelistEntry {
892
- /** unique identifier for this IP whitelist entry */
893
- id: string;
894
- /** URI of the IP whitelist entry API resource */
895
- uri: string;
896
- /** timestamp when the IP whitelist entry was created, RFC 3339 format */
897
- createdAt: string;
898
- /** human-readable description of the source IPs for this IP whitelist entry. optional, max 255 bytes. */
899
- description: string;
900
- /** arbitrary user-defined machine-readable data of this IP whitelist entry. optional, max 4096 bytes. */
901
- metadata: string;
902
- /** an IP address or IP network range in CIDR notation (e.g. 10.1.1.1 or 10.1.0.0/16) of addresses that will be whitelisted to communicate with your tunnel endpoints */
903
- ipNet: string;
904
- }
905
- export interface IPWhitelistEntryList {
906
- /** the list of all IP whitelist entries on this account */
907
- whitelist: Array<IPWhitelistEntry>;
908
- /** URI of the IP whitelist API resource */
909
- uri: string;
910
- /** URI of the next page, or null if there is no next page */
911
- nextPageUri?: string;
912
- }
913
- export interface EndpointLoggingReplace {
914
- id: string;
915
- module: EndpointLoggingMutate;
916
- }
917
- export interface EndpointCircuitBreakerReplace {
918
- id: string;
919
- module: EndpointCircuitBreaker;
920
- }
921
- export interface EndpointCompressionReplace {
922
- id: string;
923
- module: EndpointCompression;
924
- }
925
- export interface EndpointTLSTerminationReplace {
926
- id: string;
927
- module: EndpointTLSTermination;
928
- }
929
- export interface EndpointIPPolicyReplace {
930
- id: string;
931
- module: EndpointIPPolicyMutate;
932
- }
933
- export interface EndpointMutualTLSReplace {
934
- id: string;
935
- module: EndpointMutualTLSMutate;
936
- }
937
- export interface EndpointRequestHeadersReplace {
938
- id: string;
939
- module: EndpointRequestHeaders;
940
- }
941
- export interface EndpointResponseHeadersReplace {
942
- id: string;
943
- module: EndpointResponseHeaders;
944
- }
945
- export interface EndpointOAuthReplace {
946
- id: string;
947
- module: EndpointOAuth;
948
- }
949
- export interface EndpointWebhookValidationReplace {
950
- id: string;
951
- module: EndpointWebhookValidation;
952
- }
953
- export interface EndpointSAMLReplace {
954
- id: string;
955
- module: EndpointSAMLMutate;
956
- }
957
- export interface EndpointOIDCReplace {
958
- id: string;
959
- module: EndpointOIDC;
960
- }
961
1313
  export interface ReservedAddrCreate {
962
1314
  /** human-readable description of what this reserved address will be used for */
963
1315
  description: string;
@@ -965,8 +1317,6 @@ export interface ReservedAddrCreate {
965
1317
  metadata: string;
966
1318
  /** reserve the address in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa) */
967
1319
  region: string;
968
- /** ID of an endpoint configuration of type tcp that will be used to handle inbound traffic to this address */
969
- endpointConfigurationId: string;
970
1320
  }
971
1321
  export interface ReservedAddrUpdate {
972
1322
  id: string;
@@ -974,8 +1324,6 @@ export interface ReservedAddrUpdate {
974
1324
  description?: string;
975
1325
  /** arbitrary user-defined machine-readable data of this reserved address. Optional, max 4096 bytes. */
976
1326
  metadata?: string;
977
- /** ID of an endpoint configuration of type tcp that will be used to handle inbound traffic to this address */
978
- endpointConfigurationId?: string;
979
1327
  }
980
1328
  export interface ReservedAddr {
981
1329
  /** unique reserved address resource identifier */
@@ -992,8 +1340,6 @@ export interface ReservedAddr {
992
1340
  addr: string;
993
1341
  /** reserve the address in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa) */
994
1342
  region: string;
995
- /** object reference to the endpoint configuration that will be applied to traffic to this address */
996
- endpointConfiguration?: Ref;
997
1343
  }
998
1344
  export interface ReservedAddrList {
999
1345
  /** the list of all reserved addresses on this account */
@@ -1012,10 +1358,6 @@ export interface ReservedDomainCreate {
1012
1358
  description: string;
1013
1359
  /** arbitrary user-defined machine-readable data of this reserved domain. Optional, max 4096 bytes. */
1014
1360
  metadata: string;
1015
- /** ID of an endpoint configuration of type http that will be used to handle inbound http traffic to this domain */
1016
- httpEndpointConfigurationId?: string;
1017
- /** ID of an endpoint configuration of type https that will be used to handle inbound https traffic to this domain */
1018
- httpsEndpointConfigurationId?: string;
1019
1361
  /** ID of a user-uploaded TLS certificate to use for connections to targeting this domain. Optional, mutually exclusive with `certificate_management_policy`. */
1020
1362
  certificateId?: string;
1021
1363
  /** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled. Optional, mutually exclusive with `certificate_id`. */
@@ -1027,10 +1369,6 @@ export interface ReservedDomainUpdate {
1027
1369
  description?: string;
1028
1370
  /** arbitrary user-defined machine-readable data of this reserved domain. Optional, max 4096 bytes. */
1029
1371
  metadata?: string;
1030
- /** ID of an endpoint configuration of type http that will be used to handle inbound http traffic to this domain */
1031
- httpEndpointConfigurationId?: string;
1032
- /** ID of an endpoint configuration of type https that will be used to handle inbound https traffic to this domain */
1033
- httpsEndpointConfigurationId?: string;
1034
1372
  /** ID of a user-uploaded TLS certificate to use for connections to targeting this domain. Optional, mutually exclusive with `certificate_management_policy`. */
1035
1373
  certificateId?: string;
1036
1374
  /** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled. Optional, mutually exclusive with `certificate_id`. */
@@ -1053,16 +1391,14 @@ export interface ReservedDomain {
1053
1391
  region: string;
1054
1392
  /** DNS CNAME target for a custom hostname, or null if the reserved domain is a subdomain of *.ngrok.io */
1055
1393
  cnameTarget?: string;
1056
- /** object referencing the endpoint configuration applied to http traffic on this domain */
1057
- httpEndpointConfiguration?: Ref;
1058
- /** object referencing the endpoint configuration applied to https traffic on this domain */
1059
- httpsEndpointConfiguration?: Ref;
1060
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. */
1061
1395
  certificate?: Ref;
1062
1396
  /** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled */
1063
1397
  certificateManagementPolicy?: ReservedDomainCertPolicy;
1064
1398
  /** status of the automatic certificate management for this domain, or null if automatic management is disabled */
1065
1399
  certificateManagementStatus?: ReservedDomainCertStatus;
1400
+ /** DNS CNAME target for the host _acme-challenge.example.com, where example.com is your reserved domain name. This is required to issue certificates for wildcard, non-ngrok reserved domains. Must be null for non-wildcard domains and ngrok subdomains. */
1401
+ acmeChallengeCnameTarget?: string;
1066
1402
  }
1067
1403
  export interface ReservedDomainList {
1068
1404
  /** the list of all reserved domains on this account */
@@ -1084,12 +1420,6 @@ export interface ReservedDomainCertStatus {
1084
1420
  /** status of the certificate provisioning job, or null if the certificiate isn't being provisioned or renewed */
1085
1421
  provisioningJob?: ReservedDomainCertJob;
1086
1422
  }
1087
- export interface ReservedDomainCertNSTarget {
1088
- /** the zone that the nameservers need to be applied to */
1089
- zone: string;
1090
- /** the nameservers the user must add */
1091
- nameservers: Array<string>;
1092
- }
1093
1423
  export interface ReservedDomainCertJob {
1094
1424
  /** if present, an error code indicating why provisioning is failing. It may be either a temporary condition (INTERNAL_ERROR), or a permanent one the user must correct (DNS_ERROR). */
1095
1425
  errorCode?: string;
@@ -1099,8 +1429,6 @@ export interface ReservedDomainCertJob {
1099
1429
  startedAt: string;
1100
1430
  /** timestamp when the provisioning job will be retried */
1101
1431
  retriesAt?: string;
1102
- /** if present, indicates the dns nameservers that the user must configure to complete the provisioning process of a wildcard certificate */
1103
- nsTargets: Array<ReservedDomainCertNSTarget>;
1104
1432
  }
1105
1433
  export interface SSHCertificateAuthorityCreate {
1106
1434
  /** human-readable description of this SSH Certificate Authority. optional, max 255 bytes. */
@@ -1421,18 +1749,26 @@ export interface TunnelSessionsUpdate {
1421
1749
  export interface Tunnel {
1422
1750
  /** unique tunnel resource identifier */
1423
1751
  id: string;
1424
- /** URL of the tunnel's public endpoint */
1752
+ /** URL of the ephemeral tunnel's public endpoint */
1425
1753
  publicUrl: string;
1426
1754
  /** timestamp when the tunnel was initiated in RFC 3339 format */
1427
1755
  startedAt: string;
1428
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). */
1429
1757
  metadata: string;
1430
- /** tunnel protocol. one of `http`, `https`, `tcp` or `tls` */
1758
+ /** tunnel protocol for ephemeral tunnels. one of `http`, `https`, `tcp` or `tls` */
1431
1759
  proto: string;
1432
1760
  /** identifier of tune region where the tunnel is running */
1433
1761
  region: string;
1434
1762
  /** reference object pointing to the tunnel session on which this tunnel was started */
1435
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;
1436
1772
  }
1437
1773
  export interface TunnelList {
1438
1774
  /** the list of all online tunnels on this account */