ngrok-api 0.16.0 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (373) hide show
  1. checksums.yaml +4 -4
  2. data/doc/NgrokAPI/Client.html +270 -180
  3. data/doc/NgrokAPI/Error.html +2 -2
  4. data/doc/NgrokAPI/Errors/NotFoundError.html +2 -2
  5. data/doc/NgrokAPI/Errors.html +2 -2
  6. data/doc/NgrokAPI/HttpClient.html +2 -2
  7. data/doc/NgrokAPI/Models/APIKey.html +2 -2
  8. data/doc/NgrokAPI/Models/AWSAuth.html +2 -2
  9. data/doc/NgrokAPI/Models/AWSCredentials.html +2 -2
  10. data/doc/NgrokAPI/Models/AWSRole.html +2 -2
  11. data/doc/NgrokAPI/Models/AbuseReport.html +2 -2
  12. data/doc/NgrokAPI/Models/AbuseReportHostname.html +2 -2
  13. data/doc/NgrokAPI/Models/AgentIngress.html +2 -2
  14. data/doc/NgrokAPI/Models/CertificateAuthority.html +2 -2
  15. data/doc/NgrokAPI/Models/Credential.html +2 -2
  16. data/doc/NgrokAPI/Models/Endpoint.html +1431 -0
  17. data/{docs/NgrokAPI/Models/EndpointLogging.html → doc/NgrokAPI/Models/EndpointBackend.html} +41 -41
  18. data/doc/NgrokAPI/Models/{EndpointLoggingMutate.html → EndpointBackendMutate.html} +41 -41
  19. data/doc/NgrokAPI/Models/EndpointCircuitBreaker.html +2 -2
  20. data/doc/NgrokAPI/Models/EndpointCompression.html +2 -2
  21. data/doc/NgrokAPI/Models/EndpointIPPolicy.html +2 -2
  22. data/doc/NgrokAPI/Models/EndpointIPPolicyMutate.html +2 -2
  23. data/doc/NgrokAPI/Models/EndpointMutualTLS.html +2 -2
  24. data/doc/NgrokAPI/Models/EndpointMutualTLSMutate.html +2 -2
  25. data/doc/NgrokAPI/Models/EndpointOAuth.html +2 -2
  26. data/doc/NgrokAPI/Models/EndpointOAuthFacebook.html +2 -2
  27. data/doc/NgrokAPI/Models/EndpointOAuthGitHub.html +2 -2
  28. data/doc/NgrokAPI/Models/EndpointOAuthGoogle.html +2 -2
  29. data/doc/NgrokAPI/Models/EndpointOAuthMicrosoft.html +2 -2
  30. data/doc/NgrokAPI/Models/EndpointOAuthProvider.html +2 -2
  31. data/doc/NgrokAPI/Models/EndpointOIDC.html +2 -2
  32. data/doc/NgrokAPI/Models/EndpointRequestHeaders.html +2 -2
  33. data/doc/NgrokAPI/Models/EndpointResponseHeaders.html +2 -2
  34. data/doc/NgrokAPI/Models/EndpointSAML.html +2 -2
  35. data/doc/NgrokAPI/Models/EndpointSAMLMutate.html +2 -2
  36. data/doc/NgrokAPI/Models/EndpointTLSTermination.html +2 -2
  37. data/doc/NgrokAPI/Models/EndpointTLSTerminationAtEdge.html +617 -0
  38. data/doc/NgrokAPI/Models/EndpointWebhookValidation.html +2 -2
  39. data/doc/NgrokAPI/Models/EndpointWebsocketTCPConverter.html +543 -0
  40. data/doc/NgrokAPI/Models/EventDestination.html +6 -6
  41. data/doc/NgrokAPI/Models/EventSource.html +2 -2
  42. data/doc/NgrokAPI/Models/EventSourceList.html +2 -2
  43. data/doc/NgrokAPI/Models/EventSourceReplace.html +2 -2
  44. data/doc/NgrokAPI/Models/EventSubscription.html +2 -2
  45. data/doc/NgrokAPI/Models/EventTarget.html +2 -2
  46. data/doc/NgrokAPI/Models/EventTargetCloudwatchLogs.html +2 -2
  47. data/doc/NgrokAPI/Models/EventTargetFirehose.html +2 -2
  48. data/doc/NgrokAPI/Models/EventTargetKinesis.html +2 -2
  49. data/doc/NgrokAPI/Models/FailoverBackend.html +1075 -0
  50. data/doc/NgrokAPI/Models/HTTPResponseBackend.html +1231 -0
  51. data/{docs/NgrokAPI/Models/EventStream.html → doc/NgrokAPI/Models/HTTPSEdge.html} +118 -118
  52. data/doc/NgrokAPI/Models/{EndpointConfiguration.html → HTTPSEdgeRoute.html} +202 -264
  53. data/doc/NgrokAPI/Models/IPPolicy.html +2 -2
  54. data/doc/NgrokAPI/Models/IPPolicyRule.html +96 -22
  55. data/doc/NgrokAPI/Models/IPRestriction.html +2 -2
  56. data/doc/NgrokAPI/Models/Listable.html +2 -2
  57. data/doc/NgrokAPI/Models/Ref.html +2 -2
  58. data/doc/NgrokAPI/Models/ReservedAddr.html +2 -2
  59. data/doc/NgrokAPI/Models/ReservedDomain.html +2 -2
  60. data/doc/NgrokAPI/Models/ReservedDomainCertJob.html +2 -2
  61. data/doc/NgrokAPI/Models/ReservedDomainCertPolicy.html +2 -2
  62. data/doc/NgrokAPI/Models/ReservedDomainCertStatus.html +2 -2
  63. data/doc/NgrokAPI/Models/SSHCertificateAuthority.html +2 -2
  64. data/doc/NgrokAPI/Models/SSHCredential.html +2 -2
  65. data/doc/NgrokAPI/Models/SSHHostCertificate.html +2 -2
  66. data/doc/NgrokAPI/Models/SSHUserCertificate.html +2 -2
  67. data/doc/NgrokAPI/Models/TCPEdge.html +1235 -0
  68. data/doc/NgrokAPI/Models/TLSCertificate.html +2 -2
  69. data/doc/NgrokAPI/Models/TLSCertificateSANs.html +2 -2
  70. data/doc/NgrokAPI/Models/TLSEdge.html +1395 -0
  71. data/doc/NgrokAPI/Models/Tunnel.html +313 -17
  72. data/doc/NgrokAPI/Models/TunnelGroupBackend.html +1149 -0
  73. data/doc/NgrokAPI/Models/TunnelSession.html +2 -2
  74. data/doc/NgrokAPI/Models/WeightedBackend.html +1075 -0
  75. data/doc/NgrokAPI/Models.html +4 -4
  76. data/doc/NgrokAPI/PagedIterator.html +2 -2
  77. data/doc/NgrokAPI/Services/APIKeysClient.html +2 -2
  78. data/doc/NgrokAPI/Services/AbuseReportsClient.html +2 -2
  79. data/doc/NgrokAPI/Services/AgentIngressesClient.html +2 -2
  80. data/doc/NgrokAPI/Services/CertificateAuthoritiesClient.html +2 -2
  81. data/doc/NgrokAPI/Services/CredentialsClient.html +2 -2
  82. data/doc/NgrokAPI/Services/EdgeRouteBackendModuleClient.html +1153 -0
  83. data/doc/NgrokAPI/Services/{EndpointCircuitBreakerModuleClient.html → EdgeRouteCircuitBreakerModuleClient.html} +206 -96
  84. data/{docs/NgrokAPI/Services/EndpointCompressionModuleClient.html → doc/NgrokAPI/Services/EdgeRouteCompressionModuleClient.html} +206 -96
  85. data/doc/NgrokAPI/Services/EdgeRouteIPRestrictionModuleClient.html +1153 -0
  86. data/doc/NgrokAPI/Services/EdgeRouteOAuthModuleClient.html +1153 -0
  87. data/{docs/NgrokAPI/Services/EndpointOIDCModuleClient.html → doc/NgrokAPI/Services/EdgeRouteOIDCModuleClient.html} +206 -96
  88. data/doc/NgrokAPI/Services/EdgeRouteRequestHeadersModuleClient.html +1153 -0
  89. data/{docs/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html → doc/NgrokAPI/Services/EdgeRouteResponseHeadersModuleClient.html} +206 -96
  90. data/{docs/NgrokAPI/Services/EndpointSAMLModuleClient.html → doc/NgrokAPI/Services/EdgeRouteSAMLModuleClient.html} +206 -96
  91. data/doc/NgrokAPI/Services/{EndpointWebhookValidationModuleClient.html → EdgeRouteWebhookVerificationModuleClient.html} +206 -96
  92. data/doc/NgrokAPI/Services/EdgeRouteWebsocketTCPConverterModuleClient.html +1153 -0
  93. data/doc/NgrokAPI/Services/{EventStreamsClient.html → EdgesHTTPSClient.html} +236 -271
  94. data/{docs/NgrokAPI/Services/EndpointConfigurationsClient.html → doc/NgrokAPI/Services/EdgesHTTPSRoutesClient.html} +456 -620
  95. data/doc/NgrokAPI/Services/EdgesTCPClient.html +1757 -0
  96. data/doc/NgrokAPI/Services/EdgesTLSClient.html +1847 -0
  97. data/doc/NgrokAPI/Services/EndpointsClient.html +907 -0
  98. data/doc/NgrokAPI/Services/EventDestinationsClient.html +35 -35
  99. data/doc/NgrokAPI/Services/EventSourcesClient.html +2 -2
  100. data/doc/NgrokAPI/Services/EventSubscriptionsClient.html +5 -5
  101. data/doc/NgrokAPI/Services/FailoverBackendsClient.html +1644 -0
  102. data/doc/NgrokAPI/Services/HTTPResponseBackendsClient.html +1744 -0
  103. data/doc/NgrokAPI/Services/{EndpointOIDCModuleClient.html → HTTPSEdgeMutualTLSModuleClient.html} +59 -59
  104. data/doc/NgrokAPI/Services/{EndpointRequestHeadersModuleClient.html → HTTPSEdgeTLSTerminationModuleClient.html} +59 -59
  105. data/doc/NgrokAPI/Services/IPPoliciesClient.html +40 -58
  106. data/doc/NgrokAPI/Services/IPPolicyRulesClient.html +60 -40
  107. data/doc/NgrokAPI/Services/IPRestrictionsClient.html +3 -3
  108. data/doc/NgrokAPI/Services/ReservedAddrsClient.html +41 -331
  109. data/doc/NgrokAPI/Services/ReservedDomainsClient.html +94 -674
  110. data/doc/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +2 -2
  111. data/doc/NgrokAPI/Services/SSHCredentialsClient.html +2 -2
  112. data/doc/NgrokAPI/Services/SSHHostCertificatesClient.html +2 -2
  113. data/doc/NgrokAPI/Services/SSHUserCertificatesClient.html +2 -2
  114. data/{docs/NgrokAPI/Services/EndpointLoggingModuleClient.html → doc/NgrokAPI/Services/TCPEdgeBackendModuleClient.html} +59 -59
  115. data/doc/NgrokAPI/Services/{EndpointIPPolicyModuleClient.html → TCPEdgeIPRestrictionModuleClient.html} +41 -41
  116. data/doc/NgrokAPI/Services/TLSCertificatesClient.html +2 -2
  117. data/doc/NgrokAPI/Services/{EndpointLoggingModuleClient.html → TLSEdgeBackendModuleClient.html} +59 -59
  118. data/{docs/NgrokAPI/Services/EndpointIPPolicyModuleClient.html → doc/NgrokAPI/Services/TLSEdgeIPRestrictionModuleClient.html} +41 -41
  119. data/doc/NgrokAPI/Services/{EndpointMutualTLSModuleClient.html → TLSEdgeMutualTLSModuleClient.html} +41 -41
  120. data/{docs/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html → doc/NgrokAPI/Services/TLSEdgeTLSTerminationModuleClient.html} +41 -41
  121. data/doc/NgrokAPI/Services/TunnelGroupBackendsClient.html +1644 -0
  122. data/doc/NgrokAPI/Services/TunnelSessionsClient.html +2 -2
  123. data/doc/NgrokAPI/Services/TunnelsClient.html +241 -3
  124. data/doc/NgrokAPI/Services/WeightedBackendsClient.html +1644 -0
  125. data/doc/NgrokAPI/Services.html +4 -4
  126. data/doc/NgrokAPI.html +3 -3
  127. data/doc/_index.html +237 -60
  128. data/doc/class_list.html +1 -1
  129. data/doc/file.README.html +2 -2
  130. data/doc/index.html +2 -2
  131. data/doc/method_list.html +3393 -1433
  132. data/doc/top-level-namespace.html +2 -2
  133. data/docs/NgrokAPI/Client.html +270 -180
  134. data/docs/NgrokAPI/Error.html +2 -2
  135. data/docs/NgrokAPI/Errors/NotFoundError.html +2 -2
  136. data/docs/NgrokAPI/Errors.html +2 -2
  137. data/docs/NgrokAPI/HttpClient.html +2 -2
  138. data/docs/NgrokAPI/Models/APIKey.html +2 -2
  139. data/docs/NgrokAPI/Models/AWSAuth.html +2 -2
  140. data/docs/NgrokAPI/Models/AWSCredentials.html +2 -2
  141. data/docs/NgrokAPI/Models/AWSRole.html +2 -2
  142. data/docs/NgrokAPI/Models/AbuseReport.html +2 -2
  143. data/docs/NgrokAPI/Models/AbuseReportHostname.html +2 -2
  144. data/docs/NgrokAPI/Models/AgentIngress.html +2 -2
  145. data/docs/NgrokAPI/Models/CertificateAuthority.html +2 -2
  146. data/docs/NgrokAPI/Models/Credential.html +2 -2
  147. data/docs/NgrokAPI/Models/Endpoint.html +1431 -0
  148. data/{doc/NgrokAPI/Models/EndpointLogging.html → docs/NgrokAPI/Models/EndpointBackend.html} +41 -41
  149. data/docs/NgrokAPI/Models/{EndpointLoggingMutate.html → EndpointBackendMutate.html} +41 -41
  150. data/docs/NgrokAPI/Models/EndpointCircuitBreaker.html +2 -2
  151. data/docs/NgrokAPI/Models/EndpointCompression.html +2 -2
  152. data/docs/NgrokAPI/Models/EndpointIPPolicy.html +2 -2
  153. data/docs/NgrokAPI/Models/EndpointIPPolicyMutate.html +2 -2
  154. data/docs/NgrokAPI/Models/EndpointMutualTLS.html +2 -2
  155. data/docs/NgrokAPI/Models/EndpointMutualTLSMutate.html +2 -2
  156. data/docs/NgrokAPI/Models/EndpointOAuth.html +2 -2
  157. data/docs/NgrokAPI/Models/EndpointOAuthFacebook.html +2 -2
  158. data/docs/NgrokAPI/Models/EndpointOAuthGitHub.html +2 -2
  159. data/docs/NgrokAPI/Models/EndpointOAuthGoogle.html +2 -2
  160. data/docs/NgrokAPI/Models/EndpointOAuthMicrosoft.html +2 -2
  161. data/docs/NgrokAPI/Models/EndpointOAuthProvider.html +2 -2
  162. data/docs/NgrokAPI/Models/EndpointOIDC.html +2 -2
  163. data/docs/NgrokAPI/Models/EndpointRequestHeaders.html +2 -2
  164. data/docs/NgrokAPI/Models/EndpointResponseHeaders.html +2 -2
  165. data/docs/NgrokAPI/Models/EndpointSAML.html +2 -2
  166. data/docs/NgrokAPI/Models/EndpointSAMLMutate.html +2 -2
  167. data/docs/NgrokAPI/Models/EndpointTLSTermination.html +2 -2
  168. data/docs/NgrokAPI/Models/EndpointTLSTerminationAtEdge.html +617 -0
  169. data/docs/NgrokAPI/Models/EndpointWebhookValidation.html +2 -2
  170. data/docs/NgrokAPI/Models/EndpointWebsocketTCPConverter.html +543 -0
  171. data/docs/NgrokAPI/Models/EventDestination.html +6 -6
  172. data/docs/NgrokAPI/Models/EventSource.html +2 -2
  173. data/docs/NgrokAPI/Models/EventSourceList.html +2 -2
  174. data/docs/NgrokAPI/Models/EventSourceReplace.html +2 -2
  175. data/docs/NgrokAPI/Models/EventSubscription.html +2 -2
  176. data/docs/NgrokAPI/Models/EventTarget.html +2 -2
  177. data/docs/NgrokAPI/Models/EventTargetCloudwatchLogs.html +2 -2
  178. data/docs/NgrokAPI/Models/EventTargetFirehose.html +2 -2
  179. data/docs/NgrokAPI/Models/EventTargetKinesis.html +2 -2
  180. data/docs/NgrokAPI/Models/FailoverBackend.html +1075 -0
  181. data/docs/NgrokAPI/Models/HTTPResponseBackend.html +1231 -0
  182. data/{doc/NgrokAPI/Models/EventStream.html → docs/NgrokAPI/Models/HTTPSEdge.html} +118 -118
  183. data/docs/NgrokAPI/Models/{EndpointConfiguration.html → HTTPSEdgeRoute.html} +202 -264
  184. data/docs/NgrokAPI/Models/IPPolicy.html +2 -2
  185. data/docs/NgrokAPI/Models/IPPolicyRule.html +96 -22
  186. data/docs/NgrokAPI/Models/IPRestriction.html +2 -2
  187. data/docs/NgrokAPI/Models/Listable.html +2 -2
  188. data/docs/NgrokAPI/Models/Ref.html +2 -2
  189. data/docs/NgrokAPI/Models/ReservedAddr.html +2 -2
  190. data/docs/NgrokAPI/Models/ReservedDomain.html +2 -2
  191. data/docs/NgrokAPI/Models/ReservedDomainCertJob.html +2 -2
  192. data/docs/NgrokAPI/Models/ReservedDomainCertPolicy.html +2 -2
  193. data/docs/NgrokAPI/Models/ReservedDomainCertStatus.html +2 -2
  194. data/docs/NgrokAPI/Models/SSHCertificateAuthority.html +2 -2
  195. data/docs/NgrokAPI/Models/SSHCredential.html +2 -2
  196. data/docs/NgrokAPI/Models/SSHHostCertificate.html +2 -2
  197. data/docs/NgrokAPI/Models/SSHUserCertificate.html +2 -2
  198. data/docs/NgrokAPI/Models/TCPEdge.html +1235 -0
  199. data/docs/NgrokAPI/Models/TLSCertificate.html +2 -2
  200. data/docs/NgrokAPI/Models/TLSCertificateSANs.html +2 -2
  201. data/docs/NgrokAPI/Models/TLSEdge.html +1395 -0
  202. data/docs/NgrokAPI/Models/Tunnel.html +313 -17
  203. data/docs/NgrokAPI/Models/TunnelGroupBackend.html +1149 -0
  204. data/docs/NgrokAPI/Models/TunnelSession.html +2 -2
  205. data/docs/NgrokAPI/Models/WeightedBackend.html +1075 -0
  206. data/docs/NgrokAPI/Models.html +4 -4
  207. data/docs/NgrokAPI/PagedIterator.html +2 -2
  208. data/docs/NgrokAPI/Services/APIKeysClient.html +2 -2
  209. data/docs/NgrokAPI/Services/AbuseReportsClient.html +2 -2
  210. data/docs/NgrokAPI/Services/AgentIngressesClient.html +2 -2
  211. data/docs/NgrokAPI/Services/CertificateAuthoritiesClient.html +2 -2
  212. data/docs/NgrokAPI/Services/CredentialsClient.html +2 -2
  213. data/docs/NgrokAPI/Services/EdgeRouteBackendModuleClient.html +1153 -0
  214. data/docs/NgrokAPI/Services/{EndpointCircuitBreakerModuleClient.html → EdgeRouteCircuitBreakerModuleClient.html} +206 -96
  215. data/{doc/NgrokAPI/Services/EndpointCompressionModuleClient.html → docs/NgrokAPI/Services/EdgeRouteCompressionModuleClient.html} +206 -96
  216. data/docs/NgrokAPI/Services/EdgeRouteIPRestrictionModuleClient.html +1153 -0
  217. data/docs/NgrokAPI/Services/EdgeRouteOAuthModuleClient.html +1153 -0
  218. data/docs/NgrokAPI/Services/EdgeRouteOIDCModuleClient.html +1153 -0
  219. data/docs/NgrokAPI/Services/EdgeRouteRequestHeadersModuleClient.html +1153 -0
  220. data/{doc/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html → docs/NgrokAPI/Services/EdgeRouteResponseHeadersModuleClient.html} +206 -96
  221. data/docs/NgrokAPI/Services/EdgeRouteSAMLModuleClient.html +1153 -0
  222. data/docs/NgrokAPI/Services/{EndpointWebhookValidationModuleClient.html → EdgeRouteWebhookVerificationModuleClient.html} +206 -96
  223. data/docs/NgrokAPI/Services/EdgeRouteWebsocketTCPConverterModuleClient.html +1153 -0
  224. data/docs/NgrokAPI/Services/{EventStreamsClient.html → EdgesHTTPSClient.html} +236 -271
  225. data/{doc/NgrokAPI/Services/EndpointConfigurationsClient.html → docs/NgrokAPI/Services/EdgesHTTPSRoutesClient.html} +456 -620
  226. data/docs/NgrokAPI/Services/EdgesTCPClient.html +1757 -0
  227. data/docs/NgrokAPI/Services/EdgesTLSClient.html +1847 -0
  228. data/docs/NgrokAPI/Services/EndpointsClient.html +907 -0
  229. data/docs/NgrokAPI/Services/EventDestinationsClient.html +35 -35
  230. data/docs/NgrokAPI/Services/EventSourcesClient.html +2 -2
  231. data/docs/NgrokAPI/Services/EventSubscriptionsClient.html +5 -5
  232. data/docs/NgrokAPI/Services/FailoverBackendsClient.html +1644 -0
  233. data/docs/NgrokAPI/Services/HTTPResponseBackendsClient.html +1744 -0
  234. data/{doc/NgrokAPI/Services/EndpointSAMLModuleClient.html → docs/NgrokAPI/Services/HTTPSEdgeMutualTLSModuleClient.html} +59 -59
  235. data/docs/NgrokAPI/Services/{EndpointRequestHeadersModuleClient.html → HTTPSEdgeTLSTerminationModuleClient.html} +59 -59
  236. data/docs/NgrokAPI/Services/IPPoliciesClient.html +40 -58
  237. data/docs/NgrokAPI/Services/IPPolicyRulesClient.html +60 -40
  238. data/docs/NgrokAPI/Services/IPRestrictionsClient.html +3 -3
  239. data/docs/NgrokAPI/Services/ReservedAddrsClient.html +41 -331
  240. data/docs/NgrokAPI/Services/ReservedDomainsClient.html +94 -674
  241. data/docs/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +2 -2
  242. data/docs/NgrokAPI/Services/SSHCredentialsClient.html +2 -2
  243. data/docs/NgrokAPI/Services/SSHHostCertificatesClient.html +2 -2
  244. data/docs/NgrokAPI/Services/SSHUserCertificatesClient.html +2 -2
  245. data/docs/NgrokAPI/Services/{EndpointOAuthModuleClient.html → TCPEdgeBackendModuleClient.html} +59 -59
  246. data/docs/NgrokAPI/Services/TCPEdgeIPRestrictionModuleClient.html +1043 -0
  247. data/docs/NgrokAPI/Services/TLSCertificatesClient.html +2 -2
  248. data/{doc/NgrokAPI/Services/EndpointOAuthModuleClient.html → docs/NgrokAPI/Services/TLSEdgeBackendModuleClient.html} +59 -59
  249. data/docs/NgrokAPI/Services/TLSEdgeIPRestrictionModuleClient.html +1043 -0
  250. data/docs/NgrokAPI/Services/{EndpointMutualTLSModuleClient.html → TLSEdgeMutualTLSModuleClient.html} +41 -41
  251. data/{doc/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html → docs/NgrokAPI/Services/TLSEdgeTLSTerminationModuleClient.html} +41 -41
  252. data/docs/NgrokAPI/Services/TunnelGroupBackendsClient.html +1644 -0
  253. data/docs/NgrokAPI/Services/TunnelSessionsClient.html +2 -2
  254. data/docs/NgrokAPI/Services/TunnelsClient.html +241 -3
  255. data/docs/NgrokAPI/Services/WeightedBackendsClient.html +1644 -0
  256. data/docs/NgrokAPI/Services.html +4 -4
  257. data/docs/NgrokAPI.html +3 -3
  258. data/docs/_index.html +237 -60
  259. data/docs/class_list.html +1 -1
  260. data/docs/file.README.html +2 -2
  261. data/docs/index.html +2 -2
  262. data/docs/method_list.html +3393 -1433
  263. data/docs/top-level-namespace.html +2 -2
  264. data/lib/ngrokapi/client.rb +47 -24
  265. data/lib/ngrokapi/models/endpoint.rb +49 -0
  266. data/lib/ngrokapi/models/{endpoint_logging.rb → endpoint_backend.rb} +3 -3
  267. data/lib/ngrokapi/models/{endpoint_logging_mutate.rb → endpoint_backend_mutate.rb} +3 -3
  268. data/lib/ngrokapi/models/endpoint_tls_termination_at_edge.rb +27 -0
  269. data/lib/ngrokapi/models/endpoint_websocket_tcp_converter.rb +25 -0
  270. data/lib/ngrokapi/models/event_destination.rb +1 -2
  271. data/lib/ngrokapi/models/{event_stream.rb → failover_backend.rb} +15 -27
  272. data/lib/ngrokapi/models/http_response_backend.rb +71 -0
  273. data/lib/ngrokapi/models/https_edge.rb +80 -0
  274. data/lib/ngrokapi/models/{endpoint_configuration.rb → https_edge_route.rb} +56 -53
  275. data/lib/ngrokapi/models/ip_policy_rule.rb +3 -1
  276. data/lib/ngrokapi/models/tcp_edge.rb +78 -0
  277. data/lib/ngrokapi/models/tls_edge.rb +88 -0
  278. data/lib/ngrokapi/models/tunnel.rb +9 -1
  279. data/lib/ngrokapi/models/tunnel_group_backend.rb +67 -0
  280. data/lib/ngrokapi/models/weighted_backend.rb +65 -0
  281. data/lib/ngrokapi/services/edge_route_backend_module_client.rb +120 -0
  282. data/lib/ngrokapi/services/{endpoint_circuit_breaker_module_client.rb → edge_route_circuit_breaker_module_client.rb} +37 -25
  283. data/lib/ngrokapi/services/{endpoint_compression_module_client.rb → edge_route_compression_module_client.rb} +37 -25
  284. data/lib/ngrokapi/services/edge_route_ip_restriction_module_client.rb +120 -0
  285. data/lib/ngrokapi/services/edge_route_o_auth_module_client.rb +120 -0
  286. data/lib/ngrokapi/services/edge_route_oidc_module_client.rb +120 -0
  287. data/lib/ngrokapi/services/edge_route_request_headers_module_client.rb +120 -0
  288. data/lib/ngrokapi/services/{endpoint_response_headers_module_client.rb → edge_route_response_headers_module_client.rb} +37 -25
  289. data/lib/ngrokapi/services/edge_route_saml_module_client.rb +120 -0
  290. data/lib/ngrokapi/services/{endpoint_webhook_validation_module_client.rb → edge_route_webhook_verification_module_client.rb} +37 -25
  291. data/lib/ngrokapi/services/edge_route_websocket_tcp_converter_module_client.rb +120 -0
  292. data/lib/ngrokapi/services/edges_https_client.rb +227 -0
  293. data/lib/ngrokapi/services/edges_https_routes_client.rb +244 -0
  294. data/lib/ngrokapi/services/edges_tcp_client.rb +227 -0
  295. data/lib/ngrokapi/services/edges_tls_client.rb +239 -0
  296. data/lib/ngrokapi/services/endpoints_client.rb +114 -0
  297. data/lib/ngrokapi/services/event_destinations_client.rb +2 -4
  298. data/lib/ngrokapi/services/event_subscriptions_client.rb +3 -3
  299. data/lib/ngrokapi/services/failover_backends_client.rb +214 -0
  300. data/lib/ngrokapi/services/http_response_backends_client.rb +199 -0
  301. data/lib/ngrokapi/services/{endpoint_saml_module_client.rb → https_edge_mutual_tls_module_client.rb} +25 -25
  302. data/lib/ngrokapi/services/{endpoint_request_headers_module_client.rb → https_edge_tls_termination_module_client.rb} +25 -25
  303. data/lib/ngrokapi/services/ip_policies_client.rb +1 -3
  304. data/lib/ngrokapi/services/ip_policy_rules_client.rb +3 -1
  305. data/lib/ngrokapi/services/ip_restrictions_client.rb +1 -1
  306. data/lib/ngrokapi/services/reserved_addrs_client.rb +0 -37
  307. data/lib/ngrokapi/services/reserved_domains_client.rb +0 -74
  308. data/lib/ngrokapi/services/{endpoint_logging_module_client.rb → tcp_edge_backend_module_client.rb} +25 -25
  309. data/lib/ngrokapi/services/{endpoint_ip_policy_module_client.rb → tcp_edge_ip_restriction_module_client.rb} +15 -15
  310. data/lib/ngrokapi/services/{endpoint_oidc_module_client.rb → tls_edge_backend_module_client.rb} +25 -25
  311. data/lib/ngrokapi/services/{endpoint_o_auth_module_client.rb → tls_edge_ip_restriction_module_client.rb} +25 -25
  312. data/lib/ngrokapi/services/{endpoint_mutual_tls_module_client.rb → tls_edge_mutual_tls_module_client.rb} +15 -15
  313. data/lib/ngrokapi/services/{endpoint_tls_termination_module_client.rb → tls_edge_tls_termination_module_client.rb} +15 -15
  314. data/lib/ngrokapi/services/tunnel_group_backends_client.rb +212 -0
  315. data/lib/ngrokapi/services/tunnels_client.rb +35 -0
  316. data/lib/ngrokapi/services/weighted_backends_client.rb +214 -0
  317. data/lib/ngrokapi/version.rb +1 -1
  318. data/spec/ngrokapi/client_spec.rb +44 -23
  319. data/spec/ngrokapi/models/endpoint_backend_mutate_spec.rb +21 -0
  320. data/spec/ngrokapi/models/endpoint_backend_spec.rb +21 -0
  321. data/spec/ngrokapi/models/endpoint_spec.rb +21 -0
  322. data/spec/ngrokapi/models/endpoint_tls_termination_at_edge_spec.rb +21 -0
  323. data/spec/ngrokapi/models/endpoint_websocket_tcp_converter_spec.rb +21 -0
  324. data/spec/ngrokapi/models/failover_backend_spec.rb +45 -0
  325. data/spec/ngrokapi/models/http_response_backend_spec.rb +51 -0
  326. data/spec/ngrokapi/models/https_edge_route_spec.rb +81 -0
  327. data/spec/ngrokapi/models/https_edge_spec.rb +51 -0
  328. data/spec/ngrokapi/models/tcp_edge_spec.rb +51 -0
  329. data/spec/ngrokapi/models/tls_edge_spec.rb +57 -0
  330. data/spec/ngrokapi/models/tunnel_group_backend_spec.rb +45 -0
  331. data/spec/ngrokapi/models/weighted_backend_spec.rb +45 -0
  332. data/spec/ngrokapi/services/edge_route_backend_module_client_spec.rb +139 -0
  333. data/spec/ngrokapi/services/{endpoint_circuit_breaker_module_client_spec.rb → edge_route_circuit_breaker_module_client_spec.rb} +31 -17
  334. data/spec/ngrokapi/services/{endpoint_compression_module_client_spec.rb → edge_route_compression_module_client_spec.rb} +31 -17
  335. data/spec/ngrokapi/services/edge_route_ip_restriction_module_client_spec.rb +139 -0
  336. data/spec/ngrokapi/services/{endpoint_o_auth_module_client_spec.rb → edge_route_o_auth_module_client_spec.rb} +31 -17
  337. data/spec/ngrokapi/services/{endpoint_oidc_module_client_spec.rb → edge_route_oidc_module_client_spec.rb} +31 -17
  338. data/spec/ngrokapi/services/{endpoint_request_headers_module_client_spec.rb → edge_route_request_headers_module_client_spec.rb} +31 -17
  339. data/spec/ngrokapi/services/{endpoint_response_headers_module_client_spec.rb → edge_route_response_headers_module_client_spec.rb} +31 -17
  340. data/spec/ngrokapi/services/{endpoint_saml_module_client_spec.rb → edge_route_saml_module_client_spec.rb} +31 -17
  341. data/spec/ngrokapi/services/{endpoint_webhook_validation_module_client_spec.rb → edge_route_webhook_verification_module_client_spec.rb} +31 -17
  342. data/spec/ngrokapi/services/edge_route_websocket_tcp_converter_module_client_spec.rb +139 -0
  343. data/spec/ngrokapi/services/{event_streams_client_spec.rb → edges_https_client_spec.rb} +106 -108
  344. data/spec/ngrokapi/services/edges_https_routes_client_spec.rb +241 -0
  345. data/spec/ngrokapi/services/edges_tcp_client_spec.rb +175 -0
  346. data/spec/ngrokapi/services/edges_tls_client_spec.rb +187 -0
  347. data/spec/ngrokapi/services/endpoints_client_spec.rb +57 -0
  348. data/spec/ngrokapi/services/failover_backends_client_spec.rb +163 -0
  349. data/spec/ngrokapi/services/http_response_backends_client_spec.rb +175 -0
  350. data/spec/ngrokapi/services/{endpoint_mutual_tls_module_client_spec.rb → https_edge_mutual_tls_module_client_spec.rb} +17 -17
  351. data/spec/ngrokapi/services/{endpoint_tls_termination_module_client_spec.rb → https_edge_tls_termination_module_client_spec.rb} +17 -17
  352. data/spec/ngrokapi/services/ip_policies_client_spec.rb +0 -1
  353. data/spec/ngrokapi/services/ip_policy_rules_client_spec.rb +3 -1
  354. data/spec/ngrokapi/services/reserved_addrs_client_spec.rb +0 -44
  355. data/spec/ngrokapi/services/reserved_domains_client_spec.rb +0 -88
  356. data/spec/ngrokapi/services/{endpoint_logging_module_client_spec.rb → tcp_edge_backend_module_client_spec.rb} +40 -40
  357. data/spec/ngrokapi/services/{endpoint_ip_policy_module_client_spec.rb → tcp_edge_ip_restriction_module_client_spec.rb} +17 -17
  358. data/spec/ngrokapi/services/tls_edge_backend_module_client_spec.rb +125 -0
  359. data/spec/ngrokapi/services/tls_edge_ip_restriction_module_client_spec.rb +125 -0
  360. data/spec/ngrokapi/services/tls_edge_mutual_tls_module_client_spec.rb +125 -0
  361. data/spec/ngrokapi/services/tls_edge_tls_termination_module_client_spec.rb +125 -0
  362. data/spec/ngrokapi/services/tunnel_group_backends_client_spec.rb +163 -0
  363. data/spec/ngrokapi/services/tunnels_client_spec.rb +36 -0
  364. data/spec/ngrokapi/services/weighted_backends_client_spec.rb +163 -0
  365. data/spec/spec_helper.rb +326 -33
  366. metadata +166 -74
  367. data/lib/ngrokapi/services/endpoint_configurations_client.rb +0 -289
  368. data/lib/ngrokapi/services/event_streams_client.rb +0 -224
  369. data/spec/ngrokapi/models/endpoint_configuration_spec.rb +0 -78
  370. data/spec/ngrokapi/models/endpoint_logging_mutate_spec.rb +0 -21
  371. data/spec/ngrokapi/models/endpoint_logging_spec.rb +0 -21
  372. data/spec/ngrokapi/models/event_stream_spec.rb +0 -51
  373. data/spec/ngrokapi/services/endpoint_configurations_client_spec.rb +0 -237
@@ -0,0 +1,227 @@
1
+ # frozen_string_literal: true
2
+
3
+ module NgrokAPI
4
+ module Services
5
+ ##
6
+ # https://ngrok.com/docs/api#api-edges-https
7
+ class EdgesHTTPSClient
8
+ # The API path for the requests
9
+ PATH = '/edges/https'
10
+ # The List Property from the resulting API for list calls
11
+ LIST_PROPERTY = 'https_edges'
12
+
13
+ attr_reader :client
14
+
15
+ def initialize(client:)
16
+ @client = client
17
+ end
18
+
19
+ ##
20
+ # Create an HTTPS Edge
21
+ #
22
+ # @param [string] description human-readable description of what this edge will be used for; optional, max 255 bytes.
23
+ # @param [string] metadata arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes.
24
+ # @param [List<string>] hostports hostports served by this edge
25
+ # @param [EndpointMutualTLSMutate] mutual_tls edge modules
26
+ # @param [EndpointTLSTerminationAtEdge] tls_termination
27
+ # @return [NgrokAPI::Models::HTTPSEdge] result from the API request
28
+ #
29
+ # https://ngrok.com/docs/api#api-edges-https-create
30
+ def create(description: "", metadata: "", hostports: nil, mutual_tls: nil, tls_termination: nil)
31
+ path = '/edges/https'
32
+ replacements = {
33
+ }
34
+ data = {}
35
+ data[:description] = description if description
36
+ data[:metadata] = metadata if metadata
37
+ data[:hostports] = hostports if hostports
38
+ data[:mutual_tls] = mutual_tls if mutual_tls
39
+ data[:tls_termination] = tls_termination if tls_termination
40
+ result = @client.post(path % replacements, data: data)
41
+ NgrokAPI::Models::HTTPSEdge.new(client: self, result: result)
42
+ end
43
+
44
+ ##
45
+ # Get an HTTPS Edge by ID
46
+ #
47
+ # @param [string] id a resource identifier
48
+ # @return [NgrokAPI::Models::HTTPSEdge] result from the API request
49
+ #
50
+ # https://ngrok.com/docs/api#api-edges-https-get
51
+ def get(id: "")
52
+ path = '/edges/https/%{id}'
53
+ replacements = {
54
+ id: id,
55
+ }
56
+ data = {}
57
+ result = @client.get(path % replacements, data: data)
58
+ NgrokAPI::Models::HTTPSEdge.new(client: self, result: result)
59
+ end
60
+
61
+ ##
62
+ # Get an HTTPS Edge by ID
63
+ # Throws an exception if API error.
64
+ #
65
+ # @param [string] id a resource identifier
66
+ # @return [NgrokAPI::Models::HTTPSEdge] result from the API request
67
+ #
68
+ # https://ngrok.com/docs/api#api-edges-https-get
69
+ def get!(id: "")
70
+ path = '/edges/https/%{id}'
71
+ replacements = {
72
+ id: id,
73
+ }
74
+ data = {}
75
+ result = @client.get(path % replacements, data: data, danger: true)
76
+ NgrokAPI::Models::HTTPSEdge.new(client: self, result: result)
77
+ end
78
+
79
+ ##
80
+ # Returns a list of all HTTPS Edges on this account
81
+ #
82
+ # @param [string] before_id
83
+ # @param [string] limit
84
+ # @param [string] url optional and mutually exclusive from before_id and limit
85
+ # @return [NgrokAPI::Models::Listable] result from the API request
86
+ #
87
+ # https://ngrok.com/docs/api#api-edges-https-list
88
+ def list(before_id: nil, limit: nil,
89
+ url: nil)
90
+ result = @client.list(
91
+ before_id: before_id,
92
+ limit: limit,
93
+ url: url,
94
+ path: PATH
95
+ )
96
+
97
+ NgrokAPI::Models::Listable.new(
98
+ client: self,
99
+ result: result,
100
+ list_property: LIST_PROPERTY,
101
+ klass: NgrokAPI::Models::HTTPSEdge
102
+ )
103
+ end
104
+
105
+ ##
106
+ # Returns a list of all HTTPS Edges on this account
107
+ # Throws an exception if API error.
108
+ #
109
+ # @param [string] before_id
110
+ # @param [string] limit
111
+ # @param [string] url optional and mutually exclusive from before_id and limit
112
+ # @return [NgrokAPI::Models::Listable] result from the API request
113
+ #
114
+ # https://ngrok.com/docs/api#api-edges-https-list
115
+ def list!(before_id: nil, limit: nil,
116
+ url: nil)
117
+ result = @client.list(
118
+ before_id: before_id,
119
+ limit: limit,
120
+ danger: true,
121
+ url: url,
122
+ path: PATH
123
+ )
124
+
125
+ NgrokAPI::Models::Listable.new(
126
+ client: self,
127
+ result: result,
128
+ list_property: LIST_PROPERTY,
129
+ klass: NgrokAPI::Models::HTTPSEdge,
130
+ danger: true
131
+ )
132
+ end
133
+
134
+ ##
135
+ # Updates an HTTPS Edge by ID. If a module is not specified in the update, it will
136
+ # not be modified. However, each module configuration that is specified will
137
+ # completely replace the existing value. There is no way to delete an existing
138
+ # module via this API, instead use the delete module API.
139
+ #
140
+ # @param [string] id unique identifier of this edge
141
+ # @param [string] description human-readable description of what this edge will be used for; optional, max 255 bytes.
142
+ # @param [string] metadata arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes.
143
+ # @param [List<string>] hostports hostports served by this edge
144
+ # @param [EndpointMutualTLSMutate] mutual_tls edge modules
145
+ # @param [EndpointTLSTerminationAtEdge] tls_termination
146
+ # @return [NgrokAPI::Models::HTTPSEdge] result from the API request
147
+ #
148
+ # https://ngrok.com/docs/api#api-edges-https-update
149
+ def update(id: "", description: nil, metadata: nil, hostports: nil, mutual_tls: nil, tls_termination: nil)
150
+ path = '/edges/https/%{id}'
151
+ replacements = {
152
+ id: id,
153
+ }
154
+ data = {}
155
+ data[:description] = description if description
156
+ data[:metadata] = metadata if metadata
157
+ data[:hostports] = hostports if hostports
158
+ data[:mutual_tls] = mutual_tls if mutual_tls
159
+ data[:tls_termination] = tls_termination if tls_termination
160
+ result = @client.patch(path % replacements, data: data)
161
+ NgrokAPI::Models::HTTPSEdge.new(client: self, result: result)
162
+ end
163
+
164
+ ##
165
+ # Updates an HTTPS Edge by ID. If a module is not specified in the update, it will
166
+ # not be modified. However, each module configuration that is specified will
167
+ # completely replace the existing value. There is no way to delete an existing
168
+ # module via this API, instead use the delete module API.
169
+ # Throws an exception if API error.
170
+ #
171
+ # @param [string] id unique identifier of this edge
172
+ # @param [string] description human-readable description of what this edge will be used for; optional, max 255 bytes.
173
+ # @param [string] metadata arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes.
174
+ # @param [List<string>] hostports hostports served by this edge
175
+ # @param [EndpointMutualTLSMutate] mutual_tls edge modules
176
+ # @param [EndpointTLSTerminationAtEdge] tls_termination
177
+ # @return [NgrokAPI::Models::HTTPSEdge] result from the API request
178
+ #
179
+ # https://ngrok.com/docs/api#api-edges-https-update
180
+ def update!(id: "", description: nil, metadata: nil, hostports: nil, mutual_tls: nil, tls_termination: nil)
181
+ path = '/edges/https/%{id}'
182
+ replacements = {
183
+ id: id,
184
+ }
185
+ data = {}
186
+ data[:description] = description if description
187
+ data[:metadata] = metadata if metadata
188
+ data[:hostports] = hostports if hostports
189
+ data[:mutual_tls] = mutual_tls if mutual_tls
190
+ data[:tls_termination] = tls_termination if tls_termination
191
+ result = @client.patch(path % replacements, data: data, danger: true)
192
+ NgrokAPI::Models::HTTPSEdge.new(client: self, result: result)
193
+ end
194
+
195
+ ##
196
+ # Delete an HTTPS Edge by ID
197
+ #
198
+ # @param [string] id a resource identifier
199
+ # @return [NgrokAPI::Models::Empty] result from the API request
200
+ #
201
+ # https://ngrok.com/docs/api#api-edges-https-delete
202
+ def delete(id: "")
203
+ path = '/edges/https/%{id}'
204
+ replacements = {
205
+ id: id,
206
+ }
207
+ @client.delete(path % replacements)
208
+ end
209
+
210
+ ##
211
+ # Delete an HTTPS Edge by ID
212
+ # Throws an exception if API error.
213
+ #
214
+ # @param [string] id a resource identifier
215
+ # @return [NgrokAPI::Models::Empty] result from the API request
216
+ #
217
+ # https://ngrok.com/docs/api#api-edges-https-delete
218
+ def delete!(id: "")
219
+ path = '/edges/https/%{id}'
220
+ replacements = {
221
+ id: id,
222
+ }
223
+ @client.delete(path % replacements, danger: true)
224
+ end
225
+ end
226
+ end
227
+ end
@@ -0,0 +1,244 @@
1
+ # frozen_string_literal: true
2
+
3
+ module NgrokAPI
4
+ module Services
5
+ ##
6
+ # https://ngrok.com/docs/api#api-edges-https-routes
7
+ class EdgesHTTPSRoutesClient
8
+ # The API path for the requests
9
+ PATH = '/edges/https/%{edge_id}/routes'
10
+
11
+ attr_reader :client
12
+
13
+ def initialize(client:)
14
+ @client = client
15
+ end
16
+
17
+ ##
18
+ # Create an HTTPS Edge Route
19
+ #
20
+ # @param [string] edge_id unique identifier of this edge
21
+ # @param [string] match_type Type of match to use for this route. Valid values are "exact_path" and "path_prefix".
22
+ # @param [string] match Route selector: "/blog" or "example.com" or "example.com/blog"
23
+ # @param [string] description human-readable description of what this edge will be used for; optional, max 255 bytes.
24
+ # @param [string] metadata arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes.
25
+ # @param [EndpointBackendMutate] backend backend module configuration or ``null``
26
+ # @param [EndpointIPPolicyMutate] ip_restriction ip restriction module configuration or ``null``
27
+ # @param [EndpointCircuitBreaker] circuit_breaker circuit breaker module configuration or ``null``
28
+ # @param [EndpointCompression] compression compression module configuration or ``null``
29
+ # @param [EndpointRequestHeaders] request_headers request headers module configuration or ``null``
30
+ # @param [EndpointResponseHeaders] response_headers response headers module configuration or ``null``
31
+ # @param [EndpointWebhookValidation] webhook_verification webhook verification module configuration or ``null``
32
+ # @param [EndpointOAuth] oauth oauth module configuration or ``null``
33
+ # @param [EndpointSAMLMutate] saml saml module configuration or ``null``
34
+ # @param [EndpointOIDC] oidc oidc module configuration or ``null``
35
+ # @param [EndpointWebsocketTCPConverter] websocket_tcp_converter websocket to tcp adapter configuration or ``null``
36
+ # @return [NgrokAPI::Models::HTTPSEdgeRoute] result from the API request
37
+ #
38
+ # https://ngrok.com/docs/api#api-edges-https-routes-create
39
+ def create(edge_id: "", match_type:, match:, description: "", metadata: "", backend: nil, ip_restriction: nil, circuit_breaker: nil, compression: nil, request_headers: nil, response_headers: nil, webhook_verification: nil, oauth: nil, saml: nil, oidc: nil, websocket_tcp_converter: nil)
40
+ path = '/edges/https/%{edge_id}/routes'
41
+ replacements = {
42
+ edge_id: edge_id,
43
+ }
44
+ data = {}
45
+ data[:match_type] = match_type if match_type
46
+ data[:match] = match if match
47
+ data[:description] = description if description
48
+ data[:metadata] = metadata if metadata
49
+ data[:backend] = backend if backend
50
+ data[:ip_restriction] = ip_restriction if ip_restriction
51
+ data[:circuit_breaker] = circuit_breaker if circuit_breaker
52
+ data[:compression] = compression if compression
53
+ data[:request_headers] = request_headers if request_headers
54
+ data[:response_headers] = response_headers if response_headers
55
+ data[:webhook_verification] = webhook_verification if webhook_verification
56
+ data[:oauth] = oauth if oauth
57
+ data[:saml] = saml if saml
58
+ data[:oidc] = oidc if oidc
59
+ data[:websocket_tcp_converter] = websocket_tcp_converter if websocket_tcp_converter
60
+ result = @client.post(path % replacements, data: data)
61
+ NgrokAPI::Models::HTTPSEdgeRoute.new(client: self, result: result)
62
+ end
63
+
64
+ ##
65
+ # Get an HTTPS Edge Route by ID
66
+ #
67
+ # @param [string] edge_id unique identifier of this edge
68
+ # @param [string] id unique identifier of this edge route
69
+ # @return [NgrokAPI::Models::HTTPSEdgeRoute] result from the API request
70
+ #
71
+ # https://ngrok.com/docs/api#api-edges-https-routes-get
72
+ def get(edge_id: "", id: "")
73
+ path = '/edges/https/%{edge_id}/routes/%{id}'
74
+ replacements = {
75
+ edge_id: edge_id,
76
+ id: id,
77
+ }
78
+ data = {}
79
+ result = @client.get(path % replacements, data: data)
80
+ NgrokAPI::Models::HTTPSEdgeRoute.new(client: self, result: result)
81
+ end
82
+
83
+ ##
84
+ # Get an HTTPS Edge Route by ID
85
+ # Throws an exception if API error.
86
+ #
87
+ # @param [string] edge_id unique identifier of this edge
88
+ # @param [string] id unique identifier of this edge route
89
+ # @return [NgrokAPI::Models::HTTPSEdgeRoute] result from the API request
90
+ #
91
+ # https://ngrok.com/docs/api#api-edges-https-routes-get
92
+ def get!(edge_id: "", id: "")
93
+ path = '/edges/https/%{edge_id}/routes/%{id}'
94
+ replacements = {
95
+ edge_id: edge_id,
96
+ id: id,
97
+ }
98
+ data = {}
99
+ result = @client.get(path % replacements, data: data, danger: true)
100
+ NgrokAPI::Models::HTTPSEdgeRoute.new(client: self, result: result)
101
+ end
102
+
103
+ ##
104
+ # Updates an HTTPS Edge Route by ID. If a module is not specified in the update,
105
+ # it will not be modified. However, each module configuration that is specified
106
+ # will completely replace the existing value. There is no way to delete an
107
+ # existing module via this API, instead use the delete module API.
108
+ #
109
+ # @param [string] edge_id unique identifier of this edge
110
+ # @param [string] id unique identifier of this edge route
111
+ # @param [string] match_type Type of match to use for this route. Valid values are "exact_path" and "path_prefix".
112
+ # @param [string] match Route selector: "/blog" or "example.com" or "example.com/blog"
113
+ # @param [string] description human-readable description of what this edge will be used for; optional, max 255 bytes.
114
+ # @param [string] metadata arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes.
115
+ # @param [EndpointBackendMutate] backend backend module configuration or ``null``
116
+ # @param [EndpointIPPolicyMutate] ip_restriction ip restriction module configuration or ``null``
117
+ # @param [EndpointCircuitBreaker] circuit_breaker circuit breaker module configuration or ``null``
118
+ # @param [EndpointCompression] compression compression module configuration or ``null``
119
+ # @param [EndpointRequestHeaders] request_headers request headers module configuration or ``null``
120
+ # @param [EndpointResponseHeaders] response_headers response headers module configuration or ``null``
121
+ # @param [EndpointWebhookValidation] webhook_verification webhook verification module configuration or ``null``
122
+ # @param [EndpointOAuth] oauth oauth module configuration or ``null``
123
+ # @param [EndpointSAMLMutate] saml saml module configuration or ``null``
124
+ # @param [EndpointOIDC] oidc oidc module configuration or ``null``
125
+ # @param [EndpointWebsocketTCPConverter] websocket_tcp_converter websocket to tcp adapter configuration or ``null``
126
+ # @return [NgrokAPI::Models::HTTPSEdgeRoute] result from the API request
127
+ #
128
+ # https://ngrok.com/docs/api#api-edges-https-routes-update
129
+ def update(edge_id: "", id: "", match_type: "", match: "", description: "", metadata: "", backend: nil, ip_restriction: nil, circuit_breaker: nil, compression: nil, request_headers: nil, response_headers: nil, webhook_verification: nil, oauth: nil, saml: nil, oidc: nil, websocket_tcp_converter: nil)
130
+ path = '/edges/https/%{edge_id}/routes/%{id}'
131
+ replacements = {
132
+ edge_id: edge_id,
133
+ id: id,
134
+ }
135
+ data = {}
136
+ data[:match_type] = match_type if match_type
137
+ data[:match] = match if match
138
+ data[:description] = description if description
139
+ data[:metadata] = metadata if metadata
140
+ data[:backend] = backend if backend
141
+ data[:ip_restriction] = ip_restriction if ip_restriction
142
+ data[:circuit_breaker] = circuit_breaker if circuit_breaker
143
+ data[:compression] = compression if compression
144
+ data[:request_headers] = request_headers if request_headers
145
+ data[:response_headers] = response_headers if response_headers
146
+ data[:webhook_verification] = webhook_verification if webhook_verification
147
+ data[:oauth] = oauth if oauth
148
+ data[:saml] = saml if saml
149
+ data[:oidc] = oidc if oidc
150
+ data[:websocket_tcp_converter] = websocket_tcp_converter if websocket_tcp_converter
151
+ result = @client.patch(path % replacements, data: data)
152
+ NgrokAPI::Models::HTTPSEdgeRoute.new(client: self, result: result)
153
+ end
154
+
155
+ ##
156
+ # Updates an HTTPS Edge Route by ID. If a module is not specified in the update,
157
+ # it will not be modified. However, each module configuration that is specified
158
+ # will completely replace the existing value. There is no way to delete an
159
+ # existing module via this API, instead use the delete module API.
160
+ # Throws an exception if API error.
161
+ #
162
+ # @param [string] edge_id unique identifier of this edge
163
+ # @param [string] id unique identifier of this edge route
164
+ # @param [string] match_type Type of match to use for this route. Valid values are "exact_path" and "path_prefix".
165
+ # @param [string] match Route selector: "/blog" or "example.com" or "example.com/blog"
166
+ # @param [string] description human-readable description of what this edge will be used for; optional, max 255 bytes.
167
+ # @param [string] metadata arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes.
168
+ # @param [EndpointBackendMutate] backend backend module configuration or ``null``
169
+ # @param [EndpointIPPolicyMutate] ip_restriction ip restriction module configuration or ``null``
170
+ # @param [EndpointCircuitBreaker] circuit_breaker circuit breaker module configuration or ``null``
171
+ # @param [EndpointCompression] compression compression module configuration or ``null``
172
+ # @param [EndpointRequestHeaders] request_headers request headers module configuration or ``null``
173
+ # @param [EndpointResponseHeaders] response_headers response headers module configuration or ``null``
174
+ # @param [EndpointWebhookValidation] webhook_verification webhook verification module configuration or ``null``
175
+ # @param [EndpointOAuth] oauth oauth module configuration or ``null``
176
+ # @param [EndpointSAMLMutate] saml saml module configuration or ``null``
177
+ # @param [EndpointOIDC] oidc oidc module configuration or ``null``
178
+ # @param [EndpointWebsocketTCPConverter] websocket_tcp_converter websocket to tcp adapter configuration or ``null``
179
+ # @return [NgrokAPI::Models::HTTPSEdgeRoute] result from the API request
180
+ #
181
+ # https://ngrok.com/docs/api#api-edges-https-routes-update
182
+ def update!(edge_id: "", id: "", match_type: "", match: "", description: "", metadata: "", backend: nil, ip_restriction: nil, circuit_breaker: nil, compression: nil, request_headers: nil, response_headers: nil, webhook_verification: nil, oauth: nil, saml: nil, oidc: nil, websocket_tcp_converter: nil)
183
+ path = '/edges/https/%{edge_id}/routes/%{id}'
184
+ replacements = {
185
+ edge_id: edge_id,
186
+ id: id,
187
+ }
188
+ data = {}
189
+ data[:match_type] = match_type if match_type
190
+ data[:match] = match if match
191
+ data[:description] = description if description
192
+ data[:metadata] = metadata if metadata
193
+ data[:backend] = backend if backend
194
+ data[:ip_restriction] = ip_restriction if ip_restriction
195
+ data[:circuit_breaker] = circuit_breaker if circuit_breaker
196
+ data[:compression] = compression if compression
197
+ data[:request_headers] = request_headers if request_headers
198
+ data[:response_headers] = response_headers if response_headers
199
+ data[:webhook_verification] = webhook_verification if webhook_verification
200
+ data[:oauth] = oauth if oauth
201
+ data[:saml] = saml if saml
202
+ data[:oidc] = oidc if oidc
203
+ data[:websocket_tcp_converter] = websocket_tcp_converter if websocket_tcp_converter
204
+ result = @client.patch(path % replacements, data: data, danger: true)
205
+ NgrokAPI::Models::HTTPSEdgeRoute.new(client: self, result: result)
206
+ end
207
+
208
+ ##
209
+ # Delete an HTTPS Edge Route by ID
210
+ #
211
+ # @param [string] edge_id unique identifier of this edge
212
+ # @param [string] id unique identifier of this edge route
213
+ # @return [NgrokAPI::Models::Empty] result from the API request
214
+ #
215
+ # https://ngrok.com/docs/api#api-edges-https-routes-delete
216
+ def delete(edge_id: "", id: "")
217
+ path = '/edges/https/%{edge_id}/routes/%{id}'
218
+ replacements = {
219
+ edge_id: edge_id,
220
+ id: id,
221
+ }
222
+ @client.delete(path % replacements)
223
+ end
224
+
225
+ ##
226
+ # Delete an HTTPS Edge Route by ID
227
+ # Throws an exception if API error.
228
+ #
229
+ # @param [string] edge_id unique identifier of this edge
230
+ # @param [string] id unique identifier of this edge route
231
+ # @return [NgrokAPI::Models::Empty] result from the API request
232
+ #
233
+ # https://ngrok.com/docs/api#api-edges-https-routes-delete
234
+ def delete!(edge_id: "", id: "")
235
+ path = '/edges/https/%{edge_id}/routes/%{id}'
236
+ replacements = {
237
+ edge_id: edge_id,
238
+ id: id,
239
+ }
240
+ @client.delete(path % replacements, danger: true)
241
+ end
242
+ end
243
+ end
244
+ end