ngrok-api 0.15.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 (266) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -1
  3. data/doc/NgrokAPI/Client.html +140 -172
  4. data/doc/NgrokAPI/Error.html +3 -3
  5. data/doc/NgrokAPI/Errors/NotFoundError.html +3 -3
  6. data/doc/NgrokAPI/Errors.html +3 -3
  7. data/doc/NgrokAPI/HttpClient.html +30 -36
  8. data/doc/NgrokAPI/Models/APIKey.html +3 -3
  9. data/doc/NgrokAPI/Models/AWSAuth.html +3 -3
  10. data/doc/NgrokAPI/Models/AWSCredentials.html +3 -3
  11. data/doc/NgrokAPI/Models/AWSRole.html +3 -3
  12. data/doc/NgrokAPI/Models/AbuseReport.html +3 -3
  13. data/doc/NgrokAPI/Models/AbuseReportHostname.html +3 -3
  14. data/doc/NgrokAPI/Models/{IPWhitelistEntry.html → AgentIngress.html} +216 -68
  15. data/doc/NgrokAPI/Models/CertificateAuthority.html +3 -3
  16. data/doc/NgrokAPI/Models/Credential.html +3 -3
  17. data/doc/NgrokAPI/Models/EndpointCircuitBreaker.html +3 -3
  18. data/doc/NgrokAPI/Models/EndpointCompression.html +3 -3
  19. data/doc/NgrokAPI/Models/EndpointConfiguration.html +3 -3
  20. data/doc/NgrokAPI/Models/EndpointIPPolicy.html +3 -3
  21. data/doc/NgrokAPI/Models/EndpointIPPolicyMutate.html +3 -3
  22. data/doc/NgrokAPI/Models/EndpointLogging.html +3 -3
  23. data/doc/NgrokAPI/Models/EndpointLoggingMutate.html +3 -3
  24. data/doc/NgrokAPI/Models/EndpointMutualTLS.html +3 -3
  25. data/doc/NgrokAPI/Models/EndpointMutualTLSMutate.html +3 -3
  26. data/doc/NgrokAPI/Models/EndpointOAuth.html +3 -3
  27. data/doc/NgrokAPI/Models/EndpointOAuthFacebook.html +3 -3
  28. data/doc/NgrokAPI/Models/EndpointOAuthGitHub.html +3 -3
  29. data/doc/NgrokAPI/Models/EndpointOAuthGoogle.html +3 -3
  30. data/doc/NgrokAPI/Models/EndpointOAuthMicrosoft.html +3 -3
  31. data/doc/NgrokAPI/Models/EndpointOAuthProvider.html +3 -3
  32. data/doc/NgrokAPI/Models/EndpointOIDC.html +3 -3
  33. data/doc/NgrokAPI/Models/EndpointRequestHeaders.html +3 -3
  34. data/doc/NgrokAPI/Models/EndpointResponseHeaders.html +3 -3
  35. data/doc/NgrokAPI/Models/EndpointSAML.html +3 -3
  36. data/doc/NgrokAPI/Models/EndpointSAMLMutate.html +3 -3
  37. data/doc/NgrokAPI/Models/EndpointTLSTermination.html +3 -3
  38. data/doc/NgrokAPI/Models/EndpointWebhookValidation.html +3 -3
  39. data/doc/NgrokAPI/Models/EventDestination.html +3 -3
  40. data/doc/NgrokAPI/Models/EventSource.html +3 -3
  41. data/doc/NgrokAPI/Models/EventSourceList.html +3 -3
  42. data/doc/NgrokAPI/Models/EventSourceReplace.html +3 -3
  43. data/doc/NgrokAPI/Models/EventStream.html +3 -3
  44. data/doc/NgrokAPI/Models/EventSubscription.html +3 -3
  45. data/doc/NgrokAPI/Models/EventTarget.html +3 -3
  46. data/doc/NgrokAPI/Models/EventTargetCloudwatchLogs.html +3 -3
  47. data/doc/NgrokAPI/Models/EventTargetFirehose.html +3 -3
  48. data/doc/NgrokAPI/Models/EventTargetKinesis.html +3 -3
  49. data/doc/NgrokAPI/Models/IPPolicy.html +3 -3
  50. data/doc/NgrokAPI/Models/IPPolicyRule.html +3 -3
  51. data/doc/NgrokAPI/Models/IPRestriction.html +3 -3
  52. data/doc/NgrokAPI/Models/Listable.html +3 -3
  53. data/doc/NgrokAPI/Models/Ref.html +3 -3
  54. data/doc/NgrokAPI/Models/ReservedAddr.html +3 -3
  55. data/doc/NgrokAPI/Models/ReservedDomain.html +3 -3
  56. data/doc/NgrokAPI/Models/ReservedDomainCertJob.html +3 -3
  57. data/doc/NgrokAPI/Models/ReservedDomainCertPolicy.html +3 -3
  58. data/doc/NgrokAPI/Models/ReservedDomainCertStatus.html +3 -3
  59. data/doc/NgrokAPI/Models/SSHCertificateAuthority.html +3 -3
  60. data/doc/NgrokAPI/Models/SSHCredential.html +3 -3
  61. data/doc/NgrokAPI/Models/SSHHostCertificate.html +3 -3
  62. data/doc/NgrokAPI/Models/SSHUserCertificate.html +3 -3
  63. data/doc/NgrokAPI/Models/TLSCertificate.html +3 -3
  64. data/doc/NgrokAPI/Models/TLSCertificateSANs.html +3 -3
  65. data/doc/NgrokAPI/Models/Tunnel.html +3 -3
  66. data/doc/NgrokAPI/Models/TunnelSession.html +3 -3
  67. data/doc/NgrokAPI/Models.html +5 -5
  68. data/doc/NgrokAPI/PagedIterator.html +3 -3
  69. data/doc/NgrokAPI/Services/APIKeysClient.html +99 -149
  70. data/doc/NgrokAPI/Services/AbuseReportsClient.html +19 -33
  71. data/doc/NgrokAPI/Services/{IPWhitelistClient.html → AgentIngressesClient.html} +209 -265
  72. data/doc/NgrokAPI/Services/CertificateAuthoritiesClient.html +104 -156
  73. data/doc/NgrokAPI/Services/CredentialsClient.html +108 -164
  74. data/doc/NgrokAPI/Services/EndpointCircuitBreakerModuleClient.html +49 -77
  75. data/doc/NgrokAPI/Services/EndpointCompressionModuleClient.html +49 -77
  76. data/doc/NgrokAPI/Services/EndpointConfigurationsClient.html +137 -273
  77. data/doc/NgrokAPI/Services/EndpointIPPolicyModuleClient.html +49 -77
  78. data/doc/NgrokAPI/Services/EndpointLoggingModuleClient.html +49 -77
  79. data/doc/NgrokAPI/Services/EndpointMutualTLSModuleClient.html +49 -77
  80. data/doc/NgrokAPI/Services/EndpointOAuthModuleClient.html +49 -77
  81. data/doc/NgrokAPI/Services/EndpointOIDCModuleClient.html +49 -77
  82. data/doc/NgrokAPI/Services/EndpointRequestHeadersModuleClient.html +49 -77
  83. data/doc/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html +49 -77
  84. data/doc/NgrokAPI/Services/EndpointSAMLModuleClient.html +49 -77
  85. data/doc/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html +49 -77
  86. data/doc/NgrokAPI/Services/EndpointWebhookValidationModuleClient.html +49 -77
  87. data/doc/NgrokAPI/Services/EventDestinationsClient.html +116 -184
  88. data/doc/NgrokAPI/Services/EventSourcesClient.html +95 -157
  89. data/doc/NgrokAPI/Services/EventStreamsClient.html +119 -189
  90. data/doc/NgrokAPI/Services/EventSubscriptionsClient.html +113 -175
  91. data/doc/NgrokAPI/Services/IPPoliciesClient.html +104 -156
  92. data/doc/NgrokAPI/Services/IPPolicyRulesClient.html +111 -169
  93. data/doc/NgrokAPI/Services/IPRestrictionsClient.html +116 -180
  94. data/doc/NgrokAPI/Services/ReservedAddrsClient.html +132 -198
  95. data/doc/NgrokAPI/Services/ReservedDomainsClient.html +193 -303
  96. data/doc/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +110 -166
  97. data/doc/NgrokAPI/Services/SSHCredentialsClient.html +111 -169
  98. data/doc/NgrokAPI/Services/SSHHostCertificatesClient.html +111 -171
  99. data/doc/NgrokAPI/Services/SSHUserCertificatesClient.html +111 -175
  100. data/doc/NgrokAPI/Services/TLSCertificatesClient.html +107 -161
  101. data/doc/NgrokAPI/Services/TunnelSessionsClient.html +87 -135
  102. data/doc/NgrokAPI/Services/TunnelsClient.html +13 -25
  103. data/doc/NgrokAPI/Services.html +5 -5
  104. data/doc/NgrokAPI.html +4 -4
  105. data/doc/_index.html +18 -18
  106. data/doc/class_list.html +1 -1
  107. data/doc/file.README.html +3 -3
  108. data/doc/frames.html +1 -1
  109. data/doc/index.html +3 -3
  110. data/doc/method_list.html +574 -558
  111. data/doc/top-level-namespace.html +3 -3
  112. data/docs/NgrokAPI/Client.html +140 -172
  113. data/docs/NgrokAPI/Error.html +3 -3
  114. data/docs/NgrokAPI/Errors/NotFoundError.html +3 -3
  115. data/docs/NgrokAPI/Errors.html +3 -3
  116. data/docs/NgrokAPI/HttpClient.html +30 -36
  117. data/docs/NgrokAPI/Models/APIKey.html +3 -3
  118. data/docs/NgrokAPI/Models/AWSAuth.html +3 -3
  119. data/docs/NgrokAPI/Models/AWSCredentials.html +3 -3
  120. data/docs/NgrokAPI/Models/AWSRole.html +3 -3
  121. data/docs/NgrokAPI/Models/AbuseReport.html +3 -3
  122. data/docs/NgrokAPI/Models/AbuseReportHostname.html +3 -3
  123. data/docs/NgrokAPI/Models/{IPWhitelistEntry.html → AgentIngress.html} +216 -68
  124. data/docs/NgrokAPI/Models/CertificateAuthority.html +3 -3
  125. data/docs/NgrokAPI/Models/Credential.html +3 -3
  126. data/docs/NgrokAPI/Models/EndpointCircuitBreaker.html +3 -3
  127. data/docs/NgrokAPI/Models/EndpointCompression.html +3 -3
  128. data/docs/NgrokAPI/Models/EndpointConfiguration.html +3 -3
  129. data/docs/NgrokAPI/Models/EndpointIPPolicy.html +3 -3
  130. data/docs/NgrokAPI/Models/EndpointIPPolicyMutate.html +3 -3
  131. data/docs/NgrokAPI/Models/EndpointLogging.html +3 -3
  132. data/docs/NgrokAPI/Models/EndpointLoggingMutate.html +3 -3
  133. data/docs/NgrokAPI/Models/EndpointMutualTLS.html +3 -3
  134. data/docs/NgrokAPI/Models/EndpointMutualTLSMutate.html +3 -3
  135. data/docs/NgrokAPI/Models/EndpointOAuth.html +3 -3
  136. data/docs/NgrokAPI/Models/EndpointOAuthFacebook.html +3 -3
  137. data/docs/NgrokAPI/Models/EndpointOAuthGitHub.html +3 -3
  138. data/docs/NgrokAPI/Models/EndpointOAuthGoogle.html +3 -3
  139. data/docs/NgrokAPI/Models/EndpointOAuthMicrosoft.html +3 -3
  140. data/docs/NgrokAPI/Models/EndpointOAuthProvider.html +3 -3
  141. data/docs/NgrokAPI/Models/EndpointOIDC.html +3 -3
  142. data/docs/NgrokAPI/Models/EndpointRequestHeaders.html +3 -3
  143. data/docs/NgrokAPI/Models/EndpointResponseHeaders.html +3 -3
  144. data/docs/NgrokAPI/Models/EndpointSAML.html +3 -3
  145. data/docs/NgrokAPI/Models/EndpointSAMLMutate.html +3 -3
  146. data/docs/NgrokAPI/Models/EndpointTLSTermination.html +3 -3
  147. data/docs/NgrokAPI/Models/EndpointWebhookValidation.html +3 -3
  148. data/docs/NgrokAPI/Models/EventDestination.html +3 -3
  149. data/docs/NgrokAPI/Models/EventSource.html +3 -3
  150. data/docs/NgrokAPI/Models/EventSourceList.html +3 -3
  151. data/docs/NgrokAPI/Models/EventSourceReplace.html +3 -3
  152. data/docs/NgrokAPI/Models/EventStream.html +3 -3
  153. data/docs/NgrokAPI/Models/EventSubscription.html +3 -3
  154. data/docs/NgrokAPI/Models/EventTarget.html +3 -3
  155. data/docs/NgrokAPI/Models/EventTargetCloudwatchLogs.html +3 -3
  156. data/docs/NgrokAPI/Models/EventTargetFirehose.html +3 -3
  157. data/docs/NgrokAPI/Models/EventTargetKinesis.html +3 -3
  158. data/docs/NgrokAPI/Models/IPPolicy.html +3 -3
  159. data/docs/NgrokAPI/Models/IPPolicyRule.html +3 -3
  160. data/docs/NgrokAPI/Models/IPRestriction.html +3 -3
  161. data/docs/NgrokAPI/Models/Listable.html +3 -3
  162. data/docs/NgrokAPI/Models/Ref.html +3 -3
  163. data/docs/NgrokAPI/Models/ReservedAddr.html +3 -3
  164. data/docs/NgrokAPI/Models/ReservedDomain.html +3 -3
  165. data/docs/NgrokAPI/Models/ReservedDomainCertJob.html +3 -3
  166. data/docs/NgrokAPI/Models/ReservedDomainCertPolicy.html +3 -3
  167. data/docs/NgrokAPI/Models/ReservedDomainCertStatus.html +3 -3
  168. data/docs/NgrokAPI/Models/SSHCertificateAuthority.html +3 -3
  169. data/docs/NgrokAPI/Models/SSHCredential.html +3 -3
  170. data/docs/NgrokAPI/Models/SSHHostCertificate.html +3 -3
  171. data/docs/NgrokAPI/Models/SSHUserCertificate.html +3 -3
  172. data/docs/NgrokAPI/Models/TLSCertificate.html +3 -3
  173. data/docs/NgrokAPI/Models/TLSCertificateSANs.html +3 -3
  174. data/docs/NgrokAPI/Models/Tunnel.html +3 -3
  175. data/docs/NgrokAPI/Models/TunnelSession.html +3 -3
  176. data/docs/NgrokAPI/Models.html +5 -5
  177. data/docs/NgrokAPI/PagedIterator.html +3 -3
  178. data/docs/NgrokAPI/Services/APIKeysClient.html +99 -149
  179. data/docs/NgrokAPI/Services/AbuseReportsClient.html +19 -33
  180. data/docs/NgrokAPI/Services/{IPWhitelistClient.html → AgentIngressesClient.html} +209 -265
  181. data/docs/NgrokAPI/Services/CertificateAuthoritiesClient.html +104 -156
  182. data/docs/NgrokAPI/Services/CredentialsClient.html +108 -164
  183. data/docs/NgrokAPI/Services/EndpointCircuitBreakerModuleClient.html +49 -77
  184. data/docs/NgrokAPI/Services/EndpointCompressionModuleClient.html +49 -77
  185. data/docs/NgrokAPI/Services/EndpointConfigurationsClient.html +137 -273
  186. data/docs/NgrokAPI/Services/EndpointIPPolicyModuleClient.html +49 -77
  187. data/docs/NgrokAPI/Services/EndpointLoggingModuleClient.html +49 -77
  188. data/docs/NgrokAPI/Services/EndpointMutualTLSModuleClient.html +49 -77
  189. data/docs/NgrokAPI/Services/EndpointOAuthModuleClient.html +49 -77
  190. data/docs/NgrokAPI/Services/EndpointOIDCModuleClient.html +49 -77
  191. data/docs/NgrokAPI/Services/EndpointRequestHeadersModuleClient.html +49 -77
  192. data/docs/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html +49 -77
  193. data/docs/NgrokAPI/Services/EndpointSAMLModuleClient.html +49 -77
  194. data/docs/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html +49 -77
  195. data/docs/NgrokAPI/Services/EndpointWebhookValidationModuleClient.html +49 -77
  196. data/docs/NgrokAPI/Services/EventDestinationsClient.html +116 -184
  197. data/docs/NgrokAPI/Services/EventSourcesClient.html +95 -157
  198. data/docs/NgrokAPI/Services/EventStreamsClient.html +119 -189
  199. data/docs/NgrokAPI/Services/EventSubscriptionsClient.html +113 -175
  200. data/docs/NgrokAPI/Services/IPPoliciesClient.html +104 -156
  201. data/docs/NgrokAPI/Services/IPPolicyRulesClient.html +111 -169
  202. data/docs/NgrokAPI/Services/IPRestrictionsClient.html +116 -180
  203. data/docs/NgrokAPI/Services/ReservedAddrsClient.html +132 -198
  204. data/docs/NgrokAPI/Services/ReservedDomainsClient.html +193 -303
  205. data/docs/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +110 -166
  206. data/docs/NgrokAPI/Services/SSHCredentialsClient.html +111 -169
  207. data/docs/NgrokAPI/Services/SSHHostCertificatesClient.html +111 -171
  208. data/docs/NgrokAPI/Services/SSHUserCertificatesClient.html +111 -175
  209. data/docs/NgrokAPI/Services/TLSCertificatesClient.html +107 -161
  210. data/docs/NgrokAPI/Services/TunnelSessionsClient.html +87 -135
  211. data/docs/NgrokAPI/Services/TunnelsClient.html +13 -25
  212. data/docs/NgrokAPI/Services.html +5 -5
  213. data/docs/NgrokAPI.html +4 -4
  214. data/docs/_index.html +18 -18
  215. data/docs/class_list.html +1 -1
  216. data/docs/file.README.html +3 -3
  217. data/docs/frames.html +1 -1
  218. data/docs/index.html +3 -3
  219. data/docs/method_list.html +574 -558
  220. data/docs/top-level-namespace.html +3 -3
  221. data/lib/ngrokapi/client.rb +5 -13
  222. data/lib/ngrokapi/http_client.rb +1 -4
  223. data/lib/ngrokapi/models/{ip_whitelist_entry.rb → agent_ingress.rb} +13 -9
  224. data/lib/ngrokapi/services/abuse_reports_client.rb +3 -10
  225. data/lib/ngrokapi/services/{ip_whitelist_client.rb → agent_ingresses_client.rb} +65 -94
  226. data/lib/ngrokapi/services/api_keys_client.rb +11 -36
  227. data/lib/ngrokapi/services/certificate_authorities_client.rb +11 -37
  228. data/lib/ngrokapi/services/credentials_client.rb +11 -39
  229. data/lib/ngrokapi/services/endpoint_circuit_breaker_module_client.rb +6 -20
  230. data/lib/ngrokapi/services/endpoint_compression_module_client.rb +6 -20
  231. data/lib/ngrokapi/services/endpoint_configurations_client.rb +11 -79
  232. data/lib/ngrokapi/services/endpoint_ip_policy_module_client.rb +6 -20
  233. data/lib/ngrokapi/services/endpoint_logging_module_client.rb +6 -20
  234. data/lib/ngrokapi/services/endpoint_mutual_tls_module_client.rb +6 -20
  235. data/lib/ngrokapi/services/endpoint_o_auth_module_client.rb +6 -20
  236. data/lib/ngrokapi/services/endpoint_oidc_module_client.rb +6 -20
  237. data/lib/ngrokapi/services/endpoint_request_headers_module_client.rb +6 -20
  238. data/lib/ngrokapi/services/endpoint_response_headers_module_client.rb +6 -20
  239. data/lib/ngrokapi/services/endpoint_saml_module_client.rb +6 -20
  240. data/lib/ngrokapi/services/endpoint_tls_termination_module_client.rb +6 -20
  241. data/lib/ngrokapi/services/endpoint_webhook_validation_module_client.rb +6 -20
  242. data/lib/ngrokapi/services/event_destinations_client.rb +11 -45
  243. data/lib/ngrokapi/services/event_sources_client.rb +9 -40
  244. data/lib/ngrokapi/services/event_streams_client.rb +11 -46
  245. data/lib/ngrokapi/services/event_subscriptions_client.rb +11 -42
  246. data/lib/ngrokapi/services/ip_policies_client.rb +11 -37
  247. data/lib/ngrokapi/services/ip_policy_rules_client.rb +11 -40
  248. data/lib/ngrokapi/services/ip_restrictions_client.rb +11 -43
  249. data/lib/ngrokapi/services/reserved_addrs_client.rb +13 -46
  250. data/lib/ngrokapi/services/reserved_domains_client.rb +19 -74
  251. data/lib/ngrokapi/services/ssh_certificate_authorities_client.rb +11 -39
  252. data/lib/ngrokapi/services/ssh_credentials_client.rb +11 -40
  253. data/lib/ngrokapi/services/ssh_host_certificates_client.rb +11 -41
  254. data/lib/ngrokapi/services/ssh_user_certificates_client.rb +11 -43
  255. data/lib/ngrokapi/services/tls_certificates_client.rb +11 -38
  256. data/lib/ngrokapi/services/tunnel_sessions_client.rb +12 -36
  257. data/lib/ngrokapi/services/tunnels_client.rb +4 -10
  258. data/lib/ngrokapi/version.rb +1 -1
  259. data/lib/ngrokapi.rb +1 -1
  260. data/ngrok-api.gemspec +1 -1
  261. data/spec/ngrokapi/client_spec.rb +6 -6
  262. data/spec/ngrokapi/models/agent_ingress_spec.rb +42 -0
  263. data/spec/ngrokapi/services/{ip_whitelist_client_spec.rb → agent_ingresses_client_spec.rb} +49 -49
  264. data/spec/spec_helper.rb +1096 -1045
  265. metadata +10 -10
  266. data/spec/ngrokapi/models/ip_whitelist_entry_spec.rb +0 -42
data/spec/spec_helper.rb CHANGED
@@ -1,1045 +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
- # 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 api_key_result
61
- {
62
- "id" => "ak_1xrq8h890dWRYiRdIHeZYCdlyT7",
63
- "uri" => "https://api.ngrok.com/api_keys/ak_1xrq8h890dWRYiRdIHeZYCdlyT7",
64
- "description" => "",
65
- "metadata" => "",
66
- "created_at" => "2021-09-08T17:49:56Z",
67
- "token" => nil,
68
- }
69
- end
70
-
71
- def api_key_result2
72
- {
73
- "id" => "ak_1xrqAsg8fMHBgD71MSbtr6a0pA2",
74
- "uri" => "https://api.ngrok.com/api_keys/ak_1xrqAsg8fMHBgD71MSbtr6a0pA2",
75
- "description" => "",
76
- "metadata" => "",
77
- "created_at" => "2021-09-08T17:50:14Z",
78
- "token" => nil,
79
- }
80
- end
81
-
82
- def api_key_results
83
- {
84
- "keys" => [
85
- api_key_result,
86
- api_key_result2,
87
- ],
88
- "uri" => "https://api.ngrok.com/api_keys",
89
- "next_page_uri" => nil,
90
- }
91
- end
92
-
93
- def aws_auth_result
94
- {
95
- }
96
- end
97
-
98
- def aws_credentials_result
99
- {
100
- }
101
- end
102
-
103
- def aws_role_result
104
- {
105
- }
106
- end
107
-
108
- def certificate_authority_result
109
- {
110
- "id" => "ca_1rV5DZka5Q6SaX2NwY1rKVOVgA1",
111
- "uri" => "https://api.ngrok.com/certificate_authorities/ca_1rV5DZka5Q6SaX2NwY1rKVOVgA1",
112
- "created_at" => "2021-04-21T23:38:17Z",
113
- "description" => "Device Connectivity Authority",
114
- "metadata" => "",
115
- "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",
116
- "subject_common_name" => "ACME Device Authority",
117
- "not_before" => "2020-05-01T16:25:09Z",
118
- "not_after" => "2021-05-01T16:25:09Z",
119
- "key_usages" => [],
120
- "extended_key_usages" => [],
121
- }
122
- end
123
-
124
- def certificate_authority_result2
125
- {
126
- "id" => "ca_1rV5Dca4ELSBvqQv2YmoQp4s220",
127
- "uri" => "https://api.ngrok.com/certificate_authorities/ca_1rV5Dca4ELSBvqQv2YmoQp4s220",
128
- "created_at" => "2021-04-21T23:38:17Z",
129
- "description" => "Internal Coprorates Services Authority",
130
- "metadata" => "{\"internal_id\" => \"7d2caeee-cdc3-4b26-b2c2-b280b8287552\"}",
131
- "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",
132
- "subject_common_name" => "Intranet Services Authority",
133
- "not_before" => "2020-05-01T16:27:59Z",
134
- "not_after" => "2021-05-01T16:27:59Z",
135
- "key_usages" => [],
136
- "extended_key_usages" => [],
137
- }
138
- end
139
-
140
- def certificate_authority_results
141
- {
142
- "certificate_authorities" => [
143
- certificate_authority_result,
144
- certificate_authority_result2,
145
- ],
146
- "uri" => "https://api.ngrok.com/certificate_authorities",
147
- "next_page_uri" => nil,
148
- }
149
- end
150
-
151
- def credential_result
152
- {
153
- "id" => "cr_1rV53L5Cbhpz2SEyPaMuh3Fz4fN",
154
- "uri" => "https://api.ngrok.com/credentials/cr_1rV53L5Cbhpz2SEyPaMuh3Fz4fN",
155
- "created_at" => "2021-04-21T23:36:55Z",
156
- "description" => "for device #132",
157
- "metadata" => "",
158
- "token" => nil,
159
- "acl" => [
160
- "bind:1.tcp.ngrok.io:20002",
161
- "bind:132.devices.company.com",
162
- ],
163
- }
164
- end
165
-
166
- def credential_result2
167
- {
168
- "id" => "cr_1rV53HesDPMw48BJyEO9Zlgz9dd",
169
- "uri" => "https://api.ngrok.com/credentials/cr_1rV53HesDPMw48BJyEO9Zlgz9dd",
170
- "created_at" => "2021-04-21T23:36:55Z",
171
- "description" => "development cred for alan@example.com",
172
- "metadata" => "",
173
- "token" => nil,
174
- "acl" => [],
175
- }
176
- end
177
-
178
- def credential_results
179
- {
180
- "credentials" => [
181
- credential_result,
182
- credential_result2,
183
- ],
184
- "uri" => "https //api.ngrok.com/credentials",
185
- "next_page_uri" => nil,
186
- }
187
- end
188
-
189
- def endpoint_compression_result
190
- {
191
- }
192
- end
193
-
194
- def endpoint_configuration_result
195
- {
196
- "id" => "ec_1rV504F3NJD5F9CSDUeWRkld2SB",
197
- "type" => "https",
198
- "description" => "app servers",
199
- "metadata" => "",
200
- "created_at" => "2021-04-21T23:36:29Z",
201
- "uri" => "https://api.ngrok.com/endpoint_configurations/ec_1rV504F3NJD5F9CSDUeWRkld2SB",
202
- "basic_auth" => nil,
203
- "circuit_breaker" => nil,
204
- "compression" => nil,
205
- "request_headers" => {
206
- "enabled" => true,
207
- "add" => {
208
- "x-frontend" => "ngrok",
209
- },
210
- "remove" => [
211
- "cache-control",
212
- ],
213
- },
214
- "response_headers" => nil,
215
- "ip_policy" => nil,
216
- "mutual_tls" => nil,
217
- "tls_termination" => nil,
218
- "webhook_validation" => nil,
219
- "oauth" => nil,
220
- "logging" => nil,
221
- "saml" => nil,
222
- "oidc" => nil,
223
- "backend" => nil,
224
- }
225
- end
226
-
227
- def endpoint_configuration_result2
228
- {
229
- "id" => "ec_1rV4zxf7pC5PFpXAcL2A9VLLeGF",
230
- "type" => "https",
231
- "description" => "web servers",
232
- "metadata" => "",
233
- "created_at" => "2021-04-21T23:36:29Z",
234
- "uri" => "https://api.ngrok.com/endpoint_configurations/ec_1rV4zxf7pC5PFpXAcL2A9VLLeGF",
235
- "basic_auth" => nil,
236
- "circuit_breaker" => {
237
- "enabled" => true,
238
- "tripped_duration" => 0,
239
- "rolling_window" => 0,
240
- "num_buckets" => 0,
241
- "volume_threshold" => 0,
242
- "error_threshold_percentage" => 0.2,
243
- },
244
- "compression" => {
245
- "enabled" => true,
246
- },
247
- "request_headers" => nil,
248
- "response_headers" => {
249
- "enabled" => true,
250
- "add" => {
251
- "content-security-policy" => "script-src 'self'",
252
- "x-frame-options" => "DENY",
253
- },
254
- "remove" => [],
255
- },
256
- "ip_policy" => nil,
257
- "mutual_tls" => nil,
258
- "tls_termination" => nil,
259
- "webhook_validation" => nil,
260
- "oauth" => nil,
261
- "logging" => nil,
262
- "saml" => nil,
263
- "oidc" => nil,
264
- "backend" => nil,
265
- }
266
- end
267
-
268
- def endpoint_configuration_results
269
- {
270
- "endpoint_configurations" => [
271
- endpoint_configuration_result,
272
- endpoint_configuration_result2,
273
- ],
274
- "uri" => "https://api.ngrok.com/endpoint_configurations",
275
- "next_page_uri" => nil,
276
- }
277
- end
278
-
279
- def endpoint_circuit_breaker_result
280
- {
281
- }
282
- end
283
-
284
- def endpoint_ip_policy_result
285
- {
286
- }
287
- end
288
-
289
- def endpoint_ip_policy_mutate_result
290
- {
291
- }
292
- end
293
-
294
- def endpoint_logging_result
295
- {
296
- }
297
- end
298
-
299
- def endpoint_logging_mutate_result
300
- {
301
- }
302
- end
303
-
304
- def endpoint_mutual_tls_result
305
- {
306
- }
307
- end
308
-
309
- def endpoint_mutual_tls_mutate_result
310
- {
311
- }
312
- end
313
-
314
- def endpoint_o_auth_facebook_result
315
- {
316
- }
317
- end
318
-
319
- def endpoint_o_auth_git_hub_result
320
- {
321
- }
322
- end
323
-
324
- def endpoint_o_auth_google_result
325
- {
326
- }
327
- end
328
-
329
- def endpoint_o_auth_microsoft_result
330
- {
331
- }
332
- end
333
-
334
- def endpoint_o_auth_provider_result
335
- {
336
- }
337
- end
338
-
339
- def endpoint_o_auth_result
340
- {
341
- }
342
- end
343
-
344
- def endpoint_oidc_result
345
- {
346
- }
347
- end
348
-
349
- def endpoint_request_headers_result
350
- {
351
- }
352
- end
353
-
354
- def endpoint_response_headers_result
355
- {
356
- }
357
- end
358
-
359
- def endpoint_saml_result
360
- {
361
- }
362
- end
363
-
364
- def endpoint_saml_mutate_result
365
- {
366
- }
367
- end
368
-
369
- def endpoint_tls_termination_result
370
- {
371
- }
372
- end
373
-
374
- def endpoint_webhook_validation_result
375
- {
376
- }
377
- end
378
-
379
- def event_destination_result
380
- {
381
- "id" => "ed_1ro7YLHYTloEfaH6LDcX2A3z18Q",
382
- "metadata" => "",
383
- "created_at" => "2021-04-28T17:23:54Z",
384
- "description" => "",
385
- "format" => "json",
386
- "target" => {
387
- "firehose" => nil,
388
- "kinesis" => {
389
- "auth" => {
390
- "role" => nil,
391
- "creds" => {
392
- "aws_access_key_id" => "AKIAIOSFODNN7EXAMPLE",
393
- "aws_secret_access_key" => nil,
394
- },
395
- },
396
- "stream_arn" => "arn:ngrok-local:kinesis:us-east-2:123456789012:stream/mystream",
397
- },
398
- "cloudwatch_logs" => nil,
399
- },
400
- "uri" => "https://api.ngrok.com/event_destinations/ed_1ro7YLHYTloEfaH6LDcX2A3z18Q",
401
- }
402
- end
403
-
404
- def event_destination_result2
405
- {
406
- "id" => "ed_1ro7aZHBLfa4vYAeRpweVomDSJa",
407
- "metadata" => "{\"environment\" =>\"dev\"}",
408
- "created_at" => "2021-04-28T17:24:12Z",
409
- "description" => "kinesis dev stream",
410
- "format" => "json",
411
- "target" => {
412
- "firehose" => nil,
413
- "kinesis" => {
414
- "auth" => {
415
- "role" => {
416
- "role_arn" => "arn:aws:iam::123456789012:role/example",
417
- },
418
- "creds" => nil,
419
- },
420
- "stream_arn" => "arn:ngrok-local:kinesis:us-east-2:123456789012:stream/mystream2",
421
- },
422
- "cloudwatch_logs" => nil,
423
- },
424
- "uri" => "https://api.ngrok.com/event_destinations/ed_1ro7aZHBLfa4vYAeRpweVomDSJa",
425
- }
426
- end
427
-
428
- def event_destination_results
429
- {
430
- "event_destinations" => [
431
- event_destination_result,
432
- event_destination_result2,
433
- ],
434
- "uri" => "https://api.ngrok.com/event_destinations",
435
- "next_page_uri" => nil,
436
- }
437
- end
438
-
439
- def event_source_replace_result
440
- {
441
- }
442
- end
443
-
444
- def event_stream_result
445
- {
446
- "id" => "es_1ro7aBEJQkcfUBNX1r3IBSqjDU8",
447
- "uri" => "https://api.ngrok.com/event_streams/es_1ro7aBEJQkcfUBNX1r3IBSqjDU8",
448
- "created_at" => "2021-04-28T17:24:09Z",
449
- "metadata" => "{\"environment\" => \"staging\"}",
450
- "description" => "low sampling, basic HTTP logs",
451
- "fields" => [
452
- "http.request.method",
453
- "http.response.status_code",
454
- "conn.client_ip",
455
- ],
456
- "event_type" => "http_request_complete",
457
- "destination_ids" => [
458
- "ed_1ro7aG1J2tGT6neX0PHJLTuzQ9E",
459
- ],
460
- "sampling_rate" => 0.1,
461
- }
462
- end
463
-
464
- def event_stream_result2
465
- {
466
- "id" => "es_1ro7YJvY0atyuqOjbLMsZfe928o",
467
- "uri" => "https://api.ngrok.com/event_streams/es_1ro7YJvY0atyuqOjbLMsZfe928o",
468
- "created_at" => "2021-04-28T17:23:54Z",
469
- "metadata" => "",
470
- "description" => "",
471
- "fields" => [
472
- "http.request.method",
473
- "http.response.status_code",
474
- "conn.client_ip",
475
- ],
476
- "event_type" => "http_request_complete",
477
- "destination_ids" => [
478
- "ed_1ro7YLHYTloEfaH6LDcX2A3z18Q",
479
- ],
480
- "sampling_rate" => 0.1,
481
- }
482
- end
483
-
484
- def event_stream_results
485
- {
486
- "event_streams" => [
487
- event_stream_result,
488
- event_stream_result2,
489
- ],
490
- "uri" => "https://api.ngrok.com/event_streams",
491
- "next_page_uri" => nil,
492
- }
493
- end
494
-
495
- def event_source_result
496
- {
497
- }
498
- end
499
-
500
- def event_source_list_result
501
- {
502
- "sources" => [],
503
- "uri" => "https://api.ngrok.com/event_sources",
504
- }
505
- end
506
-
507
- def event_subscription_result
508
- {
509
- "id" => "esb_1ro7av77nFHjRVO7GwDxRE7TElG",
510
- "uri" => "https://api.ngrok.com/event_subscriptions/esb_1ro7av77nFHjRVO7GwDxRE7TElG",
511
- "created_at" => "2021-04-28T17:24:15Z",
512
- "metadata" => "{\"environment\" => \"staging\"}",
513
- "description" => "low sampling, basic HTTP logs",
514
- "sources" => [
515
- {
516
- "type" => "http_request_complete",
517
- "uri" => "https://api.ngrok.com/event_subscriptions/esb_1ro7av77nFHjRVO7GwDxRE7TElG/sources/http_request_complete",
518
- },
519
- ],
520
- "destinations" => [
521
- {
522
- "id" => "ed_1ro7aylyqQ1LLMWNWrOISvlfveQ",
523
- "uri" => "https://api.ngrok.com/event_destinations/ed_1ro7aylyqQ1LLMWNWrOISvlfveQ",
524
- },
525
- ],
526
- }
527
- end
528
-
529
- def event_subscription_results
530
- {
531
- "event_subscriptions" => [
532
- event_subscription_result,
533
- ],
534
- "uri" => "https://api.ngrok.com/event_subscriptions",
535
- "next_page_uri" => nil,
536
- }
537
- end
538
-
539
- def event_target_cloudwatch_logs_result
540
- {
541
- }
542
- end
543
-
544
- def event_target_firehose_result
545
- {
546
- }
547
- end
548
-
549
- def event_target_kinesis_result
550
- {
551
- }
552
- end
553
-
554
- def event_target_result
555
- {
556
- }
557
- end
558
-
559
- def ip_policy_result
560
- {
561
- "id" => "ipp_1vckSz67sd2iZNRX03t8i8wihdB",
562
- "uri" => "https://api.ngrok.com/ip_policies/ipp_1vckSz67sd2iZNRX03t8i8wihdB",
563
- "created_at" => "2021-07-21T11:59:27Z",
564
- "description" => "Developer Environments",
565
- "metadata" => "",
566
- "action" => "allow",
567
- }
568
- end
569
-
570
- def ip_policy_result2
571
- {
572
- "id" => "ipp_1vckSvgJ7tjaBIs4w8KZOYQjA7q",
573
- "uri" => "https://api.ngrok.com/ip_policies/ipp_1vckSvgJ7tjaBIs4w8KZOYQjA7q",
574
- "created_at" => "2021-07-21T11:59:27Z",
575
- "description" => "API Outbound Gateway",
576
- "metadata" => "",
577
- "action" => "allow",
578
- }
579
- end
580
-
581
- def ip_policy_results
582
- {
583
- "ip_policies" => [
584
- ip_policy_result,
585
- ip_policy_result2,
586
- ],
587
- "uri" => "https://api.ngrok.com/ip_policies",
588
- "next_page_uri" => nil,
589
- }
590
- end
591
-
592
- def ip_policy_rule_result
593
- {
594
- "id" => "ipr_1rV56jFvshOkyVBrKOLNOdd9Jq2",
595
- "uri" => "https://api.ngrok.com/ip_policy_rules/ipr_1rV56jFvshOkyVBrKOLNOdd9Jq2",
596
- "created_at" => "2021-04-21T23:37:22Z",
597
- "description" => "alan laptop",
598
- "metadata" => "",
599
- "cidr" => "2.2.2.2/32",
600
- "ip_policy" => {
601
- "id" => "ipp_1rV56VrAxesFteoj4XZxaaYyvXo",
602
- "uri" => "https://api.ngrok.com/ip_policies/ipp_1rV56VrAxesFteoj4XZxaaYyvXo",
603
- },
604
- }
605
- end
606
-
607
- def ip_policy_rule_result2
608
- {
609
- "id" => "ipr_1rV56fKu4NnoTEVfCPSRqE5zRsK",
610
- "uri" => "https://api.ngrok.com/ip_policy_rules/ipr_1rV56fKu4NnoTEVfCPSRqE5zRsK",
611
- "created_at" => "2021-04-21T23:37:22Z",
612
- "description" => "sf office",
613
- "metadata" => "",
614
- "cidr" => "132.2.19.0/24",
615
- "ip_policy" => {
616
- "id" => "ipp_1rV56VrAxesFteoj4XZxaaYyvXo",
617
- "uri" => "https://api.ngrok.com/ip_policies/ipp_1rV56VrAxesFteoj4XZxaaYyvXo",
618
- },
619
- }
620
- end
621
-
622
- def ip_policy_rule_results
623
- {
624
- "ip_policy_rules" => [
625
- ip_policy_rule_result,
626
- ip_policy_rule_result2,
627
- ],
628
- "uri" => "https://api.ngrok.com/ip_policy_rules",
629
- "next_page_uri" => nil,
630
- }
631
- end
632
-
633
- def ip_restriction_result
634
- {
635
- "id" => "ipx_1rV5CKgSrd3y2fosbXX5GoAhMeR",
636
- "uri" => "https://api.ngrok.com/ip_restrictions/ipx_1rV5CKgSrd3y2fosbXX5GoAhMeR",
637
- "created_at" => "2021-04-21T23:38:07Z",
638
- "description" => "",
639
- "metadata" => "",
640
- "enforced" => false,
641
- "type" => "dashboard",
642
- "ip_policies" => [
643
- {
644
- "id" => "ipp_1rV5CMI1Aw8MiqWtjlQCyDDEWnQ",
645
- "uri" => "https://api.ngrok.com/ip_policies/ipp_1rV5CMI1Aw8MiqWtjlQCyDDEWnQ",
646
- },
647
- ],
648
- }
649
- end
650
-
651
- def ip_restriction_results
652
- {
653
- "ip_restrictions" => [
654
- ip_restriction_result,
655
- ],
656
- "uri" => "https://api.ngrok.com/ip_restrictions",
657
- "next_page_uri" => nil,
658
- }
659
- end
660
-
661
- def ip_whitelist_entry_result
662
- {
663
- "id" => "wl_1rV55uK6IddK1eJWBcopcSqr9jr",
664
- "uri" => "https://api.ngrok.com/ip_whitelist/wl_1rV55uK6IddK1eJWBcopcSqr9jr",
665
- "created_at" => "2021-04-21T23:37:16Z",
666
- "description" => "outbound proxy servers",
667
- "metadata" => "",
668
- "ip_net" => "10.1.1.0/24",
669
- }
670
- end
671
-
672
- def ip_whitelist_entry_result2
673
- {
674
- "id" => "wl_1rV55s4NmZ81mUa5zqPetlpngC7",
675
- "uri" => "https://api.ngrok.com/ip_whitelist/wl_1rV55s4NmZ81mUa5zqPetlpngC7",
676
- "created_at" => "2021-04-21T23:37:16Z",
677
- "description" => "office wifi",
678
- "metadata" => "",
679
- "ip_net" => "78.3.12.121/32",
680
- }
681
- end
682
-
683
- def ip_whitelist_entry_results
684
- {
685
- "whitelist" => [
686
- ip_whitelist_entry_result,
687
- ip_whitelist_entry_result2,
688
- ],
689
- "uri" => "https://api.ngrok.com/ip_whitelist",
690
- "next_page_uri" => nil,
691
- }
692
- end
693
-
694
- def ref_result
695
- {
696
- }
697
- end
698
-
699
- def reserved_addr_result
700
- {
701
- "id" => "ra_1rV3SMgGd7NuIB89hzucFK8r8nZ",
702
- "uri" => "https://api.ngrok.com/reserved_addrs/ra_1rV3SMgGd7NuIB89hzucFK8r8nZ",
703
- "created_at" => "2021-04-21T23:36:49Z",
704
- "description" => "SSH for device #001",
705
- "metadata" => "",
706
- "addr" => "1.tcp.ngrok.io:20011",
707
- "region" => "us",
708
- "endpoint_configuration" => nil,
709
- }
710
- end
711
-
712
- def reserved_addr_results
713
- {
714
- "reserved_addrs" => [
715
- reserved_addr_result,
716
- ],
717
- "uri" => "https://api.ngrok.com/reserved_addrs",
718
- "next_page_uri" => nil,
719
- }
720
- end
721
-
722
- def reserved_domain_cert_policy_result
723
- {
724
- }
725
- end
726
-
727
- def reserved_domain_cert_status_result
728
- {
729
- }
730
- end
731
-
732
- def reserved_domain_result
733
- {
734
- "id" => "rd_1rV51TBbVHrjheFFdfasWnL6E1z",
735
- "uri" => "https://api.ngrok.com/reserved_domains/rd_1rV51TBbVHrjheFFdfasWnL6E1z",
736
- "created_at" => "2021-04-21T23:36:41Z",
737
- "description" => "Device 0001 Dashboard",
738
- "metadata" => "{\"service\" => \"dashboard\"}",
739
- "domain" => "manage-0001.app.example.com",
740
- "region" => "us",
741
- "cname_target" => "2y4vzpktb.cname.us.ngrok.io",
742
- "http_endpoint_configuration" => nil,
743
- "https_endpoint_configuration" => nil,
744
- "certificate" => nil,
745
- "certificate_management_policy" => nil,
746
- "certificate_management_status" => nil,
747
- }
748
- end
749
-
750
- def reserved_domain_result2
751
- {
752
- "id" => "rd_1rV51Qr590Jb8MgfiWIxshe0RWs",
753
- "uri" => "https://api.ngrok.com/reserved_domains/rd_1rV51Qr590Jb8MgfiWIxshe0RWs",
754
- "created_at" => "2021-04-21T23:36:40Z",
755
- "description" => "",
756
- "metadata" => "",
757
- "domain" => "myapp.mydomain.com",
758
- "region" => "us",
759
- "cname_target" => "29flmdbzs.cname.us.ngrok.io",
760
- "http_endpoint_configuration" => nil,
761
- "https_endpoint_configuration" => nil,
762
- "certificate" => {
763
- "id" => "cert_1rV51OQetZPK9V6vTWUVy3Onjir",
764
- "uri" => "https://api.ngrok.com/tls_certificates/cert_1rV51OQetZPK9V6vTWUVy3Onjir",
765
- },
766
- "certificate_management_policy" => nil,
767
- "certificate_management_status" => nil,
768
- }
769
- end
770
-
771
- def reserved_domain_results
772
- {
773
- "reserved_domains" => [
774
- reserved_domain_result,
775
- reserved_domain_result2,
776
- ],
777
- "uri" => "https://api.ngrok.com/reserved_domains",
778
- "next_page_uri" => nil,
779
- }
780
- end
781
-
782
- def reserved_domain_cert_job_result
783
- {
784
- }
785
- end
786
-
787
- def reserved_domain_cert_ns_target_result
788
- {
789
- }
790
- end
791
-
792
- def ssh_certificate_authority_result
793
- {
794
- "id" => "sshca_1rV5FT4Uy4JaYbMnSyKS3p0xE4f",
795
- "uri" => "https://api.ngrok.com/ssh_certificate_authorities/sshca_1rV5FT4Uy4JaYbMnSyKS3p0xE4f",
796
- "created_at" => "2021-04-21T23:38:32Z",
797
- "description" => "Staging Environment Hosts",
798
- "metadata" => "",
799
- "public_key" => "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDx404hGFBUi7mFqNcd1TkrP4MVtf57kJVP3r0h3rSO",
800
- "key_type" => "ed25519",
801
- }
802
- end
803
-
804
- def ssh_certificate_authority_results
805
- {
806
- "ssh_certificate_authorities" => [
807
- ssh_certificate_authority_result,
808
- ],
809
- "uri" => "https://api.ngrok.com/ssh_certificate_authorities",
810
- "next_page_uri" => nil,
811
- }
812
- end
813
-
814
- def ssh_credential_result
815
- {
816
- "id" => "sshcr_1rV5504YUNgDKQ3WvFOeotnfgNm",
817
- "uri" => "https://api.ngrok.com/ssh_credentials/sshcr_1rV5504YUNgDKQ3WvFOeotnfgNm",
818
- "created_at" => "2021-04-21T23:37:09Z",
819
- "description" => "for device #132",
820
- "metadata" => "",
821
- "public_key" => "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDmGS49FkSODAcKhn3+/47DW2zEn19BZvzRQ8RZjL3v6hCIX2qXfsFK35EGxNI0wV23H4xXC2gVRPHKU71YnCb50tad3yMBTM6+2yfGsEDasEH/anmBLclChKvuGiT547RskZlpbAbdq3GvbzmY+R/2EBRMOiObpc8XmSzKAd05j28kqN0+rZO65SWId0MXdvJdSCSAnuRqBNd/aXKlu8hBPDcgwbT2lMkuR+ApoBS2FLRBOiQyt2Ol0T7Uuf7lTLlazpGB3uTw5zFYUNXkuuI6cAP8QYuY1Bne/hNrG8t3Aw9a1yc2C4Fz1hJ/4OMRxTQ8SUQf+Rmxs8DryMlMFJ8r device132@example.com",
822
- "acl" => [
823
- "bind:1.tcp.ngrok.io:20002",
824
- "bind:132.devices.company.com",
825
- ],
826
- }
827
- end
828
-
829
- def ssh_credential_results
830
- {
831
- "ssh_credentials" => [
832
- ssh_credential_result,
833
- ],
834
- "uri" => "https://api.ngrok.com/ssh_credentials",
835
- "next_page_uri" => nil,
836
- }
837
- end
838
-
839
- def ssh_host_certificate_result
840
- {
841
- "id" => "shcrt_1rV5GnCIHgKW4OyBIjKSqpbaf04",
842
- "uri" => "https://api.ngrok.com/ssh_host_certificates/shcrt_1rV5GnCIHgKW4OyBIjKSqpbaf04",
843
- "created_at" => "2021-04-21T23:38:42Z",
844
- "description" => "personal server",
845
- "metadata" => "",
846
- "public_key" => "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+Cgk= inconshreveable.com",
847
- "key_type" => "ecdsa",
848
- "ssh_certificate_authority_id" => "sshca_1rV5GiTaiBQg8AtJiyiVeNKzYiR",
849
- "principals" => [
850
- "inconshreveable.com",
851
- "10.2.42.9",
852
- ],
853
- "valid_after" => "2021-04-21T23:38:42Z",
854
- "valid_until" => "2021-07-20T23:38:42Z",
855
- "certificate" => "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgl+i7u7P1mVEWv2Igcf76hXPS2/xnKniDnJZX53xfuTQAAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+CgkAAAAAAAAAAAAAAAIAAAAhc2hjcnRfMXJWNUduQ0lIZ0tXNE95QklqS1NxcGJhZjA0AAAAJAAAABNpbmNvbnNocmV2ZWFibGUuY29tAAAACTEwLjIuNDIuOQAAAABggLeCAAAAAGD3XoIAAAAAAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIEpsciWkhlFN7VFWGMkSy1xFNwuZLVh7ZE/uo79NWH8LAAAAUwAAAAtzc2gtZWQyNTUxOQAAAECJHCycrdAf2WNjWGWolP+Y5TlIm5LX4TdRJFeSdUVp0amDg9ZYRltqXy61qGVc43G/unqz35ZzkwJPmVAi/ZQL shcrt_1rV5GnCIHgKW4OyBIjKSqpbaf04",
856
- }
857
- end
858
-
859
- def ssh_host_certificate_results
860
- {
861
- "ssh_host_certificates" => [
862
- ssh_host_certificate_result,
863
- ],
864
- "uri" => "https://api.ngrok.com/ssh_host_certificates",
865
- "next_page_uri" => nil,
866
- }
867
- end
868
-
869
- def ssh_user_certificate_result
870
- {
871
- "id" => "sucrt_1rV5G8jarzhIEEQTv1wXRE1KRU1",
872
- "uri" => "https://api.ngrok.com/ssh_user_certificates/sucrt_1rV5G8jarzhIEEQTv1wXRE1KRU1",
873
- "created_at" => "2021-04-21T23:38:37Z",
874
- "description" => "temporary access to staging machine",
875
- "metadata" => "",
876
- "public_key" => "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0= alan@work-laptop",
877
- "key_type" => "ecdsa",
878
- "ssh_certificate_authority_id" => "sshca_1rV5G33U0TV5AFqiEfKcjOi8W4t",
879
- "principals" => [
880
- "ec2-user",
881
- "root",
882
- ],
883
- "critical_options" => {},
884
- "extensions" => {
885
- "permit-pty" => "",
886
- "permit-user-rc" => "",
887
- },
888
- "valid_after" => "2021-04-21T23:38:37Z",
889
- "valid_until" => "2021-07-20T23:38:37Z",
890
- "certificate" => "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgMQgYZDmRzsM+dcF5rZZM5/xHEFNygLtRKq7Ycsjvk+0AAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0AAAAAAAAAAAAAAAEAAAAhc3VjcnRfMXJWNUc4amFyemhJRUVRVHYxd1hSRTFLUlUxAAAAFAAAAAhlYzItdXNlcgAAAARyb290AAAAAGCAt30AAAAAYPdefQAAAAAAAAAoAAAACnBlcm1pdC1wdHkAAAAAAAAADnBlcm1pdC11c2VyLXJjAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAICskbrMYess7OemvQlCikleCUq+2lkxesOd8ivjoWlNCAAAAUwAAAAtzc2gtZWQyNTUxOQAAAEA6yhx0v0tzSsQaCQez/qwL8QO+ZLLvKhfmcQ53I0bSYxSaf6G7n8uLThk4OVtq/QJdVaWNcfLrLY0ipITz1RAK sucrt_1rV5G8jarzhIEEQTv1wXRE1KRU1",
891
- }
892
- end
893
-
894
- def ssh_user_certificate_results
895
- {
896
- "ssh_user_certificates" => [
897
- ssh_user_certificate_result,
898
- ],
899
- "uri" => "https://api.ngrok.com/ssh_user_certificates",
900
- "next_page_uri" => nil,
901
- }
902
- end
903
-
904
- def tls_certificate_result
905
- {
906
- "id" => "cert_1rV51OQetZPK9V6vTWUVy3Onjir",
907
- "uri" => "https://api.ngrok.com/tls_certificates/cert_1rV51OQetZPK9V6vTWUVy3Onjir",
908
- "created_at" => "2021-04-21T23:36:40Z",
909
- "description" => "",
910
- "metadata" => "",
911
- "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",
912
- "subject_common_name" => "example.com",
913
- "subject_alternative_names" => {
914
- "dns_names" => [],
915
- "ips" => [],
916
- },
917
- "issued_at" => nil,
918
- "not_before" => "2020-03-24T18:18:19Z",
919
- "not_after" => "2020-04-23T18:18:19Z",
920
- "key_usages" => [],
921
- "extended_key_usages" => [],
922
- "private_key_type" => "rsa",
923
- "issuer_common_name" => "example.com",
924
- "serial_number" => "054ba70dd03882382d11b640f30f4b8e1be5ddb1",
925
- "subject_organization" => "",
926
- "subject_organizational_unit" => "",
927
- "subject_locality" => "",
928
- "subject_province" => "",
929
- "subject_country" => "",
930
- }
931
- end
932
-
933
- def tls_certificate_result2
934
- {
935
- "id" => "cert_1rV5D0Ur3PklEGZwRj9m6qCBlCc",
936
- "uri" => "https://api.ngrok.com/tls_certificates/cert_1rV5D0Ur3PklEGZwRj9m6qCBlCc",
937
- "created_at" => "2021-04-21T23:38:12Z",
938
- "description" => "",
939
- "metadata" => "",
940
- "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",
941
- "subject_common_name" => "example.com",
942
- "subject_alternative_names" => {
943
- "dns_names" => [],
944
- "ips" => [],
945
- },
946
- "issued_at" => nil,
947
- "not_before" => "2020-03-24T18:18:19Z",
948
- "not_after" => "2020-04-23T18:18:19Z",
949
- "key_usages" => [],
950
- "extended_key_usages" => [],
951
- "private_key_type" => "rsa",
952
- "issuer_common_name" => "example.com",
953
- "serial_number" => "054ba70dd03882382d11b640f30f4b8e1be5ddb1",
954
- "subject_organization" => "",
955
- "subject_organizational_unit" => "",
956
- "subject_locality" => "",
957
- "subject_province" => "",
958
- "subject_country" => "",
959
- }
960
- end
961
-
962
- def tls_certificate_results
963
- {
964
- "tls_certificates" => [
965
- tls_certificate_result,
966
- tls_certificate_result2,
967
- ],
968
- "uri" => "https://api.ngrok.com/tls_certificates",
969
- "next_page_uri" => nil,
970
- }
971
- end
972
-
973
- def tls_certificate_sa_ns_result
974
- {
975
- }
976
- end
977
-
978
- def tunnel_result
979
- {
980
- "id" => "tn_1rV53vIXMKFIfPxXVWbW2sf4OLW",
981
- "public_url" => "http://57ae41e8cfac.ngrok.io",
982
- "started_at" => "2021-04-21T23:37:00Z",
983
- "metadata" => "",
984
- "proto" => "http",
985
- "region" => "us",
986
- "tunnel_session" => {
987
- "id" => "ts_1rV53yu42s8Hb17NxYNmXLDy8zR",
988
- "uri" => "https://api.ngrok.com/tunnel_sessions/ts_1rV53yu42s8Hb17NxYNmXLDy8zR",
989
- },
990
- }
991
- end
992
-
993
- def tunnel_result2
994
- {
995
- "id" => "tn_1rV53wi3OtUfY1RbkH2vNsTmLcO",
996
- "public_url" => "https://57ae41e8cfac.ngrok.io",
997
- "started_at" => "2021-04-21T23:37:00Z",
998
- "metadata" => "",
999
- "proto" => "https",
1000
- "region" => "us",
1001
- "tunnel_session" => {
1002
- "id" => "ts_1rV53yu42s8Hb17NxYNmXLDy8zR",
1003
- "uri" => "https://api.ngrok.com/tunnel_sessions/ts_1rV53yu42s8Hb17NxYNmXLDy8zR",
1004
- },
1005
- }
1006
- end
1007
-
1008
- def tunnel_results
1009
- {
1010
- "tunnels" => [
1011
- tunnel_result,
1012
- tunnel_result2,
1013
- ],
1014
- "uri" => "https://api.ngrok.com/tunnels",
1015
- "next_page_uri" => nil,
1016
- }
1017
- end
1018
-
1019
- def tunnel_session_result
1020
- {
1021
- "agent_version" => "",
1022
- "credential" => {
1023
- "id" => "cr_1rV54BnShBhgmZvLtZKAOJhI7jR",
1024
- "uri" => "https://api.ngrok.com/credentials/cr_1rV54BnShBhgmZvLtZKAOJhI7jR",
1025
- },
1026
- "id" => "ts_1rV549gK2e0WnE8Wvk3ab32e98U",
1027
- "ip" => "10.42.0.63",
1028
- "metadata" => "",
1029
- "os" => "linux",
1030
- "region" => "us",
1031
- "started_at" => "2021-04-21T23:37:02Z",
1032
- "transport" => "ngrok/2",
1033
- "uri" => "https://api.ngrok.com/tunnel_sessions/ts_1rV549gK2e0WnE8Wvk3ab32e98U",
1034
- }
1035
- end
1036
-
1037
- def tunnel_session_results
1038
- {
1039
- "tunnel_sessions" => [
1040
- tunnel_session_result,
1041
- ],
1042
- "uri" => "https://api.ngrok.com/tunnel_sessions",
1043
- "next_page_uri" => nil,
1044
- }
1045
- 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