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
data/spec/spec_helper.rb CHANGED
@@ -1,80 +1,1096 @@
1
- # frozen_string_literal: true
2
-
3
- require "simplecov"
4
- SimpleCov.start
5
- require 'pry'
6
-
7
- require 'webmock/rspec'
8
- require './lib/ngrokapi'
9
-
10
- Dir[File.expand_path(File.join(File.dirname(__FILE__), 'support', '**', '*.rb'))].each do |f|
11
- require f
12
- end
13
-
14
- RSpec.configure do |config|
15
- config.expect_with :rspec do |expectations|
16
- expectations.include_chain_clauses_in_custom_matcher_descriptions = true
17
- end
18
-
19
- config.mock_with :rspec do |mocks|
20
- mocks.verify_partial_doubles = false
21
- end
22
-
23
- config.run_all_when_everything_filtered = true
24
-
25
- config.disable_monkey_patching!
26
-
27
- config.warnings = true
28
-
29
- config.default_formatter = 'doc' if config.files_to_run.one?
30
-
31
- config.profile_examples = 10
32
-
33
- config.order = :random
34
-
35
- Kernel.srand config.seed
36
- end
37
-
38
- RSpec::Matchers.define :use_ssl do
39
- match(&:use_ssl?)
40
- end
41
-
42
- RSpec::Matchers.define :use_cert_store do |cert_store|
43
- match do |connection|
44
- connection.cert_store == cert_store
45
- end
46
- end
47
-
48
- # Custom objects
49
- def api_key_result
50
- {
51
- "id" => "ak_1xrq8h890dWRYiRdIHeZYCdlyT7",
52
- "uri" => "https://api.ngrok.com/api_keys/ak_1xrq8h890dWRYiRdIHeZYCdlyT7",
53
- "description" => "",
54
- "metadata" => "",
55
- "created_at" => "2021-09-08T17:49:56Z",
56
- "token" => nil,
57
- }
58
- end
59
-
60
- def api_key_result2
61
- {
62
- "id" => "ak_1xrqAsg8fMHBgD71MSbtr6a0pA2",
63
- "uri" => "https://api.ngrok.com/api_keys/ak_1xrqAsg8fMHBgD71MSbtr6a0pA2",
64
- "description" => "",
65
- "metadata" => "",
66
- "created_at" => "2021-09-08T17:50:14Z",
67
- "token" => nil,
68
- }
69
- end
70
-
71
- def api_key_results
72
- {
73
- "keys" => [
74
- api_key_result,
75
- api_key_result2,
76
- ],
77
- "uri" => "https://api.ngrok.com/api_keys",
78
- "next_page_uri" => nil,
79
- }
80
- end
1
+ # frozen_string_literal: true
2
+
3
+ require "simplecov"
4
+ SimpleCov.start
5
+ require 'pry'
6
+
7
+ require 'webmock/rspec'
8
+ require './lib/ngrokapi'
9
+
10
+ Dir[File.expand_path(File.join(File.dirname(__FILE__), 'support', '**', '*.rb'))].each do |f|
11
+ require f
12
+ end
13
+
14
+ RSpec.configure do |config|
15
+ config.expect_with :rspec do |expectations|
16
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
17
+ end
18
+
19
+ config.mock_with :rspec do |mocks|
20
+ mocks.verify_partial_doubles = false
21
+ end
22
+
23
+ config.run_all_when_everything_filtered = true
24
+
25
+ config.disable_monkey_patching!
26
+
27
+ config.warnings = true
28
+
29
+ config.default_formatter = 'doc' if config.files_to_run.one?
30
+
31
+ config.profile_examples = 10
32
+
33
+ config.order = :random
34
+
35
+ Kernel.srand config.seed
36
+ end
37
+
38
+ RSpec::Matchers.define :use_ssl do
39
+ match(&:use_ssl?)
40
+ end
41
+
42
+ RSpec::Matchers.define :use_cert_store do |cert_store|
43
+ match do |connection|
44
+ connection.cert_store == cert_store
45
+ end
46
+ end
47
+
48
+ # Custom objects
49
+ # NOTE: we should programmatically create these at some point in the future.
50
+ def abuse_report_hostname_result
51
+ {
52
+ }
53
+ end
54
+
55
+ def abuse_report_result
56
+ {
57
+ }
58
+ end
59
+
60
+ def agent_ingress_result
61
+ {
62
+ "id" => "agin_1zlnrHlibHAywyAvG5wk0rx5olk",
63
+ "uri" => "https=>//api.ngrok.com/agent_ingresses/agin_1zlnrHlibHAywyAvG5wk0rx5olk",
64
+ "description" => "acme devices",
65
+ "metadata" => "",
66
+ "domain" => "connect.acme.com",
67
+ "ns_targets" => [
68
+ "0.agin_1zlnrHlibHAywyAvG5wk0rx5olk.ns.ngrok.com",
69
+ "1.agin_1zlnrHlibHAywyAvG5wk0rx5olk.ns.ngrok.com",
70
+ "2.agin_1zlnrHlibHAywyAvG5wk0rx5olk.ns.ngrok.com",
71
+ "3.agin_1zlnrHlibHAywyAvG5wk0rx5olk.ns.ngrok.com",
72
+ ],
73
+ "region_domains" => [
74
+ "tunnel.us.connect.acme.com",
75
+ ],
76
+ "created_at" => "2021-10-20T12=>08=>58Z",
77
+ }
78
+ end
79
+
80
+ def agent_ingress_result2
81
+ {
82
+ "id" => "agin_1zlnrHlibHAywyAvG5wk0rx5olk",
83
+ "uri" => "https=>//api.ngrok.com/agent_ingresses/agin_1zlnrHlibHAywyAvG5wk0rx5olk",
84
+ "description" => "ACME Co. Device Ingress",
85
+ "metadata" => "{\"device_sku\"=> \"824JS4RZ1F8X\"}",
86
+ "domain" => "connect.acme.com",
87
+ "ns_targets" => [
88
+ "0.agin_1zlnrHlibHAywyAvG5wk0rx5olk.ns.ngrok.com",
89
+ "1.agin_1zlnrHlibHAywyAvG5wk0rx5olk.ns.ngrok.com",
90
+ "2.agin_1zlnrHlibHAywyAvG5wk0rx5olk.ns.ngrok.com",
91
+ "3.agin_1zlnrHlibHAywyAvG5wk0rx5olk.ns.ngrok.com",
92
+ ],
93
+ "region_domains" => [
94
+ "tunnel.us.connect.acme.com",
95
+ ],
96
+ "created_at" => "2021-10-20T12=>08=>58Z",
97
+ }
98
+ end
99
+
100
+ def agent_ingress_results
101
+ {
102
+ "ingresses" => [
103
+ agent_ingress_result,
104
+ agent_ingress_result2,
105
+ ],
106
+ "uri" => "https://api.ngrok.com/agent_ingresses",
107
+ "next_page_uri" => nil,
108
+ }
109
+ end
110
+
111
+ def api_key_result
112
+ {
113
+ "id" => "ak_1xrq8h890dWRYiRdIHeZYCdlyT7",
114
+ "uri" => "https://api.ngrok.com/api_keys/ak_1xrq8h890dWRYiRdIHeZYCdlyT7",
115
+ "description" => "",
116
+ "metadata" => "",
117
+ "created_at" => "2021-09-08T17:49:56Z",
118
+ "token" => nil,
119
+ }
120
+ end
121
+
122
+ def api_key_result2
123
+ {
124
+ "id" => "ak_1xrqAsg8fMHBgD71MSbtr6a0pA2",
125
+ "uri" => "https://api.ngrok.com/api_keys/ak_1xrqAsg8fMHBgD71MSbtr6a0pA2",
126
+ "description" => "",
127
+ "metadata" => "",
128
+ "created_at" => "2021-09-08T17:50:14Z",
129
+ "token" => nil,
130
+ }
131
+ end
132
+
133
+ def api_key_results
134
+ {
135
+ "keys" => [
136
+ api_key_result,
137
+ api_key_result2,
138
+ ],
139
+ "uri" => "https://api.ngrok.com/api_keys",
140
+ "next_page_uri" => nil,
141
+ }
142
+ end
143
+
144
+ def aws_auth_result
145
+ {
146
+ }
147
+ end
148
+
149
+ def aws_credentials_result
150
+ {
151
+ }
152
+ end
153
+
154
+ def aws_role_result
155
+ {
156
+ }
157
+ end
158
+
159
+ def certificate_authority_result
160
+ {
161
+ "id" => "ca_1rV5DZka5Q6SaX2NwY1rKVOVgA1",
162
+ "uri" => "https://api.ngrok.com/certificate_authorities/ca_1rV5DZka5Q6SaX2NwY1rKVOVgA1",
163
+ "created_at" => "2021-04-21T23:38:17Z",
164
+ "description" => "Device Connectivity Authority",
165
+ "metadata" => "",
166
+ "ca_pem" => "-----BEGIN CERTIFICATE-----\nMIIEAzCCAuugAwIBAgIUGN+Gv4BdJ17VoVXWrz9j51jcfYowDQYJKoZIhvcNAQEL\nBQAwgZAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH\nDA1TYW4gRnJhbmNpc2NvMRMwEQYDVQQKDApBQ01FLCBJbmMuMR4wHAYDVQQDDBVB\nQ01FIERldmljZSBBdXRob3JpdHkxHzAdBgkqhkiG9w0BCQEWEG9wc0BhY21lLmV4\nYW1wbGUwHhcNMjAwNTAxMTYyNTA5WhcNMjEwNTAxMTYyNTA5WjCBkDELMAkGA1UE\nBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExFjAUBgNVBAcMDVNhbiBGcmFuY2lz\nY28xEzARBgNVBAoMCkFDTUUsIEluYy4xHjAcBgNVBAMMFUFDTUUgRGV2aWNlIEF1\ndGhvcml0eTEfMB0GCSqGSIb3DQEJARYQb3BzQGFjbWUuZXhhbXBsZTCCASIwDQYJ\nKoZIhvcNAQEBBQADggEPADCCAQoCggEBAO8vxADdMmZANJ0aTAX6Jp50vCjFh2/d\nJLxn4ZAg0fFgkM+Zl+3gxGA7YUUKxIKet6rSeyKAjOX9AFA+idpv5mXnD+0nwPDr\nkwGe1MkYsaWYdMyUEoI9uEodS0LmHItAzV63ovkdagb3fqZqWcJCsoDa22WHt6GN\nT2d4xGD0gEMyDmwxey4XYSy63H1mvQRzhjC5wCzTGOefG76Io0whJka0mr3b6wEv\nSw0YqRF0/BEDlmWU/VWz7YEgWpb0rXaLqQKbZjyFo137X1otZK8vj9MVRWRvYmcF\nHgE+n0ifoCQ/DNVF1mkG6HGK3LREj9LGRBTN683Vqq2W+93B9yuTgr8CAwEAAaNT\nMFEwHQYDVR0OBBYEFLGXXIYFIpkRy4j0VsOdfgxgZpXzMB8GA1UdIwQYMBaAFLGX\nXIYFIpkRy4j0VsOdfgxgZpXzMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL\nBQADggEBAFyO7ZWj9w6xzoBWu/XbIVwsQ3kE5k+wrRGyp2rh2v4msAEveCIZP5kT\nCSdr2vr+9HQYiKf1ftsp9tGTLXwrhz3ztC8jIqo4A0grw5B61J0lj+2grKNq1/CK\nxQcpkbnetzo4zsDqFRoN2VK40Ovo4b/IknFa38t06b4t8cYQIqUdkFHMSSIz3Mvx\nRIK6MZlilT8zkWhi9kfCJe/s3cVEAJixNkgO4XNo5VhhxFenyvAL2vDM27dWVtDG\nqL3MFZbcy0/74AJsJDSrflGUQxjrK3WI9PkpKp/xey54XJAbhF63z1VwkJwSwufv\nW9HgidfMN9icgxkScyWpB9KrZHcsLk4=\n-----END CERTIFICATE-----\n",
167
+ "subject_common_name" => "ACME Device Authority",
168
+ "not_before" => "2020-05-01T16:25:09Z",
169
+ "not_after" => "2021-05-01T16:25:09Z",
170
+ "key_usages" => [],
171
+ "extended_key_usages" => [],
172
+ }
173
+ end
174
+
175
+ def certificate_authority_result2
176
+ {
177
+ "id" => "ca_1rV5Dca4ELSBvqQv2YmoQp4s220",
178
+ "uri" => "https://api.ngrok.com/certificate_authorities/ca_1rV5Dca4ELSBvqQv2YmoQp4s220",
179
+ "created_at" => "2021-04-21T23:38:17Z",
180
+ "description" => "Internal Coprorates Services Authority",
181
+ "metadata" => "{\"internal_id\" => \"7d2caeee-cdc3-4b26-b2c2-b280b8287552\"}",
182
+ "ca_pem" => "-----BEGIN CERTIFICATE-----\nMIIEETCCAvmgAwIBAgIUU3N6lNzPqar4400cLQMcVHFl+mEwDQYJKoZIhvcNAQEL\nBQAwgZcxCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5l\neTEZMBcGA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQg\nU2VydmljZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9w\nYmVhci5leGFtcGxlMB4XDTIwMDUwMTE2Mjc1OVoXDTIxMDUwMTE2Mjc1OVowgZcx\nCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5leTEZMBcG\nA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQgU2Vydmlj\nZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9wYmVhci5l\neGFtcGxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7y/EAN0yZkA0\nnRpMBfomnnS8KMWHb90kvGfhkCDR8WCQz5mX7eDEYDthRQrEgp63qtJ7IoCM5f0A\nUD6J2m/mZecP7SfA8OuTAZ7UyRixpZh0zJQSgj24Sh1LQuYci0DNXrei+R1qBvd+\npmpZwkKygNrbZYe3oY1PZ3jEYPSAQzIObDF7LhdhLLrcfWa9BHOGMLnALNMY558b\nvoijTCEmRrSavdvrAS9LDRipEXT8EQOWZZT9VbPtgSBalvStdoupAptmPIWjXftf\nWi1kry+P0xVFZG9iZwUeAT6fSJ+gJD8M1UXWaQbocYrctESP0sZEFM3rzdWqrZb7\n3cH3K5OCvwIDAQABo1MwUTAdBgNVHQ4EFgQUsZdchgUimRHLiPRWw51+DGBmlfMw\nHwYDVR0jBBgwFoAUsZdchgUimRHLiPRWw51+DGBmlfMwDwYDVR0TAQH/BAUwAwEB\n/zANBgkqhkiG9w0BAQsFAAOCAQEANk25tt8sSfn6Qu1bbhWRbjKgS5z+j9LqyCna\nv3fbSchMthaQR7w0vL69ayroeYdqDZkRMmHjuYKY4NyqyXkkaqVO63wEicCo55d9\npIKuPzc/7xwdRephosjGTQ4QaQ4OnrdpJZieI92m9ODexgsab84AYmwNpbGOI/tK\nnPsQr8x1RfLs2gbBwQ4MYVM3tQQbX0o+yve5nz/NCOq4vdG+eKON5u6VYMkOOg9F\nVyNY1iISQkpNk/AF6Vi9BGuDb5Hg0phEl1Q0ntCO7ZHAUHjy0ucqXZiXoXdXZcs3\n3zKKLUKva59EDBZ5TUucvXh8VemBtNc6hd1mX4Tq7lAreG9pjQ==\n-----END CERTIFICATE-----\n",
183
+ "subject_common_name" => "Intranet Services Authority",
184
+ "not_before" => "2020-05-01T16:27:59Z",
185
+ "not_after" => "2021-05-01T16:27:59Z",
186
+ "key_usages" => [],
187
+ "extended_key_usages" => [],
188
+ }
189
+ end
190
+
191
+ def certificate_authority_results
192
+ {
193
+ "certificate_authorities" => [
194
+ certificate_authority_result,
195
+ certificate_authority_result2,
196
+ ],
197
+ "uri" => "https://api.ngrok.com/certificate_authorities",
198
+ "next_page_uri" => nil,
199
+ }
200
+ end
201
+
202
+ def credential_result
203
+ {
204
+ "id" => "cr_1rV53L5Cbhpz2SEyPaMuh3Fz4fN",
205
+ "uri" => "https://api.ngrok.com/credentials/cr_1rV53L5Cbhpz2SEyPaMuh3Fz4fN",
206
+ "created_at" => "2021-04-21T23:36:55Z",
207
+ "description" => "for device #132",
208
+ "metadata" => "",
209
+ "token" => nil,
210
+ "acl" => [
211
+ "bind:1.tcp.ngrok.io:20002",
212
+ "bind:132.devices.company.com",
213
+ ],
214
+ }
215
+ end
216
+
217
+ def credential_result2
218
+ {
219
+ "id" => "cr_1rV53HesDPMw48BJyEO9Zlgz9dd",
220
+ "uri" => "https://api.ngrok.com/credentials/cr_1rV53HesDPMw48BJyEO9Zlgz9dd",
221
+ "created_at" => "2021-04-21T23:36:55Z",
222
+ "description" => "development cred for alan@example.com",
223
+ "metadata" => "",
224
+ "token" => nil,
225
+ "acl" => [],
226
+ }
227
+ end
228
+
229
+ def credential_results
230
+ {
231
+ "credentials" => [
232
+ credential_result,
233
+ credential_result2,
234
+ ],
235
+ "uri" => "https //api.ngrok.com/credentials",
236
+ "next_page_uri" => nil,
237
+ }
238
+ end
239
+
240
+ def endpoint_compression_result
241
+ {
242
+ }
243
+ end
244
+
245
+ def endpoint_configuration_result
246
+ {
247
+ "id" => "ec_1rV504F3NJD5F9CSDUeWRkld2SB",
248
+ "type" => "https",
249
+ "description" => "app servers",
250
+ "metadata" => "",
251
+ "created_at" => "2021-04-21T23:36:29Z",
252
+ "uri" => "https://api.ngrok.com/endpoint_configurations/ec_1rV504F3NJD5F9CSDUeWRkld2SB",
253
+ "basic_auth" => nil,
254
+ "circuit_breaker" => nil,
255
+ "compression" => nil,
256
+ "request_headers" => {
257
+ "enabled" => true,
258
+ "add" => {
259
+ "x-frontend" => "ngrok",
260
+ },
261
+ "remove" => [
262
+ "cache-control",
263
+ ],
264
+ },
265
+ "response_headers" => nil,
266
+ "ip_policy" => nil,
267
+ "mutual_tls" => nil,
268
+ "tls_termination" => nil,
269
+ "webhook_validation" => nil,
270
+ "oauth" => nil,
271
+ "logging" => nil,
272
+ "saml" => nil,
273
+ "oidc" => nil,
274
+ "backend" => nil,
275
+ }
276
+ end
277
+
278
+ def endpoint_configuration_result2
279
+ {
280
+ "id" => "ec_1rV4zxf7pC5PFpXAcL2A9VLLeGF",
281
+ "type" => "https",
282
+ "description" => "web servers",
283
+ "metadata" => "",
284
+ "created_at" => "2021-04-21T23:36:29Z",
285
+ "uri" => "https://api.ngrok.com/endpoint_configurations/ec_1rV4zxf7pC5PFpXAcL2A9VLLeGF",
286
+ "basic_auth" => nil,
287
+ "circuit_breaker" => {
288
+ "enabled" => true,
289
+ "tripped_duration" => 0,
290
+ "rolling_window" => 0,
291
+ "num_buckets" => 0,
292
+ "volume_threshold" => 0,
293
+ "error_threshold_percentage" => 0.2,
294
+ },
295
+ "compression" => {
296
+ "enabled" => true,
297
+ },
298
+ "request_headers" => nil,
299
+ "response_headers" => {
300
+ "enabled" => true,
301
+ "add" => {
302
+ "content-security-policy" => "script-src 'self'",
303
+ "x-frame-options" => "DENY",
304
+ },
305
+ "remove" => [],
306
+ },
307
+ "ip_policy" => nil,
308
+ "mutual_tls" => nil,
309
+ "tls_termination" => nil,
310
+ "webhook_validation" => nil,
311
+ "oauth" => nil,
312
+ "logging" => nil,
313
+ "saml" => nil,
314
+ "oidc" => nil,
315
+ "backend" => nil,
316
+ }
317
+ end
318
+
319
+ def endpoint_configuration_results
320
+ {
321
+ "endpoint_configurations" => [
322
+ endpoint_configuration_result,
323
+ endpoint_configuration_result2,
324
+ ],
325
+ "uri" => "https://api.ngrok.com/endpoint_configurations",
326
+ "next_page_uri" => nil,
327
+ }
328
+ end
329
+
330
+ def endpoint_circuit_breaker_result
331
+ {
332
+ }
333
+ end
334
+
335
+ def endpoint_ip_policy_result
336
+ {
337
+ }
338
+ end
339
+
340
+ def endpoint_ip_policy_mutate_result
341
+ {
342
+ }
343
+ end
344
+
345
+ def endpoint_logging_result
346
+ {
347
+ }
348
+ end
349
+
350
+ def endpoint_logging_mutate_result
351
+ {
352
+ }
353
+ end
354
+
355
+ def endpoint_mutual_tls_result
356
+ {
357
+ }
358
+ end
359
+
360
+ def endpoint_mutual_tls_mutate_result
361
+ {
362
+ }
363
+ end
364
+
365
+ def endpoint_o_auth_facebook_result
366
+ {
367
+ }
368
+ end
369
+
370
+ def endpoint_o_auth_git_hub_result
371
+ {
372
+ }
373
+ end
374
+
375
+ def endpoint_o_auth_google_result
376
+ {
377
+ }
378
+ end
379
+
380
+ def endpoint_o_auth_microsoft_result
381
+ {
382
+ }
383
+ end
384
+
385
+ def endpoint_o_auth_provider_result
386
+ {
387
+ }
388
+ end
389
+
390
+ def endpoint_o_auth_result
391
+ {
392
+ }
393
+ end
394
+
395
+ def endpoint_oidc_result
396
+ {
397
+ }
398
+ end
399
+
400
+ def endpoint_request_headers_result
401
+ {
402
+ }
403
+ end
404
+
405
+ def endpoint_response_headers_result
406
+ {
407
+ }
408
+ end
409
+
410
+ def endpoint_saml_result
411
+ {
412
+ }
413
+ end
414
+
415
+ def endpoint_saml_mutate_result
416
+ {
417
+ }
418
+ end
419
+
420
+ def endpoint_tls_termination_result
421
+ {
422
+ }
423
+ end
424
+
425
+ def endpoint_webhook_validation_result
426
+ {
427
+ }
428
+ end
429
+
430
+ def event_destination_result
431
+ {
432
+ "id" => "ed_1ro7YLHYTloEfaH6LDcX2A3z18Q",
433
+ "metadata" => "",
434
+ "created_at" => "2021-04-28T17:23:54Z",
435
+ "description" => "",
436
+ "format" => "json",
437
+ "target" => {
438
+ "firehose" => nil,
439
+ "kinesis" => {
440
+ "auth" => {
441
+ "role" => nil,
442
+ "creds" => {
443
+ "aws_access_key_id" => "AKIAIOSFODNN7EXAMPLE",
444
+ "aws_secret_access_key" => nil,
445
+ },
446
+ },
447
+ "stream_arn" => "arn:ngrok-local:kinesis:us-east-2:123456789012:stream/mystream",
448
+ },
449
+ "cloudwatch_logs" => nil,
450
+ },
451
+ "uri" => "https://api.ngrok.com/event_destinations/ed_1ro7YLHYTloEfaH6LDcX2A3z18Q",
452
+ }
453
+ end
454
+
455
+ def event_destination_result2
456
+ {
457
+ "id" => "ed_1ro7aZHBLfa4vYAeRpweVomDSJa",
458
+ "metadata" => "{\"environment\" =>\"dev\"}",
459
+ "created_at" => "2021-04-28T17:24:12Z",
460
+ "description" => "kinesis dev stream",
461
+ "format" => "json",
462
+ "target" => {
463
+ "firehose" => nil,
464
+ "kinesis" => {
465
+ "auth" => {
466
+ "role" => {
467
+ "role_arn" => "arn:aws:iam::123456789012:role/example",
468
+ },
469
+ "creds" => nil,
470
+ },
471
+ "stream_arn" => "arn:ngrok-local:kinesis:us-east-2:123456789012:stream/mystream2",
472
+ },
473
+ "cloudwatch_logs" => nil,
474
+ },
475
+ "uri" => "https://api.ngrok.com/event_destinations/ed_1ro7aZHBLfa4vYAeRpweVomDSJa",
476
+ }
477
+ end
478
+
479
+ def event_destination_results
480
+ {
481
+ "event_destinations" => [
482
+ event_destination_result,
483
+ event_destination_result2,
484
+ ],
485
+ "uri" => "https://api.ngrok.com/event_destinations",
486
+ "next_page_uri" => nil,
487
+ }
488
+ end
489
+
490
+ def event_source_replace_result
491
+ {
492
+ }
493
+ end
494
+
495
+ def event_stream_result
496
+ {
497
+ "id" => "es_1ro7aBEJQkcfUBNX1r3IBSqjDU8",
498
+ "uri" => "https://api.ngrok.com/event_streams/es_1ro7aBEJQkcfUBNX1r3IBSqjDU8",
499
+ "created_at" => "2021-04-28T17:24:09Z",
500
+ "metadata" => "{\"environment\" => \"staging\"}",
501
+ "description" => "low sampling, basic HTTP logs",
502
+ "fields" => [
503
+ "http.request.method",
504
+ "http.response.status_code",
505
+ "conn.client_ip",
506
+ ],
507
+ "event_type" => "http_request_complete",
508
+ "destination_ids" => [
509
+ "ed_1ro7aG1J2tGT6neX0PHJLTuzQ9E",
510
+ ],
511
+ "sampling_rate" => 0.1,
512
+ }
513
+ end
514
+
515
+ def event_stream_result2
516
+ {
517
+ "id" => "es_1ro7YJvY0atyuqOjbLMsZfe928o",
518
+ "uri" => "https://api.ngrok.com/event_streams/es_1ro7YJvY0atyuqOjbLMsZfe928o",
519
+ "created_at" => "2021-04-28T17:23:54Z",
520
+ "metadata" => "",
521
+ "description" => "",
522
+ "fields" => [
523
+ "http.request.method",
524
+ "http.response.status_code",
525
+ "conn.client_ip",
526
+ ],
527
+ "event_type" => "http_request_complete",
528
+ "destination_ids" => [
529
+ "ed_1ro7YLHYTloEfaH6LDcX2A3z18Q",
530
+ ],
531
+ "sampling_rate" => 0.1,
532
+ }
533
+ end
534
+
535
+ def event_stream_results
536
+ {
537
+ "event_streams" => [
538
+ event_stream_result,
539
+ event_stream_result2,
540
+ ],
541
+ "uri" => "https://api.ngrok.com/event_streams",
542
+ "next_page_uri" => nil,
543
+ }
544
+ end
545
+
546
+ def event_source_result
547
+ {
548
+ }
549
+ end
550
+
551
+ def event_source_list_result
552
+ {
553
+ "sources" => [],
554
+ "uri" => "https://api.ngrok.com/event_sources",
555
+ }
556
+ end
557
+
558
+ def event_subscription_result
559
+ {
560
+ "id" => "esb_1ro7av77nFHjRVO7GwDxRE7TElG",
561
+ "uri" => "https://api.ngrok.com/event_subscriptions/esb_1ro7av77nFHjRVO7GwDxRE7TElG",
562
+ "created_at" => "2021-04-28T17:24:15Z",
563
+ "metadata" => "{\"environment\" => \"staging\"}",
564
+ "description" => "low sampling, basic HTTP logs",
565
+ "sources" => [
566
+ {
567
+ "type" => "http_request_complete",
568
+ "uri" => "https://api.ngrok.com/event_subscriptions/esb_1ro7av77nFHjRVO7GwDxRE7TElG/sources/http_request_complete",
569
+ },
570
+ ],
571
+ "destinations" => [
572
+ {
573
+ "id" => "ed_1ro7aylyqQ1LLMWNWrOISvlfveQ",
574
+ "uri" => "https://api.ngrok.com/event_destinations/ed_1ro7aylyqQ1LLMWNWrOISvlfveQ",
575
+ },
576
+ ],
577
+ }
578
+ end
579
+
580
+ def event_subscription_results
581
+ {
582
+ "event_subscriptions" => [
583
+ event_subscription_result,
584
+ ],
585
+ "uri" => "https://api.ngrok.com/event_subscriptions",
586
+ "next_page_uri" => nil,
587
+ }
588
+ end
589
+
590
+ def event_target_cloudwatch_logs_result
591
+ {
592
+ }
593
+ end
594
+
595
+ def event_target_firehose_result
596
+ {
597
+ }
598
+ end
599
+
600
+ def event_target_kinesis_result
601
+ {
602
+ }
603
+ end
604
+
605
+ def event_target_result
606
+ {
607
+ }
608
+ end
609
+
610
+ def ip_policy_result
611
+ {
612
+ "id" => "ipp_1vckSz67sd2iZNRX03t8i8wihdB",
613
+ "uri" => "https://api.ngrok.com/ip_policies/ipp_1vckSz67sd2iZNRX03t8i8wihdB",
614
+ "created_at" => "2021-07-21T11:59:27Z",
615
+ "description" => "Developer Environments",
616
+ "metadata" => "",
617
+ "action" => "allow",
618
+ }
619
+ end
620
+
621
+ def ip_policy_result2
622
+ {
623
+ "id" => "ipp_1vckSvgJ7tjaBIs4w8KZOYQjA7q",
624
+ "uri" => "https://api.ngrok.com/ip_policies/ipp_1vckSvgJ7tjaBIs4w8KZOYQjA7q",
625
+ "created_at" => "2021-07-21T11:59:27Z",
626
+ "description" => "API Outbound Gateway",
627
+ "metadata" => "",
628
+ "action" => "allow",
629
+ }
630
+ end
631
+
632
+ def ip_policy_results
633
+ {
634
+ "ip_policies" => [
635
+ ip_policy_result,
636
+ ip_policy_result2,
637
+ ],
638
+ "uri" => "https://api.ngrok.com/ip_policies",
639
+ "next_page_uri" => nil,
640
+ }
641
+ end
642
+
643
+ def ip_policy_rule_result
644
+ {
645
+ "id" => "ipr_1rV56jFvshOkyVBrKOLNOdd9Jq2",
646
+ "uri" => "https://api.ngrok.com/ip_policy_rules/ipr_1rV56jFvshOkyVBrKOLNOdd9Jq2",
647
+ "created_at" => "2021-04-21T23:37:22Z",
648
+ "description" => "alan laptop",
649
+ "metadata" => "",
650
+ "cidr" => "2.2.2.2/32",
651
+ "ip_policy" => {
652
+ "id" => "ipp_1rV56VrAxesFteoj4XZxaaYyvXo",
653
+ "uri" => "https://api.ngrok.com/ip_policies/ipp_1rV56VrAxesFteoj4XZxaaYyvXo",
654
+ },
655
+ }
656
+ end
657
+
658
+ def ip_policy_rule_result2
659
+ {
660
+ "id" => "ipr_1rV56fKu4NnoTEVfCPSRqE5zRsK",
661
+ "uri" => "https://api.ngrok.com/ip_policy_rules/ipr_1rV56fKu4NnoTEVfCPSRqE5zRsK",
662
+ "created_at" => "2021-04-21T23:37:22Z",
663
+ "description" => "sf office",
664
+ "metadata" => "",
665
+ "cidr" => "132.2.19.0/24",
666
+ "ip_policy" => {
667
+ "id" => "ipp_1rV56VrAxesFteoj4XZxaaYyvXo",
668
+ "uri" => "https://api.ngrok.com/ip_policies/ipp_1rV56VrAxesFteoj4XZxaaYyvXo",
669
+ },
670
+ }
671
+ end
672
+
673
+ def ip_policy_rule_results
674
+ {
675
+ "ip_policy_rules" => [
676
+ ip_policy_rule_result,
677
+ ip_policy_rule_result2,
678
+ ],
679
+ "uri" => "https://api.ngrok.com/ip_policy_rules",
680
+ "next_page_uri" => nil,
681
+ }
682
+ end
683
+
684
+ def ip_restriction_result
685
+ {
686
+ "id" => "ipx_1rV5CKgSrd3y2fosbXX5GoAhMeR",
687
+ "uri" => "https://api.ngrok.com/ip_restrictions/ipx_1rV5CKgSrd3y2fosbXX5GoAhMeR",
688
+ "created_at" => "2021-04-21T23:38:07Z",
689
+ "description" => "",
690
+ "metadata" => "",
691
+ "enforced" => false,
692
+ "type" => "dashboard",
693
+ "ip_policies" => [
694
+ {
695
+ "id" => "ipp_1rV5CMI1Aw8MiqWtjlQCyDDEWnQ",
696
+ "uri" => "https://api.ngrok.com/ip_policies/ipp_1rV5CMI1Aw8MiqWtjlQCyDDEWnQ",
697
+ },
698
+ ],
699
+ }
700
+ end
701
+
702
+ def ip_restriction_results
703
+ {
704
+ "ip_restrictions" => [
705
+ ip_restriction_result,
706
+ ],
707
+ "uri" => "https://api.ngrok.com/ip_restrictions",
708
+ "next_page_uri" => nil,
709
+ }
710
+ end
711
+
712
+ def ip_whitelist_entry_result
713
+ {
714
+ "id" => "wl_1rV55uK6IddK1eJWBcopcSqr9jr",
715
+ "uri" => "https://api.ngrok.com/ip_whitelist/wl_1rV55uK6IddK1eJWBcopcSqr9jr",
716
+ "created_at" => "2021-04-21T23:37:16Z",
717
+ "description" => "outbound proxy servers",
718
+ "metadata" => "",
719
+ "ip_net" => "10.1.1.0/24",
720
+ }
721
+ end
722
+
723
+ def ip_whitelist_entry_result2
724
+ {
725
+ "id" => "wl_1rV55s4NmZ81mUa5zqPetlpngC7",
726
+ "uri" => "https://api.ngrok.com/ip_whitelist/wl_1rV55s4NmZ81mUa5zqPetlpngC7",
727
+ "created_at" => "2021-04-21T23:37:16Z",
728
+ "description" => "office wifi",
729
+ "metadata" => "",
730
+ "ip_net" => "78.3.12.121/32",
731
+ }
732
+ end
733
+
734
+ def ip_whitelist_entry_results
735
+ {
736
+ "whitelist" => [
737
+ ip_whitelist_entry_result,
738
+ ip_whitelist_entry_result2,
739
+ ],
740
+ "uri" => "https://api.ngrok.com/ip_whitelist",
741
+ "next_page_uri" => nil,
742
+ }
743
+ end
744
+
745
+ def ref_result
746
+ {
747
+ }
748
+ end
749
+
750
+ def reserved_addr_result
751
+ {
752
+ "id" => "ra_1rV3SMgGd7NuIB89hzucFK8r8nZ",
753
+ "uri" => "https://api.ngrok.com/reserved_addrs/ra_1rV3SMgGd7NuIB89hzucFK8r8nZ",
754
+ "created_at" => "2021-04-21T23:36:49Z",
755
+ "description" => "SSH for device #001",
756
+ "metadata" => "",
757
+ "addr" => "1.tcp.ngrok.io:20011",
758
+ "region" => "us",
759
+ "endpoint_configuration" => nil,
760
+ }
761
+ end
762
+
763
+ def reserved_addr_results
764
+ {
765
+ "reserved_addrs" => [
766
+ reserved_addr_result,
767
+ ],
768
+ "uri" => "https://api.ngrok.com/reserved_addrs",
769
+ "next_page_uri" => nil,
770
+ }
771
+ end
772
+
773
+ def reserved_domain_cert_policy_result
774
+ {
775
+ }
776
+ end
777
+
778
+ def reserved_domain_cert_status_result
779
+ {
780
+ }
781
+ end
782
+
783
+ def reserved_domain_result
784
+ {
785
+ "id" => "rd_1rV51TBbVHrjheFFdfasWnL6E1z",
786
+ "uri" => "https://api.ngrok.com/reserved_domains/rd_1rV51TBbVHrjheFFdfasWnL6E1z",
787
+ "created_at" => "2021-04-21T23:36:41Z",
788
+ "description" => "Device 0001 Dashboard",
789
+ "metadata" => "{\"service\" => \"dashboard\"}",
790
+ "domain" => "manage-0001.app.example.com",
791
+ "region" => "us",
792
+ "cname_target" => "2y4vzpktb.cname.us.ngrok.io",
793
+ "http_endpoint_configuration" => nil,
794
+ "https_endpoint_configuration" => nil,
795
+ "certificate" => nil,
796
+ "certificate_management_policy" => nil,
797
+ "certificate_management_status" => nil,
798
+ }
799
+ end
800
+
801
+ def reserved_domain_result2
802
+ {
803
+ "id" => "rd_1rV51Qr590Jb8MgfiWIxshe0RWs",
804
+ "uri" => "https://api.ngrok.com/reserved_domains/rd_1rV51Qr590Jb8MgfiWIxshe0RWs",
805
+ "created_at" => "2021-04-21T23:36:40Z",
806
+ "description" => "",
807
+ "metadata" => "",
808
+ "domain" => "myapp.mydomain.com",
809
+ "region" => "us",
810
+ "cname_target" => "29flmdbzs.cname.us.ngrok.io",
811
+ "http_endpoint_configuration" => nil,
812
+ "https_endpoint_configuration" => nil,
813
+ "certificate" => {
814
+ "id" => "cert_1rV51OQetZPK9V6vTWUVy3Onjir",
815
+ "uri" => "https://api.ngrok.com/tls_certificates/cert_1rV51OQetZPK9V6vTWUVy3Onjir",
816
+ },
817
+ "certificate_management_policy" => nil,
818
+ "certificate_management_status" => nil,
819
+ }
820
+ end
821
+
822
+ def reserved_domain_results
823
+ {
824
+ "reserved_domains" => [
825
+ reserved_domain_result,
826
+ reserved_domain_result2,
827
+ ],
828
+ "uri" => "https://api.ngrok.com/reserved_domains",
829
+ "next_page_uri" => nil,
830
+ }
831
+ end
832
+
833
+ def reserved_domain_cert_job_result
834
+ {
835
+ }
836
+ end
837
+
838
+ def reserved_domain_cert_ns_target_result
839
+ {
840
+ }
841
+ end
842
+
843
+ def ssh_certificate_authority_result
844
+ {
845
+ "id" => "sshca_1rV5FT4Uy4JaYbMnSyKS3p0xE4f",
846
+ "uri" => "https://api.ngrok.com/ssh_certificate_authorities/sshca_1rV5FT4Uy4JaYbMnSyKS3p0xE4f",
847
+ "created_at" => "2021-04-21T23:38:32Z",
848
+ "description" => "Staging Environment Hosts",
849
+ "metadata" => "",
850
+ "public_key" => "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDx404hGFBUi7mFqNcd1TkrP4MVtf57kJVP3r0h3rSO",
851
+ "key_type" => "ed25519",
852
+ }
853
+ end
854
+
855
+ def ssh_certificate_authority_results
856
+ {
857
+ "ssh_certificate_authorities" => [
858
+ ssh_certificate_authority_result,
859
+ ],
860
+ "uri" => "https://api.ngrok.com/ssh_certificate_authorities",
861
+ "next_page_uri" => nil,
862
+ }
863
+ end
864
+
865
+ def ssh_credential_result
866
+ {
867
+ "id" => "sshcr_1rV5504YUNgDKQ3WvFOeotnfgNm",
868
+ "uri" => "https://api.ngrok.com/ssh_credentials/sshcr_1rV5504YUNgDKQ3WvFOeotnfgNm",
869
+ "created_at" => "2021-04-21T23:37:09Z",
870
+ "description" => "for device #132",
871
+ "metadata" => "",
872
+ "public_key" => "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDmGS49FkSODAcKhn3+/47DW2zEn19BZvzRQ8RZjL3v6hCIX2qXfsFK35EGxNI0wV23H4xXC2gVRPHKU71YnCb50tad3yMBTM6+2yfGsEDasEH/anmBLclChKvuGiT547RskZlpbAbdq3GvbzmY+R/2EBRMOiObpc8XmSzKAd05j28kqN0+rZO65SWId0MXdvJdSCSAnuRqBNd/aXKlu8hBPDcgwbT2lMkuR+ApoBS2FLRBOiQyt2Ol0T7Uuf7lTLlazpGB3uTw5zFYUNXkuuI6cAP8QYuY1Bne/hNrG8t3Aw9a1yc2C4Fz1hJ/4OMRxTQ8SUQf+Rmxs8DryMlMFJ8r device132@example.com",
873
+ "acl" => [
874
+ "bind:1.tcp.ngrok.io:20002",
875
+ "bind:132.devices.company.com",
876
+ ],
877
+ }
878
+ end
879
+
880
+ def ssh_credential_results
881
+ {
882
+ "ssh_credentials" => [
883
+ ssh_credential_result,
884
+ ],
885
+ "uri" => "https://api.ngrok.com/ssh_credentials",
886
+ "next_page_uri" => nil,
887
+ }
888
+ end
889
+
890
+ def ssh_host_certificate_result
891
+ {
892
+ "id" => "shcrt_1rV5GnCIHgKW4OyBIjKSqpbaf04",
893
+ "uri" => "https://api.ngrok.com/ssh_host_certificates/shcrt_1rV5GnCIHgKW4OyBIjKSqpbaf04",
894
+ "created_at" => "2021-04-21T23:38:42Z",
895
+ "description" => "personal server",
896
+ "metadata" => "",
897
+ "public_key" => "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+Cgk= inconshreveable.com",
898
+ "key_type" => "ecdsa",
899
+ "ssh_certificate_authority_id" => "sshca_1rV5GiTaiBQg8AtJiyiVeNKzYiR",
900
+ "principals" => [
901
+ "inconshreveable.com",
902
+ "10.2.42.9",
903
+ ],
904
+ "valid_after" => "2021-04-21T23:38:42Z",
905
+ "valid_until" => "2021-07-20T23:38:42Z",
906
+ "certificate" => "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgl+i7u7P1mVEWv2Igcf76hXPS2/xnKniDnJZX53xfuTQAAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+CgkAAAAAAAAAAAAAAAIAAAAhc2hjcnRfMXJWNUduQ0lIZ0tXNE95QklqS1NxcGJhZjA0AAAAJAAAABNpbmNvbnNocmV2ZWFibGUuY29tAAAACTEwLjIuNDIuOQAAAABggLeCAAAAAGD3XoIAAAAAAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIEpsciWkhlFN7VFWGMkSy1xFNwuZLVh7ZE/uo79NWH8LAAAAUwAAAAtzc2gtZWQyNTUxOQAAAECJHCycrdAf2WNjWGWolP+Y5TlIm5LX4TdRJFeSdUVp0amDg9ZYRltqXy61qGVc43G/unqz35ZzkwJPmVAi/ZQL shcrt_1rV5GnCIHgKW4OyBIjKSqpbaf04",
907
+ }
908
+ end
909
+
910
+ def ssh_host_certificate_results
911
+ {
912
+ "ssh_host_certificates" => [
913
+ ssh_host_certificate_result,
914
+ ],
915
+ "uri" => "https://api.ngrok.com/ssh_host_certificates",
916
+ "next_page_uri" => nil,
917
+ }
918
+ end
919
+
920
+ def ssh_user_certificate_result
921
+ {
922
+ "id" => "sucrt_1rV5G8jarzhIEEQTv1wXRE1KRU1",
923
+ "uri" => "https://api.ngrok.com/ssh_user_certificates/sucrt_1rV5G8jarzhIEEQTv1wXRE1KRU1",
924
+ "created_at" => "2021-04-21T23:38:37Z",
925
+ "description" => "temporary access to staging machine",
926
+ "metadata" => "",
927
+ "public_key" => "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0= alan@work-laptop",
928
+ "key_type" => "ecdsa",
929
+ "ssh_certificate_authority_id" => "sshca_1rV5G33U0TV5AFqiEfKcjOi8W4t",
930
+ "principals" => [
931
+ "ec2-user",
932
+ "root",
933
+ ],
934
+ "critical_options" => {},
935
+ "extensions" => {
936
+ "permit-pty" => "",
937
+ "permit-user-rc" => "",
938
+ },
939
+ "valid_after" => "2021-04-21T23:38:37Z",
940
+ "valid_until" => "2021-07-20T23:38:37Z",
941
+ "certificate" => "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgMQgYZDmRzsM+dcF5rZZM5/xHEFNygLtRKq7Ycsjvk+0AAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0AAAAAAAAAAAAAAAEAAAAhc3VjcnRfMXJWNUc4amFyemhJRUVRVHYxd1hSRTFLUlUxAAAAFAAAAAhlYzItdXNlcgAAAARyb290AAAAAGCAt30AAAAAYPdefQAAAAAAAAAoAAAACnBlcm1pdC1wdHkAAAAAAAAADnBlcm1pdC11c2VyLXJjAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAICskbrMYess7OemvQlCikleCUq+2lkxesOd8ivjoWlNCAAAAUwAAAAtzc2gtZWQyNTUxOQAAAEA6yhx0v0tzSsQaCQez/qwL8QO+ZLLvKhfmcQ53I0bSYxSaf6G7n8uLThk4OVtq/QJdVaWNcfLrLY0ipITz1RAK sucrt_1rV5G8jarzhIEEQTv1wXRE1KRU1",
942
+ }
943
+ end
944
+
945
+ def ssh_user_certificate_results
946
+ {
947
+ "ssh_user_certificates" => [
948
+ ssh_user_certificate_result,
949
+ ],
950
+ "uri" => "https://api.ngrok.com/ssh_user_certificates",
951
+ "next_page_uri" => nil,
952
+ }
953
+ end
954
+
955
+ def tls_certificate_result
956
+ {
957
+ "id" => "cert_1rV51OQetZPK9V6vTWUVy3Onjir",
958
+ "uri" => "https://api.ngrok.com/tls_certificates/cert_1rV51OQetZPK9V6vTWUVy3Onjir",
959
+ "created_at" => "2021-04-21T23:36:40Z",
960
+ "description" => "",
961
+ "metadata" => "",
962
+ "certificate_pem" => "-----BEGIN CERTIFICATE-----\nMIIDDTCCAfWgAwIBAgIUBUunDdA4gjgtEbZA8w9Ljhvl3bEwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjAwMzI0MTgxODE5WhcNMjAw\nNDIzMTgxODE5WjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAPKVkkKYNl3d9cqrz4tIFlwsohED5W4y1dcBixy4\nGANFFnw43nc2wPyKwYXumJqJIFrcW/NkUZL07bd+dou6mT6Gh/zbaTW91IkREPXL\n7b3KfVu4XkFosVXpWs0U6o4GrZ81CLiKBWI+H03x/ij5OSiJ1l71pqLeTJLOydAR\nAl8kpp7axeHU4UbDrAZkW5SnuZTjIKwVg0UNsBg1yNfUOu1Uah3BYaqPgQitC0Yg\nLW+NUGu/T91bkD7tLsVInkQXeQGdXBAqOycfJ7wj8OlIpyuXjTnGFA0izVmbQw5f\nrQnZ0geGyhLamvz9Gcd7mIlD/+/AEN9Lht82tAOzKG98/O8CAwEAAaNTMFEwHQYD\nVR0OBBYEFKv6RsvEC6T+zCtJZwB0FCR1sEkhMB8GA1UdIwQYMBaAFKv6RsvEC6T+\nzCtJZwB0FCR1sEkhMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB\nAC5fBrouinespo5+9AipjhY/HOKTg+OCnppFnSnqeU1eXZZJ0oakdHTpTNxtbQP9\ntOJTA2f3KWvmpNDMohEQXZz8wHDkdbrIXJKVp6zs1pEp+0BIjA4y9mSywa5xuyk0\noGeChRgGqp2JujDyPCb7LEaKKQEEdMqy73QG+jEAh14+wKixlAf1nATBdeCUvssK\n2x1uZMyqjJFB5y/5EdnWQzD4WJkrsCkxsZHVMN1d+dqf2sf3dTRV8fzsFGOG17NS\n6u2n9iGcFdBA82XN8yeLIWhy1t3GWutG1sdxENbFRRXea+iUqzDsmRtkaBma2GLQ\nd6JTpFbsCtwDjP23UEi7SZo=\n-----END CERTIFICATE-----\n",
963
+ "subject_common_name" => "example.com",
964
+ "subject_alternative_names" => {
965
+ "dns_names" => [],
966
+ "ips" => [],
967
+ },
968
+ "issued_at" => nil,
969
+ "not_before" => "2020-03-24T18:18:19Z",
970
+ "not_after" => "2020-04-23T18:18:19Z",
971
+ "key_usages" => [],
972
+ "extended_key_usages" => [],
973
+ "private_key_type" => "rsa",
974
+ "issuer_common_name" => "example.com",
975
+ "serial_number" => "054ba70dd03882382d11b640f30f4b8e1be5ddb1",
976
+ "subject_organization" => "",
977
+ "subject_organizational_unit" => "",
978
+ "subject_locality" => "",
979
+ "subject_province" => "",
980
+ "subject_country" => "",
981
+ }
982
+ end
983
+
984
+ def tls_certificate_result2
985
+ {
986
+ "id" => "cert_1rV5D0Ur3PklEGZwRj9m6qCBlCc",
987
+ "uri" => "https://api.ngrok.com/tls_certificates/cert_1rV5D0Ur3PklEGZwRj9m6qCBlCc",
988
+ "created_at" => "2021-04-21T23:38:12Z",
989
+ "description" => "",
990
+ "metadata" => "",
991
+ "certificate_pem" => "-----BEGIN CERTIFICATE-----\nMIIDDTCCAfWgAwIBAgIUBUunDdA4gjgtEbZA8w9Ljhvl3bEwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjAwMzI0MTgxODE5WhcNMjAw\nNDIzMTgxODE5WjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAPKVkkKYNl3d9cqrz4tIFlwsohED5W4y1dcBixy4\nGANFFnw43nc2wPyKwYXumJqJIFrcW/NkUZL07bd+dou6mT6Gh/zbaTW91IkREPXL\n7b3KfVu4XkFosVXpWs0U6o4GrZ81CLiKBWI+H03x/ij5OSiJ1l71pqLeTJLOydAR\nAl8kpp7axeHU4UbDrAZkW5SnuZTjIKwVg0UNsBg1yNfUOu1Uah3BYaqPgQitC0Yg\nLW+NUGu/T91bkD7tLsVInkQXeQGdXBAqOycfJ7wj8OlIpyuXjTnGFA0izVmbQw5f\nrQnZ0geGyhLamvz9Gcd7mIlD/+/AEN9Lht82tAOzKG98/O8CAwEAAaNTMFEwHQYD\nVR0OBBYEFKv6RsvEC6T+zCtJZwB0FCR1sEkhMB8GA1UdIwQYMBaAFKv6RsvEC6T+\nzCtJZwB0FCR1sEkhMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB\nAC5fBrouinespo5+9AipjhY/HOKTg+OCnppFnSnqeU1eXZZJ0oakdHTpTNxtbQP9\ntOJTA2f3KWvmpNDMohEQXZz8wHDkdbrIXJKVp6zs1pEp+0BIjA4y9mSywa5xuyk0\noGeChRgGqp2JujDyPCb7LEaKKQEEdMqy73QG+jEAh14+wKixlAf1nATBdeCUvssK\n2x1uZMyqjJFB5y/5EdnWQzD4WJkrsCkxsZHVMN1d+dqf2sf3dTRV8fzsFGOG17NS\n6u2n9iGcFdBA82XN8yeLIWhy1t3GWutG1sdxENbFRRXea+iUqzDsmRtkaBma2GLQ\nd6JTpFbsCtwDjP23UEi7SZo=\n-----END CERTIFICATE-----\n",
992
+ "subject_common_name" => "example.com",
993
+ "subject_alternative_names" => {
994
+ "dns_names" => [],
995
+ "ips" => [],
996
+ },
997
+ "issued_at" => nil,
998
+ "not_before" => "2020-03-24T18:18:19Z",
999
+ "not_after" => "2020-04-23T18:18:19Z",
1000
+ "key_usages" => [],
1001
+ "extended_key_usages" => [],
1002
+ "private_key_type" => "rsa",
1003
+ "issuer_common_name" => "example.com",
1004
+ "serial_number" => "054ba70dd03882382d11b640f30f4b8e1be5ddb1",
1005
+ "subject_organization" => "",
1006
+ "subject_organizational_unit" => "",
1007
+ "subject_locality" => "",
1008
+ "subject_province" => "",
1009
+ "subject_country" => "",
1010
+ }
1011
+ end
1012
+
1013
+ def tls_certificate_results
1014
+ {
1015
+ "tls_certificates" => [
1016
+ tls_certificate_result,
1017
+ tls_certificate_result2,
1018
+ ],
1019
+ "uri" => "https://api.ngrok.com/tls_certificates",
1020
+ "next_page_uri" => nil,
1021
+ }
1022
+ end
1023
+
1024
+ def tls_certificate_sa_ns_result
1025
+ {
1026
+ }
1027
+ end
1028
+
1029
+ def tunnel_result
1030
+ {
1031
+ "id" => "tn_1rV53vIXMKFIfPxXVWbW2sf4OLW",
1032
+ "public_url" => "http://57ae41e8cfac.ngrok.io",
1033
+ "started_at" => "2021-04-21T23:37:00Z",
1034
+ "metadata" => "",
1035
+ "proto" => "http",
1036
+ "region" => "us",
1037
+ "tunnel_session" => {
1038
+ "id" => "ts_1rV53yu42s8Hb17NxYNmXLDy8zR",
1039
+ "uri" => "https://api.ngrok.com/tunnel_sessions/ts_1rV53yu42s8Hb17NxYNmXLDy8zR",
1040
+ },
1041
+ }
1042
+ end
1043
+
1044
+ def tunnel_result2
1045
+ {
1046
+ "id" => "tn_1rV53wi3OtUfY1RbkH2vNsTmLcO",
1047
+ "public_url" => "https://57ae41e8cfac.ngrok.io",
1048
+ "started_at" => "2021-04-21T23:37:00Z",
1049
+ "metadata" => "",
1050
+ "proto" => "https",
1051
+ "region" => "us",
1052
+ "tunnel_session" => {
1053
+ "id" => "ts_1rV53yu42s8Hb17NxYNmXLDy8zR",
1054
+ "uri" => "https://api.ngrok.com/tunnel_sessions/ts_1rV53yu42s8Hb17NxYNmXLDy8zR",
1055
+ },
1056
+ }
1057
+ end
1058
+
1059
+ def tunnel_results
1060
+ {
1061
+ "tunnels" => [
1062
+ tunnel_result,
1063
+ tunnel_result2,
1064
+ ],
1065
+ "uri" => "https://api.ngrok.com/tunnels",
1066
+ "next_page_uri" => nil,
1067
+ }
1068
+ end
1069
+
1070
+ def tunnel_session_result
1071
+ {
1072
+ "agent_version" => "",
1073
+ "credential" => {
1074
+ "id" => "cr_1rV54BnShBhgmZvLtZKAOJhI7jR",
1075
+ "uri" => "https://api.ngrok.com/credentials/cr_1rV54BnShBhgmZvLtZKAOJhI7jR",
1076
+ },
1077
+ "id" => "ts_1rV549gK2e0WnE8Wvk3ab32e98U",
1078
+ "ip" => "10.42.0.63",
1079
+ "metadata" => "",
1080
+ "os" => "linux",
1081
+ "region" => "us",
1082
+ "started_at" => "2021-04-21T23:37:02Z",
1083
+ "transport" => "ngrok/2",
1084
+ "uri" => "https://api.ngrok.com/tunnel_sessions/ts_1rV549gK2e0WnE8Wvk3ab32e98U",
1085
+ }
1086
+ end
1087
+
1088
+ def tunnel_session_results
1089
+ {
1090
+ "tunnel_sessions" => [
1091
+ tunnel_session_result,
1092
+ ],
1093
+ "uri" => "https://api.ngrok.com/tunnel_sessions",
1094
+ "next_page_uri" => nil,
1095
+ }
1096
+ end