ngrok-api 0.9.0 → 0.16.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 (424) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +2 -2
  3. data/.yardopts +1 -0
  4. data/LICENSE +7 -0
  5. data/doc/NgrokAPI/Client.html +1469 -125
  6. data/doc/NgrokAPI/Error.html +3 -3
  7. data/doc/NgrokAPI/Errors/NotFoundError.html +3 -3
  8. data/doc/NgrokAPI/Errors.html +3 -3
  9. data/doc/NgrokAPI/HttpClient.html +66 -36
  10. data/doc/NgrokAPI/Models/{ApiKey.html → APIKey.html} +110 -179
  11. data/doc/NgrokAPI/Models/AWSAuth.html +617 -0
  12. data/doc/NgrokAPI/Models/AWSCredentials.html +617 -0
  13. data/doc/NgrokAPI/Models/AWSRole.html +543 -0
  14. data/doc/NgrokAPI/Models/AbuseReport.html +987 -0
  15. data/doc/NgrokAPI/Models/AbuseReportHostname.html +617 -0
  16. data/doc/NgrokAPI/Models/AgentIngress.html +1217 -0
  17. data/doc/NgrokAPI/Models/CertificateAuthority.html +1439 -0
  18. data/doc/NgrokAPI/Models/Credential.html +1149 -0
  19. data/doc/NgrokAPI/Models/EndpointCircuitBreaker.html +913 -0
  20. data/doc/NgrokAPI/Models/EndpointCompression.html +543 -0
  21. data/doc/NgrokAPI/Models/EndpointConfiguration.html +1323 -512
  22. data/doc/NgrokAPI/Models/EndpointIPPolicy.html +617 -0
  23. data/doc/NgrokAPI/Models/EndpointIPPolicyMutate.html +617 -0
  24. data/doc/NgrokAPI/Models/EndpointLogging.html +617 -0
  25. data/doc/NgrokAPI/Models/EndpointLoggingMutate.html +617 -0
  26. data/doc/NgrokAPI/Models/EndpointMutualTLS.html +617 -0
  27. data/doc/NgrokAPI/Models/EndpointMutualTLSMutate.html +617 -0
  28. data/doc/NgrokAPI/Models/EndpointOAuth.html +987 -0
  29. data/doc/NgrokAPI/Models/EndpointOAuthFacebook.html +839 -0
  30. data/doc/NgrokAPI/Models/EndpointOAuthGitHub.html +987 -0
  31. data/doc/NgrokAPI/Models/EndpointOAuthGoogle.html +839 -0
  32. data/doc/NgrokAPI/Models/EndpointOAuthMicrosoft.html +839 -0
  33. data/doc/NgrokAPI/Models/EndpointOAuthProvider.html +765 -0
  34. data/doc/NgrokAPI/Models/EndpointOIDC.html +1135 -0
  35. data/doc/NgrokAPI/Models/EndpointRequestHeaders.html +691 -0
  36. data/doc/NgrokAPI/Models/EndpointResponseHeaders.html +691 -0
  37. data/doc/NgrokAPI/Models/EndpointSAML.html +1653 -0
  38. data/doc/NgrokAPI/Models/EndpointSAMLMutate.html +1283 -0
  39. data/doc/NgrokAPI/Models/EndpointTLSTermination.html +691 -0
  40. data/doc/NgrokAPI/Models/EndpointWebhookValidation.html +691 -0
  41. data/doc/NgrokAPI/Models/EventDestination.html +1058 -0
  42. data/doc/NgrokAPI/Models/EventSource.html +765 -0
  43. data/doc/NgrokAPI/Models/EventSourceList.html +617 -0
  44. data/doc/NgrokAPI/Models/EventSourceReplace.html +691 -0
  45. data/doc/NgrokAPI/Models/EventStream.html +1309 -0
  46. data/doc/NgrokAPI/Models/EventSubscription.html +1058 -0
  47. data/doc/NgrokAPI/Models/EventTarget.html +765 -0
  48. data/doc/NgrokAPI/Models/EventTargetCloudwatchLogs.html +617 -0
  49. data/doc/NgrokAPI/Models/EventTargetFirehose.html +617 -0
  50. data/doc/NgrokAPI/Models/EventTargetKinesis.html +617 -0
  51. data/doc/NgrokAPI/Models/{TlsCertificate.html → IPPolicy.html} +172 -167
  52. data/doc/NgrokAPI/Models/IPPolicyRule.html +1149 -0
  53. data/doc/NgrokAPI/Models/IPRestriction.html +1132 -0
  54. data/doc/NgrokAPI/Models/Listable.html +120 -52
  55. data/doc/NgrokAPI/Models/Ref.html +617 -0
  56. data/doc/NgrokAPI/Models/ReservedAddr.html +1132 -0
  57. data/doc/NgrokAPI/Models/ReservedDomain.html +186 -1108
  58. data/doc/NgrokAPI/Models/ReservedDomainCertJob.html +765 -0
  59. data/doc/NgrokAPI/Models/ReservedDomainCertPolicy.html +617 -0
  60. data/doc/NgrokAPI/Models/ReservedDomainCertStatus.html +617 -0
  61. data/doc/NgrokAPI/Models/SSHCertificateAuthority.html +1143 -0
  62. data/doc/NgrokAPI/Models/SSHCredential.html +1149 -0
  63. data/doc/NgrokAPI/Models/SSHHostCertificate.html +1513 -0
  64. data/doc/NgrokAPI/Models/SSHUserCertificate.html +1661 -0
  65. data/doc/NgrokAPI/Models/TLSCertificate.html +2179 -0
  66. data/doc/NgrokAPI/Models/TLSCertificateSANs.html +617 -0
  67. data/doc/NgrokAPI/Models/Tunnel.html +987 -0
  68. data/doc/NgrokAPI/Models/TunnelSession.html +1209 -0
  69. data/doc/NgrokAPI/Models.html +6 -6
  70. data/doc/NgrokAPI/PagedIterator.html +16 -12
  71. data/{docs/NgrokAPI/Services/ApiKeysClient.html → doc/NgrokAPI/Services/APIKeysClient.html} +404 -153
  72. data/doc/NgrokAPI/Services/AbuseReportsClient.html +706 -0
  73. data/doc/NgrokAPI/Services/AgentIngressesClient.html +1600 -0
  74. data/doc/NgrokAPI/Services/CertificateAuthoritiesClient.html +1602 -0
  75. data/doc/NgrokAPI/Services/CredentialsClient.html +1644 -0
  76. data/doc/NgrokAPI/Services/EndpointCircuitBreakerModuleClient.html +1043 -0
  77. data/doc/NgrokAPI/Services/EndpointCompressionModuleClient.html +1043 -0
  78. data/doc/NgrokAPI/Services/EndpointConfigurationsClient.html +503 -370
  79. data/doc/NgrokAPI/Services/EndpointIPPolicyModuleClient.html +1043 -0
  80. data/doc/NgrokAPI/Services/EndpointLoggingModuleClient.html +1043 -0
  81. data/doc/NgrokAPI/Services/EndpointMutualTLSModuleClient.html +1043 -0
  82. data/doc/NgrokAPI/Services/EndpointOAuthModuleClient.html +1043 -0
  83. data/doc/NgrokAPI/Services/EndpointOIDCModuleClient.html +1043 -0
  84. data/doc/NgrokAPI/Services/EndpointRequestHeadersModuleClient.html +1043 -0
  85. data/doc/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html +1043 -0
  86. data/doc/NgrokAPI/Services/EndpointSAMLModuleClient.html +1043 -0
  87. data/doc/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html +1043 -0
  88. data/doc/NgrokAPI/Services/EndpointWebhookValidationModuleClient.html +1043 -0
  89. data/doc/NgrokAPI/Services/EventDestinationsClient.html +1712 -0
  90. data/doc/NgrokAPI/Services/EventSourcesClient.html +1532 -0
  91. data/doc/NgrokAPI/Services/EventStreamsClient.html +1792 -0
  92. data/doc/NgrokAPI/Services/EventSubscriptionsClient.html +1712 -0
  93. data/doc/NgrokAPI/Services/IPPoliciesClient.html +1602 -0
  94. data/doc/NgrokAPI/Services/IPPolicyRulesClient.html +1660 -0
  95. data/doc/NgrokAPI/Services/IPRestrictionsClient.html +1720 -0
  96. data/doc/NgrokAPI/Services/ReservedAddrsClient.html +1894 -0
  97. data/doc/NgrokAPI/Services/ReservedDomainsClient.html +585 -344
  98. data/doc/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +1644 -0
  99. data/doc/NgrokAPI/Services/SSHCredentialsClient.html +1662 -0
  100. data/doc/NgrokAPI/Services/SSHHostCertificatesClient.html +1680 -0
  101. data/doc/NgrokAPI/Services/SSHUserCertificatesClient.html +1720 -0
  102. data/{docs/NgrokAPI/Services/TlsCertificatesClient.html → doc/NgrokAPI/Services/TLSCertificatesClient.html} +404 -201
  103. data/doc/NgrokAPI/Services/TunnelSessionsClient.html +1587 -0
  104. data/doc/NgrokAPI/Services/TunnelsClient.html +669 -0
  105. data/doc/NgrokAPI/Services.html +6 -6
  106. data/doc/NgrokAPI.html +5 -5
  107. data/doc/README +94 -0
  108. data/doc/_index.html +621 -25
  109. data/doc/class_list.html +1 -1
  110. data/doc/file.README.html +55 -28
  111. data/doc/frames.html +1 -1
  112. data/doc/index.html +55 -28
  113. data/doc/method_list.html +7526 -286
  114. data/doc/top-level-namespace.html +3 -3
  115. data/docs/.gitkeep +0 -0
  116. data/docs/CNAME +1 -0
  117. data/docs/NgrokAPI/Client.html +1469 -125
  118. data/docs/NgrokAPI/Error.html +3 -3
  119. data/docs/NgrokAPI/Errors/NotFoundError.html +3 -3
  120. data/docs/NgrokAPI/Errors.html +3 -3
  121. data/docs/NgrokAPI/HttpClient.html +66 -36
  122. data/docs/NgrokAPI/Models/{ApiKey.html → APIKey.html} +110 -179
  123. data/docs/NgrokAPI/Models/AWSAuth.html +617 -0
  124. data/docs/NgrokAPI/Models/AWSCredentials.html +617 -0
  125. data/docs/NgrokAPI/Models/AWSRole.html +543 -0
  126. data/docs/NgrokAPI/Models/AbuseReport.html +987 -0
  127. data/docs/NgrokAPI/Models/AbuseReportHostname.html +617 -0
  128. data/docs/NgrokAPI/Models/AgentIngress.html +1217 -0
  129. data/docs/NgrokAPI/Models/CertificateAuthority.html +1439 -0
  130. data/docs/NgrokAPI/Models/Credential.html +1149 -0
  131. data/docs/NgrokAPI/Models/EndpointCircuitBreaker.html +913 -0
  132. data/docs/NgrokAPI/Models/EndpointCompression.html +543 -0
  133. data/docs/NgrokAPI/Models/EndpointConfiguration.html +1323 -512
  134. data/docs/NgrokAPI/Models/EndpointIPPolicy.html +617 -0
  135. data/docs/NgrokAPI/Models/EndpointIPPolicyMutate.html +617 -0
  136. data/docs/NgrokAPI/Models/EndpointLogging.html +617 -0
  137. data/docs/NgrokAPI/Models/EndpointLoggingMutate.html +617 -0
  138. data/docs/NgrokAPI/Models/EndpointMutualTLS.html +617 -0
  139. data/docs/NgrokAPI/Models/EndpointMutualTLSMutate.html +617 -0
  140. data/docs/NgrokAPI/Models/EndpointOAuth.html +987 -0
  141. data/docs/NgrokAPI/Models/EndpointOAuthFacebook.html +839 -0
  142. data/docs/NgrokAPI/Models/EndpointOAuthGitHub.html +987 -0
  143. data/docs/NgrokAPI/Models/EndpointOAuthGoogle.html +839 -0
  144. data/docs/NgrokAPI/Models/EndpointOAuthMicrosoft.html +839 -0
  145. data/docs/NgrokAPI/Models/EndpointOAuthProvider.html +765 -0
  146. data/docs/NgrokAPI/Models/EndpointOIDC.html +1135 -0
  147. data/docs/NgrokAPI/Models/EndpointRequestHeaders.html +691 -0
  148. data/docs/NgrokAPI/Models/EndpointResponseHeaders.html +691 -0
  149. data/docs/NgrokAPI/Models/EndpointSAML.html +1653 -0
  150. data/docs/NgrokAPI/Models/EndpointSAMLMutate.html +1283 -0
  151. data/docs/NgrokAPI/Models/EndpointTLSTermination.html +691 -0
  152. data/docs/NgrokAPI/Models/EndpointWebhookValidation.html +691 -0
  153. data/docs/NgrokAPI/Models/EventDestination.html +1058 -0
  154. data/docs/NgrokAPI/Models/EventSource.html +765 -0
  155. data/docs/NgrokAPI/Models/EventSourceList.html +617 -0
  156. data/docs/NgrokAPI/Models/EventSourceReplace.html +691 -0
  157. data/docs/NgrokAPI/Models/EventStream.html +1309 -0
  158. data/docs/NgrokAPI/Models/EventSubscription.html +1058 -0
  159. data/docs/NgrokAPI/Models/EventTarget.html +765 -0
  160. data/docs/NgrokAPI/Models/EventTargetCloudwatchLogs.html +617 -0
  161. data/docs/NgrokAPI/Models/EventTargetFirehose.html +617 -0
  162. data/docs/NgrokAPI/Models/EventTargetKinesis.html +617 -0
  163. data/docs/NgrokAPI/Models/{TlsCertificate.html → IPPolicy.html} +172 -167
  164. data/docs/NgrokAPI/Models/IPPolicyRule.html +1149 -0
  165. data/docs/NgrokAPI/Models/IPRestriction.html +1132 -0
  166. data/docs/NgrokAPI/Models/Listable.html +120 -52
  167. data/docs/NgrokAPI/Models/Ref.html +617 -0
  168. data/docs/NgrokAPI/Models/ReservedAddr.html +1132 -0
  169. data/docs/NgrokAPI/Models/ReservedDomain.html +186 -1108
  170. data/docs/NgrokAPI/Models/ReservedDomainCertJob.html +765 -0
  171. data/docs/NgrokAPI/Models/ReservedDomainCertPolicy.html +617 -0
  172. data/docs/NgrokAPI/Models/ReservedDomainCertStatus.html +617 -0
  173. data/docs/NgrokAPI/Models/SSHCertificateAuthority.html +1143 -0
  174. data/docs/NgrokAPI/Models/SSHCredential.html +1149 -0
  175. data/docs/NgrokAPI/Models/SSHHostCertificate.html +1513 -0
  176. data/docs/NgrokAPI/Models/SSHUserCertificate.html +1661 -0
  177. data/docs/NgrokAPI/Models/TLSCertificate.html +2179 -0
  178. data/docs/NgrokAPI/Models/TLSCertificateSANs.html +617 -0
  179. data/docs/NgrokAPI/Models/Tunnel.html +987 -0
  180. data/docs/NgrokAPI/Models/TunnelSession.html +1209 -0
  181. data/docs/NgrokAPI/Models.html +6 -6
  182. data/docs/NgrokAPI/PagedIterator.html +16 -12
  183. data/{doc/NgrokAPI/Services/ApiKeysClient.html → docs/NgrokAPI/Services/APIKeysClient.html} +404 -153
  184. data/docs/NgrokAPI/Services/AbuseReportsClient.html +706 -0
  185. data/docs/NgrokAPI/Services/AgentIngressesClient.html +1600 -0
  186. data/docs/NgrokAPI/Services/CertificateAuthoritiesClient.html +1602 -0
  187. data/docs/NgrokAPI/Services/CredentialsClient.html +1644 -0
  188. data/docs/NgrokAPI/Services/EndpointCircuitBreakerModuleClient.html +1043 -0
  189. data/docs/NgrokAPI/Services/EndpointCompressionModuleClient.html +1043 -0
  190. data/docs/NgrokAPI/Services/EndpointConfigurationsClient.html +503 -370
  191. data/docs/NgrokAPI/Services/EndpointIPPolicyModuleClient.html +1043 -0
  192. data/docs/NgrokAPI/Services/EndpointLoggingModuleClient.html +1043 -0
  193. data/docs/NgrokAPI/Services/EndpointMutualTLSModuleClient.html +1043 -0
  194. data/docs/NgrokAPI/Services/EndpointOAuthModuleClient.html +1043 -0
  195. data/docs/NgrokAPI/Services/EndpointOIDCModuleClient.html +1043 -0
  196. data/docs/NgrokAPI/Services/EndpointRequestHeadersModuleClient.html +1043 -0
  197. data/docs/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html +1043 -0
  198. data/docs/NgrokAPI/Services/EndpointSAMLModuleClient.html +1043 -0
  199. data/docs/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html +1043 -0
  200. data/docs/NgrokAPI/Services/EndpointWebhookValidationModuleClient.html +1043 -0
  201. data/docs/NgrokAPI/Services/EventDestinationsClient.html +1712 -0
  202. data/docs/NgrokAPI/Services/EventSourcesClient.html +1532 -0
  203. data/docs/NgrokAPI/Services/EventStreamsClient.html +1792 -0
  204. data/docs/NgrokAPI/Services/EventSubscriptionsClient.html +1712 -0
  205. data/docs/NgrokAPI/Services/IPPoliciesClient.html +1602 -0
  206. data/docs/NgrokAPI/Services/IPPolicyRulesClient.html +1660 -0
  207. data/docs/NgrokAPI/Services/IPRestrictionsClient.html +1720 -0
  208. data/docs/NgrokAPI/Services/ReservedAddrsClient.html +1894 -0
  209. data/docs/NgrokAPI/Services/ReservedDomainsClient.html +585 -344
  210. data/docs/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +1644 -0
  211. data/docs/NgrokAPI/Services/SSHCredentialsClient.html +1662 -0
  212. data/docs/NgrokAPI/Services/SSHHostCertificatesClient.html +1680 -0
  213. data/docs/NgrokAPI/Services/SSHUserCertificatesClient.html +1720 -0
  214. data/{doc/NgrokAPI/Services/TlsCertificatesClient.html → docs/NgrokAPI/Services/TLSCertificatesClient.html} +404 -201
  215. data/docs/NgrokAPI/Services/TunnelSessionsClient.html +1587 -0
  216. data/docs/NgrokAPI/Services/TunnelsClient.html +669 -0
  217. data/docs/NgrokAPI/Services.html +6 -6
  218. data/docs/NgrokAPI.html +5 -5
  219. data/docs/README +94 -0
  220. data/docs/_index.html +621 -25
  221. data/docs/class_list.html +1 -1
  222. data/docs/file.README.html +55 -28
  223. data/docs/frames.html +1 -1
  224. data/docs/index.html +55 -28
  225. data/docs/method_list.html +7526 -286
  226. data/docs/top-level-namespace.html +3 -3
  227. data/lib/ngrokapi/client.rb +229 -49
  228. data/lib/ngrokapi/http_client.rb +6 -7
  229. data/lib/ngrokapi/models/abuse_report.rb +37 -0
  230. data/lib/ngrokapi/models/abuse_report_hostname.rb +27 -0
  231. data/lib/ngrokapi/models/agent_ingress.rb +66 -0
  232. data/lib/ngrokapi/models/api_key.rb +62 -64
  233. data/lib/ngrokapi/models/aws_auth.rb +27 -0
  234. data/lib/ngrokapi/models/aws_credentials.rb +27 -0
  235. data/lib/ngrokapi/models/aws_role.rb +25 -0
  236. data/lib/ngrokapi/models/certificate_authority.rb +72 -0
  237. data/lib/ngrokapi/models/credential.rb +67 -0
  238. data/lib/ngrokapi/models/endpoint_circuit_breaker.rb +35 -0
  239. data/lib/ngrokapi/models/endpoint_compression.rb +25 -0
  240. data/lib/ngrokapi/models/endpoint_configuration.rb +130 -119
  241. data/lib/ngrokapi/models/endpoint_ip_policy.rb +27 -0
  242. data/lib/ngrokapi/models/endpoint_ip_policy_mutate.rb +27 -0
  243. data/lib/ngrokapi/models/endpoint_logging.rb +27 -0
  244. data/lib/ngrokapi/models/endpoint_logging_mutate.rb +27 -0
  245. data/lib/ngrokapi/models/endpoint_mutual_tls.rb +27 -0
  246. data/lib/ngrokapi/models/endpoint_mutual_tls_mutate.rb +27 -0
  247. data/lib/ngrokapi/models/endpoint_o_auth.rb +37 -0
  248. data/lib/ngrokapi/models/endpoint_o_auth_facebook.rb +33 -0
  249. data/lib/ngrokapi/models/endpoint_o_auth_git_hub.rb +37 -0
  250. data/lib/ngrokapi/models/endpoint_o_auth_google.rb +33 -0
  251. data/lib/ngrokapi/models/endpoint_o_auth_microsoft.rb +33 -0
  252. data/lib/ngrokapi/models/endpoint_o_auth_provider.rb +31 -0
  253. data/lib/ngrokapi/models/endpoint_oidc.rb +41 -0
  254. data/lib/ngrokapi/models/endpoint_request_headers.rb +29 -0
  255. data/lib/ngrokapi/models/endpoint_response_headers.rb +29 -0
  256. data/lib/ngrokapi/models/endpoint_saml.rb +55 -0
  257. data/lib/ngrokapi/models/endpoint_saml_mutate.rb +45 -0
  258. data/lib/ngrokapi/models/endpoint_tls_termination.rb +29 -0
  259. data/lib/ngrokapi/models/endpoint_webhook_validation.rb +29 -0
  260. data/lib/ngrokapi/models/event_destination.rb +49 -0
  261. data/lib/ngrokapi/models/event_source.rb +31 -0
  262. data/lib/ngrokapi/models/event_source_list.rb +27 -0
  263. data/lib/ngrokapi/models/event_source_replace.rb +29 -0
  264. data/lib/ngrokapi/models/event_stream.rb +77 -0
  265. data/lib/ngrokapi/models/event_subscription.rb +47 -0
  266. data/lib/ngrokapi/models/event_target.rb +31 -0
  267. data/lib/ngrokapi/models/event_target_cloudwatch_logs.rb +27 -0
  268. data/lib/ngrokapi/models/event_target_firehose.rb +27 -0
  269. data/lib/ngrokapi/models/event_target_kinesis.rb +27 -0
  270. data/lib/ngrokapi/models/ip_policy.rb +64 -0
  271. data/lib/ngrokapi/models/ip_policy_rule.rb +67 -0
  272. data/lib/ngrokapi/models/ip_restriction.rb +49 -0
  273. data/lib/ngrokapi/models/listable.rb +13 -2
  274. data/lib/ngrokapi/models/ref.rb +27 -0
  275. data/lib/ngrokapi/models/reserved_addr.rb +49 -0
  276. data/lib/ngrokapi/models/reserved_domain.rb +61 -211
  277. data/lib/ngrokapi/models/reserved_domain_cert_job.rb +31 -0
  278. data/lib/ngrokapi/models/reserved_domain_cert_policy.rb +27 -0
  279. data/lib/ngrokapi/models/reserved_domain_cert_status.rb +27 -0
  280. data/lib/ngrokapi/models/ssh_certificate_authority.rb +64 -0
  281. data/lib/ngrokapi/models/ssh_credential.rb +67 -0
  282. data/lib/ngrokapi/models/ssh_host_certificate.rb +74 -0
  283. data/lib/ngrokapi/models/ssh_user_certificate.rb +78 -0
  284. data/lib/ngrokapi/models/tls_certificate.rb +92 -62
  285. data/lib/ngrokapi/models/tls_certificate_sa_ns.rb +27 -0
  286. data/lib/ngrokapi/models/tunnel.rb +37 -0
  287. data/lib/ngrokapi/models/tunnel_session.rb +43 -0
  288. data/lib/ngrokapi/paged_iterator.rb +4 -2
  289. data/lib/ngrokapi/services/.gitkeep +0 -0
  290. data/lib/ngrokapi/services/abuse_reports_client.rb +77 -0
  291. data/lib/ngrokapi/services/agent_ingresses_client.rb +206 -0
  292. data/lib/ngrokapi/services/api_keys_client.rb +210 -144
  293. data/lib/ngrokapi/services/certificate_authorities_client.rb +211 -0
  294. data/lib/ngrokapi/services/credentials_client.rb +217 -0
  295. data/lib/ngrokapi/services/endpoint_circuit_breaker_module_client.rb +108 -0
  296. data/lib/ngrokapi/services/endpoint_compression_module_client.rb +108 -0
  297. data/lib/ngrokapi/services/endpoint_configurations_client.rb +289 -313
  298. data/lib/ngrokapi/services/endpoint_ip_policy_module_client.rb +108 -0
  299. data/lib/ngrokapi/services/endpoint_logging_module_client.rb +108 -0
  300. data/lib/ngrokapi/services/endpoint_mutual_tls_module_client.rb +108 -0
  301. data/lib/ngrokapi/services/endpoint_o_auth_module_client.rb +108 -0
  302. data/lib/ngrokapi/services/endpoint_oidc_module_client.rb +108 -0
  303. data/lib/ngrokapi/services/endpoint_request_headers_module_client.rb +108 -0
  304. data/lib/ngrokapi/services/endpoint_response_headers_module_client.rb +108 -0
  305. data/lib/ngrokapi/services/endpoint_saml_module_client.rb +108 -0
  306. data/lib/ngrokapi/services/endpoint_tls_termination_module_client.rb +108 -0
  307. data/lib/ngrokapi/services/endpoint_webhook_validation_module_client.rb +108 -0
  308. data/lib/ngrokapi/services/event_destinations_client.rb +221 -0
  309. data/lib/ngrokapi/services/event_sources_client.rb +185 -0
  310. data/lib/ngrokapi/services/event_streams_client.rb +224 -0
  311. data/lib/ngrokapi/services/event_subscriptions_client.rb +215 -0
  312. data/lib/ngrokapi/services/ip_policies_client.rb +215 -0
  313. data/lib/ngrokapi/services/ip_policy_rules_client.rb +214 -0
  314. data/lib/ngrokapi/services/ip_restrictions_client.rb +224 -0
  315. data/lib/ngrokapi/services/reserved_addrs_client.rb +246 -0
  316. data/lib/ngrokapi/services/reserved_domains_client.rb +360 -313
  317. data/lib/ngrokapi/services/ssh_certificate_authorities_client.rb +212 -0
  318. data/lib/ngrokapi/services/ssh_credentials_client.rb +215 -0
  319. data/lib/ngrokapi/services/ssh_host_certificates_client.rb +217 -0
  320. data/lib/ngrokapi/services/ssh_user_certificates_client.rb +221 -0
  321. data/lib/ngrokapi/services/tls_certificates_client.rb +213 -161
  322. data/lib/ngrokapi/services/tunnel_sessions_client.rb +237 -0
  323. data/lib/ngrokapi/services/tunnels_client.rb +78 -0
  324. data/lib/ngrokapi/version.rb +1 -1
  325. data/lib/ngrokapi.rb +1 -1
  326. data/ngrok-api.gemspec +1 -1
  327. data/spec/ngrokapi/client_spec.rb +158 -33
  328. data/spec/ngrokapi/models/abuse_report_hostname_spec.rb +21 -0
  329. data/spec/ngrokapi/models/abuse_report_spec.rb +21 -0
  330. data/spec/ngrokapi/models/agent_ingress_spec.rb +42 -0
  331. data/spec/ngrokapi/models/api_key_spec.rb +42 -43
  332. data/spec/ngrokapi/models/aws_auth_spec.rb +21 -0
  333. data/spec/ngrokapi/models/aws_credentials_spec.rb +21 -0
  334. data/spec/ngrokapi/models/aws_role_spec.rb +21 -0
  335. data/spec/ngrokapi/models/certificate_authority_spec.rb +42 -0
  336. data/spec/ngrokapi/models/credential_spec.rb +45 -0
  337. data/spec/ngrokapi/models/endpoint_circuit_breaker_spec.rb +21 -0
  338. data/spec/ngrokapi/models/endpoint_compression_spec.rb +21 -0
  339. data/spec/ngrokapi/models/endpoint_configuration_spec.rb +78 -0
  340. data/spec/ngrokapi/models/endpoint_ip_policy_mutate_spec.rb +21 -0
  341. data/spec/ngrokapi/models/endpoint_ip_policy_spec.rb +21 -0
  342. data/spec/ngrokapi/models/endpoint_logging_mutate_spec.rb +21 -0
  343. data/spec/ngrokapi/models/endpoint_logging_spec.rb +21 -0
  344. data/spec/ngrokapi/models/endpoint_mutual_tls_mutate_spec.rb +21 -0
  345. data/spec/ngrokapi/models/endpoint_mutual_tls_spec.rb +21 -0
  346. data/spec/ngrokapi/models/endpoint_o_auth_facebook_spec.rb +21 -0
  347. data/spec/ngrokapi/models/endpoint_o_auth_git_hub_spec.rb +21 -0
  348. data/spec/ngrokapi/models/endpoint_o_auth_google_spec.rb +21 -0
  349. data/spec/ngrokapi/models/endpoint_o_auth_microsoft_spec.rb +21 -0
  350. data/spec/ngrokapi/models/endpoint_o_auth_provider_spec.rb +21 -0
  351. data/spec/ngrokapi/models/endpoint_o_auth_spec.rb +21 -0
  352. data/spec/ngrokapi/models/endpoint_oidc_spec.rb +21 -0
  353. data/spec/ngrokapi/models/endpoint_request_headers_spec.rb +21 -0
  354. data/spec/ngrokapi/models/endpoint_response_headers_spec.rb +21 -0
  355. data/spec/ngrokapi/models/endpoint_saml_mutate_spec.rb +21 -0
  356. data/spec/ngrokapi/models/endpoint_saml_spec.rb +21 -0
  357. data/spec/ngrokapi/models/endpoint_tls_termination_spec.rb +21 -0
  358. data/spec/ngrokapi/models/endpoint_webhook_validation_spec.rb +21 -0
  359. data/spec/ngrokapi/models/event_destination_spec.rb +28 -0
  360. data/spec/ngrokapi/models/event_source_list_spec.rb +21 -0
  361. data/spec/ngrokapi/models/event_source_replace_spec.rb +21 -0
  362. data/spec/ngrokapi/models/event_source_spec.rb +21 -0
  363. data/spec/ngrokapi/models/event_stream_spec.rb +51 -0
  364. data/spec/ngrokapi/models/event_subscription_spec.rb +28 -0
  365. data/spec/ngrokapi/models/event_target_cloudwatch_logs_spec.rb +21 -0
  366. data/spec/ngrokapi/models/event_target_firehose_spec.rb +21 -0
  367. data/spec/ngrokapi/models/event_target_kinesis_spec.rb +21 -0
  368. data/spec/ngrokapi/models/event_target_spec.rb +21 -0
  369. data/spec/ngrokapi/models/ip_policy_rule_spec.rb +45 -0
  370. data/spec/ngrokapi/models/ip_policy_spec.rb +42 -0
  371. data/spec/ngrokapi/models/ip_restriction_spec.rb +28 -0
  372. data/spec/ngrokapi/models/listable_spec.rb +4 -4
  373. data/spec/ngrokapi/models/ref_spec.rb +21 -0
  374. data/spec/ngrokapi/models/reserved_addr_spec.rb +28 -0
  375. data/spec/ngrokapi/models/reserved_domain_cert_job_spec.rb +21 -0
  376. data/spec/ngrokapi/models/reserved_domain_cert_policy_spec.rb +21 -0
  377. data/spec/ngrokapi/models/reserved_domain_cert_status_spec.rb +21 -0
  378. data/spec/ngrokapi/models/reserved_domain_spec.rb +28 -100
  379. data/spec/ngrokapi/models/ssh_certificate_authority_spec.rb +42 -0
  380. data/spec/ngrokapi/models/ssh_credential_spec.rb +45 -0
  381. data/spec/ngrokapi/models/ssh_host_certificate_spec.rb +42 -0
  382. data/spec/ngrokapi/models/ssh_user_certificate_spec.rb +42 -0
  383. data/spec/ngrokapi/models/tls_certificate_sa_ns_spec.rb +21 -0
  384. data/spec/ngrokapi/models/tls_certificate_spec.rb +42 -0
  385. data/spec/ngrokapi/models/tunnel_session_spec.rb +21 -0
  386. data/spec/ngrokapi/models/tunnel_spec.rb +21 -0
  387. data/spec/ngrokapi/paged_iterator_spec.rb +7 -7
  388. data/spec/ngrokapi/services/.gitkeep +0 -0
  389. data/spec/ngrokapi/services/abuse_reports_client_spec.rb +65 -0
  390. data/spec/ngrokapi/services/agent_ingresses_client_spec.rb +159 -0
  391. data/spec/ngrokapi/services/api_keys_client_spec.rb +157 -127
  392. data/spec/ngrokapi/services/certificate_authorities_client_spec.rb +159 -0
  393. data/spec/ngrokapi/services/credentials_client_spec.rb +163 -0
  394. data/spec/ngrokapi/services/endpoint_circuit_breaker_module_client_spec.rb +125 -0
  395. data/spec/ngrokapi/services/endpoint_compression_module_client_spec.rb +125 -0
  396. data/spec/ngrokapi/services/endpoint_configurations_client_spec.rb +237 -0
  397. data/spec/ngrokapi/services/endpoint_ip_policy_module_client_spec.rb +125 -0
  398. data/spec/ngrokapi/services/endpoint_logging_module_client_spec.rb +125 -0
  399. data/spec/ngrokapi/services/endpoint_mutual_tls_module_client_spec.rb +125 -0
  400. data/spec/ngrokapi/services/endpoint_o_auth_module_client_spec.rb +125 -0
  401. data/spec/ngrokapi/services/endpoint_oidc_module_client_spec.rb +125 -0
  402. data/spec/ngrokapi/services/endpoint_request_headers_module_client_spec.rb +125 -0
  403. data/spec/ngrokapi/services/endpoint_response_headers_module_client_spec.rb +125 -0
  404. data/spec/ngrokapi/services/endpoint_saml_module_client_spec.rb +125 -0
  405. data/spec/ngrokapi/services/endpoint_tls_termination_module_client_spec.rb +125 -0
  406. data/spec/ngrokapi/services/endpoint_webhook_validation_module_client_spec.rb +125 -0
  407. data/spec/ngrokapi/services/event_destinations_client_spec.rb +172 -0
  408. data/spec/ngrokapi/services/event_sources_client_spec.rb +192 -0
  409. data/spec/ngrokapi/services/event_streams_client_spec.rb +177 -0
  410. data/spec/ngrokapi/services/event_subscriptions_client_spec.rb +169 -0
  411. data/spec/ngrokapi/services/ip_policies_client_spec.rb +159 -0
  412. data/spec/ngrokapi/services/ip_policy_rules_client_spec.rb +165 -0
  413. data/spec/ngrokapi/services/ip_restrictions_client_spec.rb +171 -0
  414. data/spec/ngrokapi/services/reserved_addrs_client_spec.rb +206 -0
  415. data/spec/ngrokapi/services/reserved_domains_client_spec.rb +349 -0
  416. data/spec/ngrokapi/services/ssh_certificate_authorities_client_spec.rb +163 -0
  417. data/spec/ngrokapi/services/ssh_credentials_client_spec.rb +165 -0
  418. data/spec/ngrokapi/services/ssh_host_certificates_client_spec.rb +167 -0
  419. data/spec/ngrokapi/services/ssh_user_certificates_client_spec.rb +171 -0
  420. data/spec/ngrokapi/services/tls_certificates_client_spec.rb +161 -0
  421. data/spec/ngrokapi/services/tunnel_sessions_client_spec.rb +183 -0
  422. data/spec/ngrokapi/services/tunnels_client_spec.rb +21 -0
  423. data/spec/spec_helper.rb +1096 -80
  424. metadata +360 -11
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Top Level Namespace
8
8
 
9
- &mdash; Documentation by YARD 0.9.26
9
+ &mdash; Documentation by YARD 0.9.27
10
10
 
11
11
  </title>
12
12
 
@@ -100,9 +100,9 @@
100
100
  </div>
101
101
 
102
102
  <div id="footer">
103
- Generated on Fri Sep 24 19:20:29 2021 by
103
+ Generated on Thu Dec 2 18:48:49 2021 by
104
104
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
105
- 0.9.26 (ruby-3.0.1).
105
+ 0.9.27 (ruby-3.0.1).
106
106
  </div>
107
107
 
108
108
  </div>
@@ -1,49 +1,229 @@
1
- # frozen_string_literal: true
2
-
3
- module NgrokAPI
4
- ##
5
- # Low-level api client for communicating with Ngrok's HTTP API.
6
- # Use this object to instantiate your clients.
7
- class Client
8
- def initialize(
9
- api_key:,
10
- base_url: 'https://api.ngrok.com'
11
- )
12
- @client = NgrokAPI::HttpClient.new(api_key: api_key, base_url: base_url)
13
- end
14
-
15
- ##
16
- # Creates and returns an instance of a NgrokAPI::Services::ApiKeysClient
17
- #
18
- # @return [NgrokAPI::Services::ApiKeysClient]
19
- def api_keys
20
- @_api_keys ||= NgrokAPI::Services::ApiKeysClient.new(client: @client)
21
- end
22
-
23
- ##
24
- # Creates and returns an instance of a NgrokAPI::Services::EndpointConfigurationsClient
25
- #
26
- # @return [NgrokAPI::Services::EndpointConfigurationsClient]
27
- def endpoint_configurations
28
- @_endpoint_configurations ||= NgrokAPI::Services::EndpointConfigurationsClient.new(
29
- client: @client
30
- )
31
- end
32
-
33
- ##
34
- # Creates and returns an instance of a NgrokAPI::Services::ReservedDomainsClient
35
- #
36
- # @return [NgrokAPI::Services::ReservedDomainsClient]
37
- def reserved_domains
38
- @_reserved_domains ||= NgrokAPI::Services::ReservedDomainsClient.new(client: @client)
39
- end
40
-
41
- ##
42
- # Creates and returns an instance of a NgrokAPI::Services::TlsCertificatesClient
43
- #
44
- # @return [NgrokAPI::Services::TlsCertificatesClient]
45
- def tls_certificates
46
- @_tls_certificates ||= NgrokAPI::Services::TlsCertificatesClient.new(client: @client)
47
- end
48
- end
49
- end
1
+ # frozen_string_literal: true
2
+
3
+ require 'ostruct'
4
+
5
+ module NgrokAPI
6
+ ##
7
+ # Low-level api client for communicating with Ngrok's HTTP API.
8
+ # Use this object to instantiate your clients.
9
+ class Client
10
+ def initialize(api_key:, base_url: 'https://api.ngrok.com')
11
+ @client = NgrokAPI::HttpClient.new(api_key: api_key, base_url: base_url)
12
+ end
13
+
14
+ ##
15
+ # Abuse Reports allow you to submit take-down requests for URLs hosted by
16
+ # ngrok that violate ngrok's terms of service.
17
+ #
18
+ # @return [NgrokAPI::Services::AbuseReportsClient]
19
+ def abuse_reports
20
+ @_abuse_reports ||= NgrokAPI::Services::AbuseReportsClient.new(client: @client)
21
+ end
22
+
23
+ def agent_ingresses
24
+ @_agent_ingresses ||= NgrokAPI::Services::AgentIngressesClient.new(client: @client)
25
+ end
26
+
27
+ ##
28
+ # API Keys are used to authenticate to the [ngrok
29
+ # API](https://ngrok.com/docs/api#authentication). You may use the API itself
30
+ # to provision and manage API Keys but you'll need to provision your first API
31
+ # key from the [API Keys page](https://dashboard.ngrok.com/api/keys) on your
32
+ # ngrok.com dashboard.
33
+ #
34
+ # @return [NgrokAPI::Services::APIKeysClient]
35
+ def api_keys
36
+ @_api_keys ||= NgrokAPI::Services::APIKeysClient.new(client: @client)
37
+ end
38
+
39
+ ##
40
+ # Certificate Authorities are x509 certificates that are used to sign other
41
+ # x509 certificates. Attach a Certificate Authority to the Mutual TLS module
42
+ # to verify that the TLS certificate presented by a client has been signed by
43
+ # this CA. Certificate Authorities are used only for mTLS validation only and
44
+ # thus a private key is not included in the resource.
45
+ #
46
+ # @return [NgrokAPI::Services::CertificateAuthoritiesClient]
47
+ def certificate_authorities
48
+ @_certificate_authorities ||= NgrokAPI::Services::CertificateAuthoritiesClient.new(client: @client)
49
+ end
50
+
51
+ ##
52
+ # Tunnel Credentials are ngrok agent authtokens. They authorize the ngrok
53
+ # agent to connect the ngrok service as your account. They are installed with
54
+ # the `ngrok authtoken` command or by specifying it in the `ngrok.yml`
55
+ # configuration file with the `authtoken` property.
56
+ #
57
+ # @return [NgrokAPI::Services::CredentialsClient]
58
+ def credentials
59
+ @_credentials ||= NgrokAPI::Services::CredentialsClient.new(client: @client)
60
+ end
61
+
62
+ ##
63
+ # Endpoint Configurations are a reusable group of modules that encapsulate how
64
+ # traffic to a domain or address is handled. Endpoint configurations are only
65
+ # applied to Domains and TCP Addresses they have been attached to.
66
+ #
67
+ # @return [NgrokAPI::Services::EndpointConfigurationsClient]
68
+ def endpoint_configurations
69
+ @_endpoint_configurations ||= NgrokAPI::Services::EndpointConfigurationsClient.new(client: @client)
70
+ end
71
+
72
+ def event_streams
73
+ @_event_streams ||= NgrokAPI::Services::EventStreamsClient.new(client: @client)
74
+ end
75
+
76
+ def event_destinations
77
+ @_event_destinations ||= NgrokAPI::Services::EventDestinationsClient.new(client: @client)
78
+ end
79
+
80
+ def event_subscriptions
81
+ @_event_subscriptions ||= NgrokAPI::Services::EventSubscriptionsClient.new(client: @client)
82
+ end
83
+
84
+ def event_sources
85
+ @_event_sources ||= NgrokAPI::Services::EventSourcesClient.new(client: @client)
86
+ end
87
+
88
+ ##
89
+ # IP Policies are reusable groups of CIDR ranges with an `allow` or `deny`
90
+ # action. They can be attached to endpoints via the Endpoint Configuration IP
91
+ # Policy module. They can also be used with IP Restrictions to control source
92
+ # IP ranges that can start tunnel sessions and connect to the API and dashboard.
93
+ #
94
+ # @return [NgrokAPI::Services::IPPoliciesClient]
95
+ def ip_policies
96
+ @_ip_policies ||= NgrokAPI::Services::IPPoliciesClient.new(client: @client)
97
+ end
98
+
99
+ ##
100
+ # IP Policy Rules are the IPv4 or IPv6 CIDRs entries that
101
+ # make up an IP Policy.
102
+ #
103
+ # @return [NgrokAPI::Services::IPPolicyRulesClient]
104
+ def ip_policy_rules
105
+ @_ip_policy_rules ||= NgrokAPI::Services::IPPolicyRulesClient.new(client: @client)
106
+ end
107
+
108
+ ##
109
+ # An IP restriction is a restriction placed on the CIDRs that are allowed to
110
+ # initate traffic to a specific aspect of your ngrok account. An IP
111
+ # restriction has a type which defines the ingress it applies to. IP
112
+ # restrictions can be used to enforce the source IPs that can make API
113
+ # requests, log in to the dashboard, start ngrok agents, and connect to your
114
+ # public-facing endpoints.
115
+ #
116
+ # @return [NgrokAPI::Services::IPRestrictionsClient]
117
+ def ip_restrictions
118
+ @_ip_restrictions ||= NgrokAPI::Services::IPRestrictionsClient.new(client: @client)
119
+ end
120
+
121
+ ##
122
+ # Reserved Addresses are TCP addresses that can be used to listen for traffic.
123
+ # TCP address hostnames and ports are assigned by ngrok, they cannot be
124
+ # chosen.
125
+ #
126
+ # @return [NgrokAPI::Services::ReservedAddrsClient]
127
+ def reserved_addrs
128
+ @_reserved_addrs ||= NgrokAPI::Services::ReservedAddrsClient.new(client: @client)
129
+ end
130
+
131
+ ##
132
+ # Reserved Domains are hostnames that you can listen for traffic on. Domains
133
+ # can be used to listen for http, https or tls traffic. You may use a domain
134
+ # that you own by creating a CNAME record specified in the returned resource.
135
+ # This CNAME record points traffic for that domain to ngrok's edge servers.
136
+ #
137
+ # @return [NgrokAPI::Services::ReservedDomainsClient]
138
+ def reserved_domains
139
+ @_reserved_domains ||= NgrokAPI::Services::ReservedDomainsClient.new(client: @client)
140
+ end
141
+
142
+ ##
143
+ # An SSH Certificate Authority is a pair of an SSH Certificate and its private
144
+ # key that can be used to sign other SSH host and user certificates.
145
+ #
146
+ # @return [NgrokAPI::Services::SSHCertificateAuthoritiesClient]
147
+ def ssh_certificate_authorities
148
+ @_ssh_certificate_authorities ||= NgrokAPI::Services::SSHCertificateAuthoritiesClient.new(client: @client)
149
+ end
150
+
151
+ ##
152
+ # SSH Credentials are SSH public keys that can be used to start SSH tunnels
153
+ # via the ngrok SSH tunnel gateway.
154
+ #
155
+ # @return [NgrokAPI::Services::SSHCredentialsClient]
156
+ def ssh_credentials
157
+ @_ssh_credentials ||= NgrokAPI::Services::SSHCredentialsClient.new(client: @client)
158
+ end
159
+
160
+ ##
161
+ # SSH Host Certificates along with the corresponding private key allows an SSH
162
+ # server to assert its authenticity to connecting SSH clients who trust the
163
+ # SSH Certificate Authority that was used to sign the certificate.
164
+ #
165
+ # @return [NgrokAPI::Services::SSHHostCertificatesClient]
166
+ def ssh_host_certificates
167
+ @_ssh_host_certificates ||= NgrokAPI::Services::SSHHostCertificatesClient.new(client: @client)
168
+ end
169
+
170
+ ##
171
+ # SSH User Certificates are presented by SSH clients when connecting to an SSH
172
+ # server to authenticate their connection. The SSH server must trust the SSH
173
+ # Certificate Authority used to sign the certificate.
174
+ #
175
+ # @return [NgrokAPI::Services::SSHUserCertificatesClient]
176
+ def ssh_user_certificates
177
+ @_ssh_user_certificates ||= NgrokAPI::Services::SSHUserCertificatesClient.new(client: @client)
178
+ end
179
+
180
+ ##
181
+ # TLS Certificates are pairs of x509 certificates and their matching private
182
+ # key that can be used to terminate TLS traffic. TLS certificates are unused
183
+ # until they are attached to a Domain. TLS Certificates may also be
184
+ # provisioned by ngrok automatically for domains on which you have enabled
185
+ # automated certificate provisioning.
186
+ #
187
+ # @return [NgrokAPI::Services::TLSCertificatesClient]
188
+ def tls_certificates
189
+ @_tls_certificates ||= NgrokAPI::Services::TLSCertificatesClient.new(client: @client)
190
+ end
191
+
192
+ ##
193
+ # Tunnel Sessions represent instances of ngrok agents or SSH reverse tunnel
194
+ # sessions that are running and connected to the ngrok service. Each tunnel
195
+ # session can include one or more Tunnels.
196
+ #
197
+ # @return [NgrokAPI::Services::TunnelSessionsClient]
198
+ def tunnel_sessions
199
+ @_tunnel_sessions ||= NgrokAPI::Services::TunnelSessionsClient.new(client: @client)
200
+ end
201
+
202
+ ##
203
+ # Tunnels provide endpoints to access services exposed by a running ngrok
204
+ # agent tunnel session or an SSH reverse tunnel session.
205
+ #
206
+ # @return [NgrokAPI::Services::TunnelsClient]
207
+ def tunnels
208
+ @_tunnels ||= NgrokAPI::Services::TunnelsClient.new(client: @client)
209
+ end
210
+
211
+ def pointcfg_module
212
+ ns = OpenStruct.new
213
+ ns.logging = NgrokAPI::Services::EndpointLoggingModuleClient.new(client: @client)
214
+ ns.circuit_breaker = NgrokAPI::Services::EndpointCircuitBreakerModuleClient.new(client: @client)
215
+ ns.compression = NgrokAPI::Services::EndpointCompressionModuleClient.new(client: @client)
216
+ ns.tls_termination = NgrokAPI::Services::EndpointTLSTerminationModuleClient.new(client: @client)
217
+ ns.ip_policy = NgrokAPI::Services::EndpointIPPolicyModuleClient.new(client: @client)
218
+ ns.mutual_tls = NgrokAPI::Services::EndpointMutualTLSModuleClient.new(client: @client)
219
+ ns.request_headers = NgrokAPI::Services::EndpointRequestHeadersModuleClient.new(client: @client)
220
+ ns.response_headers = NgrokAPI::Services::EndpointResponseHeadersModuleClient.new(client: @client)
221
+ ns.oauth = NgrokAPI::Services::EndpointOAuthModuleClient.new(client: @client)
222
+ ns.webhook_validation = NgrokAPI::Services::EndpointWebhookValidationModuleClient.new(client: @client)
223
+ ns.saml = NgrokAPI::Services::EndpointSAMLModuleClient.new(client: @client)
224
+ ns.oidc = NgrokAPI::Services::EndpointOIDCModuleClient.new(client: @client)
225
+
226
+ ns
227
+ end
228
+ end
229
+ end
@@ -8,10 +8,7 @@ module NgrokAPI
8
8
  attr_reader :api_key,
9
9
  :base_url
10
10
 
11
- def initialize(
12
- api_key:,
13
- base_url: 'https://api.ngrok.com'
14
- )
11
+ def initialize(api_key:, base_url: 'https://api.ngrok.com')
15
12
  @api_key = api_key
16
13
  @base_url = base_url
17
14
  end
@@ -42,21 +39,23 @@ module NgrokAPI
42
39
  end
43
40
 
44
41
  ##
45
- # Make a GET request
42
+ # Make a GET request to list resources
46
43
  #
44
+ # @param [boolean] danger determine if we should throw an exception on 404 or not
47
45
  # @param [string] before_id URL resource path
48
46
  # @param [integer] limit URL resource path
49
47
  # @param [string] path resource path, mutually exclusive with url
50
48
  # @param [string] url Full URL of the resource, mutually exclusive with path
49
+ # @param [string] url Full URL of the resource, mutually exclusive with path
51
50
  # @return [json] response body
52
- def list(before_id: nil, limit: nil, path: nil, url: nil)
51
+ def list(danger: false, before_id: nil, limit: nil, path: nil, url: nil)
53
52
  if url
54
53
  get(url)
55
54
  else
56
55
  data = {}
57
56
  data[:before_id] = before_id if before_id
58
57
  data[:limit] = limit if limit
59
- get(path, data: data)
58
+ get(path, danger: danger, data: data)
60
59
  end
61
60
  end
62
61
 
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module NgrokAPI
4
+ module Models
5
+ class AbuseReport
6
+ attr_reader :client,
7
+ :result,
8
+ :id,
9
+ :uri,
10
+ :created_at,
11
+ :urls,
12
+ :metadata,
13
+ :status,
14
+ :hostnames
15
+
16
+ def initialize(client:, result:)
17
+ @client = client
18
+ @result = result
19
+ @id = @result['id']
20
+ @uri = @result['uri']
21
+ @created_at = @result['created_at']
22
+ @urls = @result['urls']
23
+ @metadata = @result['metadata']
24
+ @status = @result['status']
25
+ @hostnames = @result['hostnames']
26
+ end
27
+
28
+ def ==(other)
29
+ @result == other.result
30
+ end
31
+
32
+ def to_s
33
+ @result.to_s
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module NgrokAPI
4
+ module Models
5
+ class AbuseReportHostname
6
+ attr_reader :client,
7
+ :result,
8
+ :hostname,
9
+ :status
10
+
11
+ def initialize(client:, result:)
12
+ @client = client
13
+ @result = result
14
+ @hostname = @result['hostname']
15
+ @status = @result['status']
16
+ end
17
+
18
+ def ==(other)
19
+ @result == other.result
20
+ end
21
+
22
+ def to_s
23
+ @result.to_s
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ module NgrokAPI
4
+ module Models
5
+ class AgentIngress
6
+ attr_reader :client,
7
+ :result,
8
+ :id,
9
+ :uri,
10
+ :description,
11
+ :metadata,
12
+ :domain,
13
+ :ns_targets,
14
+ :region_domains,
15
+ :created_at
16
+
17
+ def initialize(client:, result:)
18
+ @client = client
19
+ @result = result
20
+ @id = @result['id']
21
+ @uri = @result['uri']
22
+ @description = @result['description']
23
+ @metadata = @result['metadata']
24
+ @domain = @result['domain']
25
+ @ns_targets = @result['ns_targets']
26
+ @region_domains = @result['region_domains']
27
+ @created_at = @result['created_at']
28
+ end
29
+
30
+ def ==(other)
31
+ @result == other.result
32
+ end
33
+
34
+ def to_s
35
+ @result.to_s
36
+ end
37
+
38
+ ##
39
+ # Delete an Agent Ingress by ID
40
+ #
41
+ # https://ngrok.com/docs/api#api-agent-ingresses-delete
42
+ def delete
43
+ @client.delete(
44
+ id: @id
45
+ )
46
+ end
47
+
48
+ ##
49
+ # Update attributes of an Agent Ingress by ID.
50
+ #
51
+ # https://ngrok.com/docs/api#api-agent-ingresses-update
52
+ def update(
53
+ description: nil,
54
+ metadata: nil
55
+ )
56
+ @description = description if description
57
+ @metadata = metadata if metadata
58
+ @client.update(
59
+ id: @id,
60
+ description: description,
61
+ metadata: metadata
62
+ )
63
+ end
64
+ end
65
+ end
66
+ end
@@ -1,64 +1,62 @@
1
- # frozen_string_literal: true
2
-
3
- module NgrokAPI
4
- module Models
5
- ##
6
- # A resource representing data from the api_keys API
7
- class ApiKey
8
- attr_reader :id,
9
- :client,
10
- :created_at,
11
- :description,
12
- :metadata,
13
- :result,
14
- :token,
15
- :uri
16
-
17
- def initialize(client:, result:)
18
- @client = client
19
- @result = result
20
- @created_at = @result['created_at']
21
- @id = @result['id']
22
- @description = @result['description']
23
- @metadata = @result['metadata']
24
- @token = @result['token']
25
- @uri = @result['uri']
26
- end
27
-
28
- def ==(other)
29
- @result == other.result
30
- end
31
-
32
- def to_s
33
- @result.to_s
34
- end
35
-
36
- ##
37
- # Delete this API key.
38
- #
39
- # @return [nil] result from delete request
40
- #
41
- # https://ngrok.com/docs/api#api-api-keys-delete
42
- def delete
43
- @client.delete(id: @id)
44
- end
45
-
46
- # rubocop:disable LineLength
47
-
48
- ##
49
- # Update the attributes of this API key.
50
- #
51
- # @param [string] description human-readable description of what uses the API key to authenticate. optional, max 255 bytes.
52
- # @param [string] metadata arbitrary user-defined data of this API key. optional, max 4096 bytes
53
- # @return [NgrokAPI::Models::ApiKey] result from update request
54
- #
55
- # https://ngrok.com/docs/api#api-api-keys-update
56
- def update(description: nil, metadata: nil)
57
- @description = description if description
58
- @metadata = metadata if metadata
59
- @client.update(id: @id, description: description, metadata: metadata)
60
- end
61
- # rubocop:enable LineLength
62
- end
63
- end
64
- end
1
+ # frozen_string_literal: true
2
+
3
+ module NgrokAPI
4
+ module Models
5
+ class APIKey
6
+ attr_reader :client,
7
+ :result,
8
+ :id,
9
+ :uri,
10
+ :description,
11
+ :metadata,
12
+ :created_at,
13
+ :token
14
+
15
+ def initialize(client:, result:)
16
+ @client = client
17
+ @result = result
18
+ @id = @result['id']
19
+ @uri = @result['uri']
20
+ @description = @result['description']
21
+ @metadata = @result['metadata']
22
+ @created_at = @result['created_at']
23
+ @token = @result['token']
24
+ end
25
+
26
+ def ==(other)
27
+ @result == other.result
28
+ end
29
+
30
+ def to_s
31
+ @result.to_s
32
+ end
33
+
34
+ ##
35
+ # Delete an API key by ID
36
+ #
37
+ # https://ngrok.com/docs/api#api-api-keys-delete
38
+ def delete
39
+ @client.delete(
40
+ id: @id
41
+ )
42
+ end
43
+
44
+ ##
45
+ # Update attributes of an API key by ID.
46
+ #
47
+ # https://ngrok.com/docs/api#api-api-keys-update
48
+ def update(
49
+ description: nil,
50
+ metadata: nil
51
+ )
52
+ @description = description if description
53
+ @metadata = metadata if metadata
54
+ @client.update(
55
+ id: @id,
56
+ description: description,
57
+ metadata: metadata
58
+ )
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module NgrokAPI
4
+ module Models
5
+ class AWSAuth
6
+ attr_reader :client,
7
+ :result,
8
+ :role,
9
+ :creds
10
+
11
+ def initialize(client:, result:)
12
+ @client = client
13
+ @result = result
14
+ @role = @result['role']
15
+ @creds = @result['creds']
16
+ end
17
+
18
+ def ==(other)
19
+ @result == other.result
20
+ end
21
+
22
+ def to_s
23
+ @result.to_s
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module NgrokAPI
4
+ module Models
5
+ class AWSCredentials
6
+ attr_reader :client,
7
+ :result,
8
+ :aws_access_key_id,
9
+ :aws_secret_access_key
10
+
11
+ def initialize(client:, result:)
12
+ @client = client
13
+ @result = result
14
+ @aws_access_key_id = @result['aws_access_key_id']
15
+ @aws_secret_access_key = @result['aws_secret_access_key']
16
+ end
17
+
18
+ def ==(other)
19
+ @result == other.result
20
+ end
21
+
22
+ def to_s
23
+ @result.to_s
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module NgrokAPI
4
+ module Models
5
+ class AWSRole
6
+ attr_reader :client,
7
+ :result,
8
+ :role_arn
9
+
10
+ def initialize(client:, result:)
11
+ @client = client
12
+ @result = result
13
+ @role_arn = @result['role_arn']
14
+ end
15
+
16
+ def ==(other)
17
+ @result == other.result
18
+ end
19
+
20
+ def to_s
21
+ @result.to_s
22
+ end
23
+ end
24
+ end
25
+ end