ngrok-api 0.15.0 → 0.16.0

Sign up to get free protection for your applications and to get access to all the features.
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