ngrok-api 0.19.0 → 0.21.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 (585) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +7 -7
  3. data/.gitignore +15 -13
  4. data/.rubocop.yml +30 -28
  5. data/.rubocop_airbnb.yml +4 -2
  6. data/.simplecov +3 -1
  7. data/CHANGELOG.md +8 -0
  8. data/CODE_OF_CONDUCT.md +45 -0
  9. data/Gemfile +34 -32
  10. data/Guardfile +18 -16
  11. data/README.md +94 -88
  12. data/Rakefile +9 -7
  13. data/doc/NgrokAPI/Client.html +229 -125
  14. data/doc/NgrokAPI/Error.html +12 -12
  15. data/doc/NgrokAPI/Errors/NotFoundError.html +12 -12
  16. data/doc/NgrokAPI/Errors.html +4 -4
  17. data/doc/NgrokAPI/HttpClient.html +73 -73
  18. data/doc/NgrokAPI/Models/APIKey.html +150 -72
  19. data/doc/NgrokAPI/Models/AWSAuth.html +36 -36
  20. data/doc/NgrokAPI/Models/AWSCredentials.html +36 -36
  21. data/doc/NgrokAPI/Models/AWSRole.html +32 -32
  22. data/doc/NgrokAPI/Models/AbuseReport.html +63 -59
  23. data/doc/NgrokAPI/Models/AbuseReportHostname.html +36 -36
  24. data/doc/NgrokAPI/Models/AgentIngress.html +245 -87
  25. data/doc/NgrokAPI/Models/AgentIngressCertJob.html +817 -0
  26. data/doc/NgrokAPI/Models/AgentIngressCertPolicy.html +669 -0
  27. data/doc/NgrokAPI/Models/AgentIngressCertStatus.html +669 -0
  28. data/doc/NgrokAPI/Models/ApplicationSession.html +1414 -0
  29. data/doc/NgrokAPI/Models/ApplicationUser.html +1336 -0
  30. data/doc/NgrokAPI/Models/BrowserSession.html +743 -0
  31. data/doc/NgrokAPI/Models/CertificateAuthority.html +93 -89
  32. data/doc/NgrokAPI/Models/Credential.html +154 -76
  33. data/doc/NgrokAPI/Models/Endpoint.html +87 -83
  34. data/doc/NgrokAPI/Models/EndpointBackend.html +36 -36
  35. data/doc/NgrokAPI/Models/EndpointBackendMutate.html +36 -36
  36. data/doc/NgrokAPI/Models/EndpointCircuitBreaker.html +52 -52
  37. data/doc/NgrokAPI/Models/EndpointCompression.html +32 -32
  38. data/doc/NgrokAPI/Models/EndpointIPPolicy.html +36 -36
  39. data/doc/NgrokAPI/Models/EndpointIPPolicyMutate.html +36 -36
  40. data/doc/NgrokAPI/Models/EndpointMutualTLS.html +36 -36
  41. data/doc/NgrokAPI/Models/EndpointMutualTLSMutate.html +36 -36
  42. data/doc/NgrokAPI/Models/EndpointOAuth.html +56 -56
  43. data/doc/NgrokAPI/Models/EndpointOAuthAmazon.html +891 -0
  44. data/doc/NgrokAPI/Models/EndpointOAuthFacebook.html +48 -48
  45. data/doc/NgrokAPI/Models/EndpointOAuthGitHub.html +56 -56
  46. data/doc/NgrokAPI/Models/EndpointOAuthGitLab.html +891 -0
  47. data/doc/NgrokAPI/Models/EndpointOAuthGoogle.html +48 -48
  48. data/doc/NgrokAPI/Models/EndpointOAuthLinkedIn.html +891 -0
  49. data/doc/NgrokAPI/Models/EndpointOAuthMicrosoft.html +48 -48
  50. data/doc/NgrokAPI/Models/EndpointOAuthProvider.html +345 -49
  51. data/doc/NgrokAPI/Models/EndpointOAuthTwitch.html +891 -0
  52. data/doc/NgrokAPI/Models/EndpointOIDC.html +64 -64
  53. data/doc/NgrokAPI/Models/EndpointRequestHeaders.html +40 -40
  54. data/doc/NgrokAPI/Models/EndpointResponseHeaders.html +40 -40
  55. data/doc/NgrokAPI/Models/EndpointSAML.html +114 -98
  56. data/doc/NgrokAPI/Models/EndpointSAMLMutate.html +79 -75
  57. data/doc/NgrokAPI/Models/EndpointTLSTermination.html +40 -40
  58. data/doc/NgrokAPI/Models/EndpointTLSTerminationAtEdge.html +36 -36
  59. data/doc/NgrokAPI/Models/EndpointWebhookValidation.html +40 -40
  60. data/doc/NgrokAPI/Models/EndpointWebsocketTCPConverter.html +32 -32
  61. data/doc/NgrokAPI/Models/EventDestination.html +69 -65
  62. data/doc/NgrokAPI/Models/EventSource.html +51 -47
  63. data/doc/NgrokAPI/Models/EventSourceList.html +43 -39
  64. data/doc/NgrokAPI/Models/EventSourceReplace.html +40 -40
  65. data/doc/NgrokAPI/Models/EventSubscription.html +69 -65
  66. data/doc/NgrokAPI/Models/EventTarget.html +119 -45
  67. data/doc/NgrokAPI/Models/EventTargetCloudwatchLogs.html +36 -36
  68. data/doc/NgrokAPI/Models/EventTargetDatadog.html +817 -0
  69. data/doc/NgrokAPI/Models/EventTargetFirehose.html +36 -36
  70. data/doc/NgrokAPI/Models/EventTargetKinesis.html +36 -36
  71. data/doc/NgrokAPI/Models/FailoverBackend.html +73 -69
  72. data/doc/NgrokAPI/Models/HTTPResponseBackend.html +81 -77
  73. data/doc/NgrokAPI/Models/HTTPSEdge.html +85 -81
  74. data/doc/NgrokAPI/Models/HTTPSEdgeRoute.html +127 -123
  75. data/doc/NgrokAPI/Models/IPPolicy.html +73 -69
  76. data/doc/NgrokAPI/Models/IPPolicyRule.html +81 -77
  77. data/doc/NgrokAPI/Models/IPRestriction.html +73 -69
  78. data/doc/NgrokAPI/Models/IdentityProvider.html +669 -0
  79. data/doc/NgrokAPI/Models/Listable.html +79 -79
  80. data/doc/NgrokAPI/Models/Location.html +817 -0
  81. data/doc/NgrokAPI/Models/Ref.html +43 -39
  82. data/doc/NgrokAPI/Models/ReservedAddr.html +73 -69
  83. data/doc/NgrokAPI/Models/ReservedDomain.html +97 -93
  84. data/doc/NgrokAPI/Models/ReservedDomainCertJob.html +44 -44
  85. data/doc/NgrokAPI/Models/ReservedDomainCertPolicy.html +36 -36
  86. data/doc/NgrokAPI/Models/ReservedDomainCertStatus.html +36 -36
  87. data/doc/NgrokAPI/Models/SSHCertificateAuthority.html +77 -73
  88. data/doc/NgrokAPI/Models/SSHCredential.html +154 -76
  89. data/doc/NgrokAPI/Models/SSHHostCertificate.html +97 -93
  90. data/doc/NgrokAPI/Models/SSHUserCertificate.html +105 -101
  91. data/doc/NgrokAPI/Models/TCPEdge.html +81 -77
  92. data/doc/NgrokAPI/Models/TLSCertificate.html +133 -129
  93. data/doc/NgrokAPI/Models/TLSCertificateSANs.html +36 -36
  94. data/doc/NgrokAPI/Models/TLSEdge.html +89 -85
  95. data/doc/NgrokAPI/Models/Tunnel.html +79 -75
  96. data/doc/NgrokAPI/Models/TunnelGroupBackend.html +77 -73
  97. data/doc/NgrokAPI/Models/TunnelSession.html +75 -71
  98. data/doc/NgrokAPI/Models/UserAgent.html +965 -0
  99. data/doc/NgrokAPI/Models/WeightedBackend.html +73 -69
  100. data/doc/NgrokAPI/Models.html +6 -6
  101. data/doc/NgrokAPI/PagedIterator.html +53 -53
  102. data/doc/NgrokAPI/Services/APIKeysClient.html +134 -94
  103. data/doc/NgrokAPI/Services/AbuseReportsClient.html +28 -28
  104. data/doc/NgrokAPI/Services/AgentIngressesClient.html +184 -104
  105. data/doc/NgrokAPI/Services/ApplicationSessionsClient.html +1131 -0
  106. data/doc/NgrokAPI/Services/ApplicationUsersClient.html +1131 -0
  107. data/doc/NgrokAPI/Services/CertificateAuthoritiesClient.html +52 -52
  108. data/doc/NgrokAPI/Services/CredentialsClient.html +139 -99
  109. data/doc/NgrokAPI/Services/EdgeRouteBackendModuleClient.html +36 -36
  110. data/doc/NgrokAPI/Services/EdgeRouteCircuitBreakerModuleClient.html +36 -36
  111. data/doc/NgrokAPI/Services/EdgeRouteCompressionModuleClient.html +36 -36
  112. data/doc/NgrokAPI/Services/EdgeRouteIPRestrictionModuleClient.html +36 -36
  113. data/doc/NgrokAPI/Services/EdgeRouteOAuthModuleClient.html +36 -36
  114. data/doc/NgrokAPI/Services/EdgeRouteOIDCModuleClient.html +36 -36
  115. data/doc/NgrokAPI/Services/EdgeRouteRequestHeadersModuleClient.html +36 -36
  116. data/doc/NgrokAPI/Services/EdgeRouteResponseHeadersModuleClient.html +36 -36
  117. data/doc/NgrokAPI/Services/EdgeRouteSAMLModuleClient.html +36 -36
  118. data/doc/NgrokAPI/Services/EdgeRouteWebhookVerificationModuleClient.html +36 -36
  119. data/doc/NgrokAPI/Services/EdgeRouteWebsocketTCPConverterModuleClient.html +36 -36
  120. data/doc/NgrokAPI/Services/EdgesHTTPSClient.html +52 -52
  121. data/doc/NgrokAPI/Services/EdgesHTTPSRoutesClient.html +44 -44
  122. data/doc/NgrokAPI/Services/EdgesTCPClient.html +52 -52
  123. data/doc/NgrokAPI/Services/EdgesTLSClient.html +52 -52
  124. data/doc/NgrokAPI/Services/EndpointsClient.html +28 -28
  125. data/doc/NgrokAPI/Services/EventDestinationsClient.html +17 -17
  126. data/doc/NgrokAPI/Services/EventSourcesClient.html +52 -52
  127. data/doc/NgrokAPI/Services/EventSubscriptionsClient.html +52 -52
  128. data/doc/NgrokAPI/Services/FailoverBackendsClient.html +52 -52
  129. data/doc/NgrokAPI/Services/HTTPResponseBackendsClient.html +52 -52
  130. data/doc/NgrokAPI/Services/HTTPSEdgeMutualTLSModuleClient.html +36 -36
  131. data/doc/NgrokAPI/Services/HTTPSEdgeTLSTerminationModuleClient.html +36 -36
  132. data/doc/NgrokAPI/Services/IPPoliciesClient.html +52 -52
  133. data/doc/NgrokAPI/Services/IPPolicyRulesClient.html +58 -62
  134. data/doc/NgrokAPI/Services/IPRestrictionsClient.html +52 -52
  135. data/doc/NgrokAPI/Services/ReservedAddrsClient.html +52 -52
  136. data/doc/NgrokAPI/Services/ReservedDomainsClient.html +90 -86
  137. data/doc/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +52 -52
  138. data/doc/NgrokAPI/Services/SSHCredentialsClient.html +138 -98
  139. data/doc/NgrokAPI/Services/SSHHostCertificatesClient.html +52 -52
  140. data/doc/NgrokAPI/Services/SSHUserCertificatesClient.html +56 -56
  141. data/doc/NgrokAPI/Services/TCPEdgeBackendModuleClient.html +36 -36
  142. data/doc/NgrokAPI/Services/TCPEdgeIPRestrictionModuleClient.html +36 -36
  143. data/doc/NgrokAPI/Services/TLSCertificatesClient.html +56 -56
  144. data/doc/NgrokAPI/Services/TLSEdgeBackendModuleClient.html +36 -36
  145. data/doc/NgrokAPI/Services/TLSEdgeIPRestrictionModuleClient.html +36 -36
  146. data/doc/NgrokAPI/Services/TLSEdgeMutualTLSModuleClient.html +36 -36
  147. data/doc/NgrokAPI/Services/TLSEdgeTLSTerminationModuleClient.html +36 -36
  148. data/doc/NgrokAPI/Services/TunnelGroupBackendsClient.html +52 -52
  149. data/doc/NgrokAPI/Services/TunnelSessionsClient.html +52 -52
  150. data/doc/NgrokAPI/Services/TunnelsClient.html +28 -28
  151. data/doc/NgrokAPI/Services/WeightedBackendsClient.html +52 -52
  152. data/doc/NgrokAPI/Services.html +6 -6
  153. data/doc/NgrokAPI.html +6 -6
  154. data/doc/_index.html +139 -8
  155. data/doc/class_list.html +1 -1
  156. data/doc/file.README.html +45 -41
  157. data/doc/frames.html +1 -1
  158. data/doc/index.html +45 -41
  159. data/doc/method_list.html +2127 -671
  160. data/doc/top-level-namespace.html +4 -4
  161. data/docs/NgrokAPI/Client.html +229 -125
  162. data/docs/NgrokAPI/Error.html +12 -12
  163. data/docs/NgrokAPI/Errors/NotFoundError.html +12 -12
  164. data/docs/NgrokAPI/Errors.html +4 -4
  165. data/docs/NgrokAPI/HttpClient.html +73 -73
  166. data/docs/NgrokAPI/Models/APIKey.html +150 -72
  167. data/docs/NgrokAPI/Models/AWSAuth.html +36 -36
  168. data/docs/NgrokAPI/Models/AWSCredentials.html +36 -36
  169. data/docs/NgrokAPI/Models/AWSRole.html +32 -32
  170. data/docs/NgrokAPI/Models/AbuseReport.html +63 -59
  171. data/docs/NgrokAPI/Models/AbuseReportHostname.html +36 -36
  172. data/docs/NgrokAPI/Models/AgentIngress.html +245 -87
  173. data/docs/NgrokAPI/Models/AgentIngressCertJob.html +817 -0
  174. data/docs/NgrokAPI/Models/AgentIngressCertPolicy.html +669 -0
  175. data/docs/NgrokAPI/Models/AgentIngressCertStatus.html +669 -0
  176. data/docs/NgrokAPI/Models/ApplicationSession.html +1414 -0
  177. data/docs/NgrokAPI/Models/ApplicationUser.html +1336 -0
  178. data/docs/NgrokAPI/Models/BrowserSession.html +743 -0
  179. data/docs/NgrokAPI/Models/CertificateAuthority.html +93 -89
  180. data/docs/NgrokAPI/Models/Credential.html +154 -76
  181. data/docs/NgrokAPI/Models/Endpoint.html +87 -83
  182. data/docs/NgrokAPI/Models/EndpointBackend.html +36 -36
  183. data/docs/NgrokAPI/Models/EndpointBackendMutate.html +36 -36
  184. data/docs/NgrokAPI/Models/EndpointCircuitBreaker.html +52 -52
  185. data/docs/NgrokAPI/Models/EndpointCompression.html +32 -32
  186. data/docs/NgrokAPI/Models/EndpointIPPolicy.html +36 -36
  187. data/docs/NgrokAPI/Models/EndpointIPPolicyMutate.html +36 -36
  188. data/docs/NgrokAPI/Models/EndpointMutualTLS.html +36 -36
  189. data/docs/NgrokAPI/Models/EndpointMutualTLSMutate.html +36 -36
  190. data/docs/NgrokAPI/Models/EndpointOAuth.html +56 -56
  191. data/docs/NgrokAPI/Models/EndpointOAuthAmazon.html +891 -0
  192. data/docs/NgrokAPI/Models/EndpointOAuthFacebook.html +48 -48
  193. data/docs/NgrokAPI/Models/EndpointOAuthGitHub.html +56 -56
  194. data/docs/NgrokAPI/Models/EndpointOAuthGitLab.html +891 -0
  195. data/docs/NgrokAPI/Models/EndpointOAuthGoogle.html +48 -48
  196. data/docs/NgrokAPI/Models/EndpointOAuthLinkedIn.html +891 -0
  197. data/docs/NgrokAPI/Models/EndpointOAuthMicrosoft.html +48 -48
  198. data/docs/NgrokAPI/Models/EndpointOAuthProvider.html +345 -49
  199. data/docs/NgrokAPI/Models/EndpointOAuthTwitch.html +891 -0
  200. data/docs/NgrokAPI/Models/EndpointOIDC.html +64 -64
  201. data/docs/NgrokAPI/Models/EndpointRequestHeaders.html +40 -40
  202. data/docs/NgrokAPI/Models/EndpointResponseHeaders.html +40 -40
  203. data/docs/NgrokAPI/Models/EndpointSAML.html +114 -98
  204. data/docs/NgrokAPI/Models/EndpointSAMLMutate.html +79 -75
  205. data/docs/NgrokAPI/Models/EndpointTLSTermination.html +40 -40
  206. data/docs/NgrokAPI/Models/EndpointTLSTerminationAtEdge.html +36 -36
  207. data/docs/NgrokAPI/Models/EndpointWebhookValidation.html +40 -40
  208. data/docs/NgrokAPI/Models/EndpointWebsocketTCPConverter.html +32 -32
  209. data/docs/NgrokAPI/Models/EventDestination.html +69 -65
  210. data/docs/NgrokAPI/Models/EventSource.html +51 -47
  211. data/docs/NgrokAPI/Models/EventSourceList.html +43 -39
  212. data/docs/NgrokAPI/Models/EventSourceReplace.html +40 -40
  213. data/docs/NgrokAPI/Models/EventSubscription.html +69 -65
  214. data/docs/NgrokAPI/Models/EventTarget.html +119 -45
  215. data/docs/NgrokAPI/Models/EventTargetCloudwatchLogs.html +36 -36
  216. data/docs/NgrokAPI/Models/EventTargetDatadog.html +817 -0
  217. data/docs/NgrokAPI/Models/EventTargetFirehose.html +36 -36
  218. data/docs/NgrokAPI/Models/EventTargetKinesis.html +36 -36
  219. data/docs/NgrokAPI/Models/FailoverBackend.html +73 -69
  220. data/docs/NgrokAPI/Models/HTTPResponseBackend.html +81 -77
  221. data/docs/NgrokAPI/Models/HTTPSEdge.html +85 -81
  222. data/docs/NgrokAPI/Models/HTTPSEdgeRoute.html +127 -123
  223. data/docs/NgrokAPI/Models/IPPolicy.html +73 -69
  224. data/docs/NgrokAPI/Models/IPPolicyRule.html +81 -77
  225. data/docs/NgrokAPI/Models/IPRestriction.html +73 -69
  226. data/docs/NgrokAPI/Models/IdentityProvider.html +669 -0
  227. data/docs/NgrokAPI/Models/Listable.html +79 -79
  228. data/docs/NgrokAPI/Models/Location.html +817 -0
  229. data/docs/NgrokAPI/Models/Ref.html +43 -39
  230. data/docs/NgrokAPI/Models/ReservedAddr.html +73 -69
  231. data/docs/NgrokAPI/Models/ReservedDomain.html +97 -93
  232. data/docs/NgrokAPI/Models/ReservedDomainCertJob.html +44 -44
  233. data/docs/NgrokAPI/Models/ReservedDomainCertPolicy.html +36 -36
  234. data/docs/NgrokAPI/Models/ReservedDomainCertStatus.html +36 -36
  235. data/docs/NgrokAPI/Models/SSHCertificateAuthority.html +77 -73
  236. data/docs/NgrokAPI/Models/SSHCredential.html +154 -76
  237. data/docs/NgrokAPI/Models/SSHHostCertificate.html +97 -93
  238. data/docs/NgrokAPI/Models/SSHUserCertificate.html +105 -101
  239. data/docs/NgrokAPI/Models/TCPEdge.html +81 -77
  240. data/docs/NgrokAPI/Models/TLSCertificate.html +133 -129
  241. data/docs/NgrokAPI/Models/TLSCertificateSANs.html +36 -36
  242. data/docs/NgrokAPI/Models/TLSEdge.html +89 -85
  243. data/docs/NgrokAPI/Models/Tunnel.html +79 -75
  244. data/docs/NgrokAPI/Models/TunnelGroupBackend.html +77 -73
  245. data/docs/NgrokAPI/Models/TunnelSession.html +75 -71
  246. data/docs/NgrokAPI/Models/UserAgent.html +965 -0
  247. data/docs/NgrokAPI/Models/WeightedBackend.html +73 -69
  248. data/docs/NgrokAPI/Models.html +6 -6
  249. data/docs/NgrokAPI/PagedIterator.html +53 -53
  250. data/docs/NgrokAPI/Services/APIKeysClient.html +134 -94
  251. data/docs/NgrokAPI/Services/AbuseReportsClient.html +28 -28
  252. data/docs/NgrokAPI/Services/AgentIngressesClient.html +184 -104
  253. data/docs/NgrokAPI/Services/ApplicationSessionsClient.html +1131 -0
  254. data/docs/NgrokAPI/Services/ApplicationUsersClient.html +1131 -0
  255. data/docs/NgrokAPI/Services/CertificateAuthoritiesClient.html +52 -52
  256. data/docs/NgrokAPI/Services/CredentialsClient.html +139 -99
  257. data/docs/NgrokAPI/Services/EdgeRouteBackendModuleClient.html +36 -36
  258. data/docs/NgrokAPI/Services/EdgeRouteCircuitBreakerModuleClient.html +36 -36
  259. data/docs/NgrokAPI/Services/EdgeRouteCompressionModuleClient.html +36 -36
  260. data/docs/NgrokAPI/Services/EdgeRouteIPRestrictionModuleClient.html +36 -36
  261. data/docs/NgrokAPI/Services/EdgeRouteOAuthModuleClient.html +36 -36
  262. data/docs/NgrokAPI/Services/EdgeRouteOIDCModuleClient.html +36 -36
  263. data/docs/NgrokAPI/Services/EdgeRouteRequestHeadersModuleClient.html +36 -36
  264. data/docs/NgrokAPI/Services/EdgeRouteResponseHeadersModuleClient.html +36 -36
  265. data/docs/NgrokAPI/Services/EdgeRouteSAMLModuleClient.html +36 -36
  266. data/docs/NgrokAPI/Services/EdgeRouteWebhookVerificationModuleClient.html +36 -36
  267. data/docs/NgrokAPI/Services/EdgeRouteWebsocketTCPConverterModuleClient.html +36 -36
  268. data/docs/NgrokAPI/Services/EdgesHTTPSClient.html +52 -52
  269. data/docs/NgrokAPI/Services/EdgesHTTPSRoutesClient.html +44 -44
  270. data/docs/NgrokAPI/Services/EdgesTCPClient.html +52 -52
  271. data/docs/NgrokAPI/Services/EdgesTLSClient.html +52 -52
  272. data/docs/NgrokAPI/Services/EndpointsClient.html +28 -28
  273. data/docs/NgrokAPI/Services/EventDestinationsClient.html +17 -17
  274. data/docs/NgrokAPI/Services/EventSourcesClient.html +52 -52
  275. data/docs/NgrokAPI/Services/EventSubscriptionsClient.html +52 -52
  276. data/docs/NgrokAPI/Services/FailoverBackendsClient.html +52 -52
  277. data/docs/NgrokAPI/Services/HTTPResponseBackendsClient.html +52 -52
  278. data/docs/NgrokAPI/Services/HTTPSEdgeMutualTLSModuleClient.html +36 -36
  279. data/docs/NgrokAPI/Services/HTTPSEdgeTLSTerminationModuleClient.html +36 -36
  280. data/docs/NgrokAPI/Services/IPPoliciesClient.html +52 -52
  281. data/docs/NgrokAPI/Services/IPPolicyRulesClient.html +58 -62
  282. data/docs/NgrokAPI/Services/IPRestrictionsClient.html +52 -52
  283. data/docs/NgrokAPI/Services/ReservedAddrsClient.html +52 -52
  284. data/docs/NgrokAPI/Services/ReservedDomainsClient.html +90 -86
  285. data/docs/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +52 -52
  286. data/docs/NgrokAPI/Services/SSHCredentialsClient.html +138 -98
  287. data/docs/NgrokAPI/Services/SSHHostCertificatesClient.html +52 -52
  288. data/docs/NgrokAPI/Services/SSHUserCertificatesClient.html +56 -56
  289. data/docs/NgrokAPI/Services/TCPEdgeBackendModuleClient.html +36 -36
  290. data/docs/NgrokAPI/Services/TCPEdgeIPRestrictionModuleClient.html +36 -36
  291. data/docs/NgrokAPI/Services/TLSCertificatesClient.html +56 -56
  292. data/docs/NgrokAPI/Services/TLSEdgeBackendModuleClient.html +36 -36
  293. data/docs/NgrokAPI/Services/TLSEdgeIPRestrictionModuleClient.html +36 -36
  294. data/docs/NgrokAPI/Services/TLSEdgeMutualTLSModuleClient.html +36 -36
  295. data/docs/NgrokAPI/Services/TLSEdgeTLSTerminationModuleClient.html +36 -36
  296. data/docs/NgrokAPI/Services/TunnelGroupBackendsClient.html +52 -52
  297. data/docs/NgrokAPI/Services/TunnelSessionsClient.html +52 -52
  298. data/docs/NgrokAPI/Services/TunnelsClient.html +28 -28
  299. data/docs/NgrokAPI/Services/WeightedBackendsClient.html +52 -52
  300. data/docs/NgrokAPI/Services.html +6 -6
  301. data/docs/NgrokAPI.html +6 -6
  302. data/docs/_index.html +139 -8
  303. data/docs/class_list.html +1 -1
  304. data/docs/file.README.html +45 -41
  305. data/docs/frames.html +1 -1
  306. data/docs/index.html +45 -41
  307. data/docs/method_list.html +2127 -671
  308. data/docs/top-level-namespace.html +4 -4
  309. data/lib/ngrokapi/client.rb +21 -11
  310. data/lib/ngrokapi/error.rb +2 -0
  311. data/lib/ngrokapi/errors/not_found_error.rb +2 -0
  312. data/lib/ngrokapi/http_client.rb +153 -150
  313. data/lib/ngrokapi/models/abuse_report.rb +7 -1
  314. data/lib/ngrokapi/models/abuse_report_hostname.rb +2 -0
  315. data/lib/ngrokapi/models/agent_ingress.rb +17 -4
  316. data/lib/ngrokapi/models/agent_ingress_cert_job.rb +37 -0
  317. data/lib/ngrokapi/models/agent_ingress_cert_policy.rb +33 -0
  318. data/lib/ngrokapi/models/agent_ingress_cert_status.rb +33 -0
  319. data/lib/ngrokapi/models/api_key.rb +10 -2
  320. data/lib/ngrokapi/models/application_session.rb +67 -0
  321. data/lib/ngrokapi/models/application_user.rb +63 -0
  322. data/lib/ngrokapi/models/aws_auth.rb +2 -0
  323. data/lib/ngrokapi/models/aws_credentials.rb +2 -0
  324. data/lib/ngrokapi/models/aws_role.rb +2 -0
  325. data/lib/ngrokapi/models/browser_session.rb +35 -0
  326. data/lib/ngrokapi/models/certificate_authority.rb +7 -1
  327. data/lib/ngrokapi/models/credential.rb +10 -2
  328. data/lib/ngrokapi/models/endpoint.rb +7 -1
  329. data/lib/ngrokapi/models/endpoint_backend.rb +2 -0
  330. data/lib/ngrokapi/models/endpoint_backend_mutate.rb +2 -0
  331. data/lib/ngrokapi/models/endpoint_circuit_breaker.rb +2 -0
  332. data/lib/ngrokapi/models/endpoint_compression.rb +2 -0
  333. data/lib/ngrokapi/models/endpoint_ip_policy.rb +2 -0
  334. data/lib/ngrokapi/models/endpoint_ip_policy_mutate.rb +2 -0
  335. data/lib/ngrokapi/models/endpoint_mutual_tls.rb +2 -0
  336. data/lib/ngrokapi/models/endpoint_mutual_tls_mutate.rb +2 -0
  337. data/lib/ngrokapi/models/endpoint_o_auth.rb +2 -0
  338. data/lib/ngrokapi/models/endpoint_o_auth_amazon.rb +39 -0
  339. data/lib/ngrokapi/models/endpoint_o_auth_facebook.rb +2 -0
  340. data/lib/ngrokapi/models/endpoint_o_auth_git_hub.rb +2 -0
  341. data/lib/ngrokapi/models/endpoint_o_auth_git_lab.rb +39 -0
  342. data/lib/ngrokapi/models/endpoint_o_auth_google.rb +2 -0
  343. data/lib/ngrokapi/models/endpoint_o_auth_linked_in.rb +39 -0
  344. data/lib/ngrokapi/models/endpoint_o_auth_microsoft.rb +2 -0
  345. data/lib/ngrokapi/models/endpoint_o_auth_provider.rb +11 -1
  346. data/lib/ngrokapi/models/endpoint_o_auth_twitch.rb +39 -0
  347. data/lib/ngrokapi/models/endpoint_oidc.rb +2 -0
  348. data/lib/ngrokapi/models/endpoint_request_headers.rb +2 -0
  349. data/lib/ngrokapi/models/endpoint_response_headers.rb +2 -0
  350. data/lib/ngrokapi/models/endpoint_saml.rb +16 -4
  351. data/lib/ngrokapi/models/endpoint_saml_mutate.rb +7 -1
  352. data/lib/ngrokapi/models/endpoint_tls_termination.rb +2 -0
  353. data/lib/ngrokapi/models/endpoint_tls_termination_at_edge.rb +2 -0
  354. data/lib/ngrokapi/models/endpoint_webhook_validation.rb +2 -0
  355. data/lib/ngrokapi/models/endpoint_websocket_tcp_converter.rb +2 -0
  356. data/lib/ngrokapi/models/event_destination.rb +7 -1
  357. data/lib/ngrokapi/models/event_source.rb +7 -1
  358. data/lib/ngrokapi/models/event_source_list.rb +7 -1
  359. data/lib/ngrokapi/models/event_source_replace.rb +2 -0
  360. data/lib/ngrokapi/models/event_subscription.rb +7 -1
  361. data/lib/ngrokapi/models/event_target.rb +5 -1
  362. data/lib/ngrokapi/models/event_target_cloudwatch_logs.rb +2 -0
  363. data/lib/ngrokapi/models/event_target_datadog.rb +37 -0
  364. data/lib/ngrokapi/models/event_target_firehose.rb +2 -0
  365. data/lib/ngrokapi/models/event_target_kinesis.rb +2 -0
  366. data/lib/ngrokapi/models/failover_backend.rb +7 -1
  367. data/lib/ngrokapi/models/http_response_backend.rb +7 -1
  368. data/lib/ngrokapi/models/https_edge.rb +7 -1
  369. data/lib/ngrokapi/models/https_edge_route.rb +7 -1
  370. data/lib/ngrokapi/models/identity_provider.rb +33 -0
  371. data/lib/ngrokapi/models/ip_policy.rb +7 -1
  372. data/lib/ngrokapi/models/ip_policy_rule.rb +7 -1
  373. data/lib/ngrokapi/models/ip_restriction.rb +7 -1
  374. data/lib/ngrokapi/models/listable.rb +55 -53
  375. data/lib/ngrokapi/models/location.rb +37 -0
  376. data/lib/ngrokapi/models/ref.rb +7 -1
  377. data/lib/ngrokapi/models/reserved_addr.rb +7 -1
  378. data/lib/ngrokapi/models/reserved_domain.rb +7 -1
  379. data/lib/ngrokapi/models/reserved_domain_cert_job.rb +2 -0
  380. data/lib/ngrokapi/models/reserved_domain_cert_policy.rb +2 -0
  381. data/lib/ngrokapi/models/reserved_domain_cert_status.rb +2 -0
  382. data/lib/ngrokapi/models/ssh_certificate_authority.rb +7 -1
  383. data/lib/ngrokapi/models/ssh_credential.rb +10 -2
  384. data/lib/ngrokapi/models/ssh_host_certificate.rb +7 -1
  385. data/lib/ngrokapi/models/ssh_user_certificate.rb +7 -1
  386. data/lib/ngrokapi/models/tcp_edge.rb +7 -1
  387. data/lib/ngrokapi/models/tls_certificate.rb +7 -1
  388. data/lib/ngrokapi/models/tls_certificate_sa_ns.rb +2 -0
  389. data/lib/ngrokapi/models/tls_edge.rb +7 -1
  390. data/lib/ngrokapi/models/tunnel.rb +7 -1
  391. data/lib/ngrokapi/models/tunnel_group_backend.rb +7 -1
  392. data/lib/ngrokapi/models/tunnel_session.rb +7 -1
  393. data/lib/ngrokapi/models/user_agent.rb +41 -0
  394. data/lib/ngrokapi/models/weighted_backend.rb +7 -1
  395. data/lib/ngrokapi/paged_iterator.rb +44 -42
  396. data/lib/ngrokapi/services/abuse_reports_client.rb +2 -0
  397. data/lib/ngrokapi/services/agent_ingresses_client.rb +14 -4
  398. data/lib/ngrokapi/services/api_keys_client.rb +8 -2
  399. data/lib/ngrokapi/services/application_sessions_client.rb +141 -0
  400. data/lib/ngrokapi/services/application_users_client.rb +141 -0
  401. data/lib/ngrokapi/services/certificate_authorities_client.rb +2 -0
  402. data/lib/ngrokapi/services/credentials_client.rb +13 -7
  403. data/lib/ngrokapi/services/edge_route_backend_module_client.rb +2 -0
  404. data/lib/ngrokapi/services/edge_route_circuit_breaker_module_client.rb +2 -0
  405. data/lib/ngrokapi/services/edge_route_compression_module_client.rb +2 -0
  406. data/lib/ngrokapi/services/edge_route_ip_restriction_module_client.rb +2 -0
  407. data/lib/ngrokapi/services/edge_route_o_auth_module_client.rb +2 -0
  408. data/lib/ngrokapi/services/edge_route_oidc_module_client.rb +2 -0
  409. data/lib/ngrokapi/services/edge_route_request_headers_module_client.rb +2 -0
  410. data/lib/ngrokapi/services/edge_route_response_headers_module_client.rb +2 -0
  411. data/lib/ngrokapi/services/edge_route_saml_module_client.rb +2 -0
  412. data/lib/ngrokapi/services/edge_route_webhook_verification_module_client.rb +2 -0
  413. data/lib/ngrokapi/services/edge_route_websocket_tcp_converter_module_client.rb +2 -0
  414. data/lib/ngrokapi/services/edges_https_client.rb +2 -0
  415. data/lib/ngrokapi/services/edges_https_routes_client.rb +2 -0
  416. data/lib/ngrokapi/services/edges_tcp_client.rb +2 -0
  417. data/lib/ngrokapi/services/edges_tls_client.rb +2 -0
  418. data/lib/ngrokapi/services/endpoints_client.rb +2 -0
  419. data/lib/ngrokapi/services/event_destinations_client.rb +4 -4
  420. data/lib/ngrokapi/services/event_sources_client.rb +2 -0
  421. data/lib/ngrokapi/services/event_subscriptions_client.rb +2 -0
  422. data/lib/ngrokapi/services/failover_backends_client.rb +2 -0
  423. data/lib/ngrokapi/services/http_response_backends_client.rb +2 -0
  424. data/lib/ngrokapi/services/https_edge_mutual_tls_module_client.rb +2 -0
  425. data/lib/ngrokapi/services/https_edge_tls_termination_module_client.rb +2 -0
  426. data/lib/ngrokapi/services/ip_policies_client.rb +2 -0
  427. data/lib/ngrokapi/services/ip_policy_rules_client.rb +4 -2
  428. data/lib/ngrokapi/services/ip_restrictions_client.rb +2 -0
  429. data/lib/ngrokapi/services/reserved_addrs_client.rb +2 -0
  430. data/lib/ngrokapi/services/reserved_domains_client.rb +10 -8
  431. data/lib/ngrokapi/services/ssh_certificate_authorities_client.rb +2 -0
  432. data/lib/ngrokapi/services/ssh_credentials_client.rb +12 -6
  433. data/lib/ngrokapi/services/ssh_host_certificates_client.rb +2 -0
  434. data/lib/ngrokapi/services/ssh_user_certificates_client.rb +6 -4
  435. data/lib/ngrokapi/services/tcp_edge_backend_module_client.rb +2 -0
  436. data/lib/ngrokapi/services/tcp_edge_ip_restriction_module_client.rb +2 -0
  437. data/lib/ngrokapi/services/tls_certificates_client.rb +6 -4
  438. data/lib/ngrokapi/services/tls_edge_backend_module_client.rb +2 -0
  439. data/lib/ngrokapi/services/tls_edge_ip_restriction_module_client.rb +2 -0
  440. data/lib/ngrokapi/services/tls_edge_mutual_tls_module_client.rb +2 -0
  441. data/lib/ngrokapi/services/tls_edge_tls_termination_module_client.rb +2 -0
  442. data/lib/ngrokapi/services/tunnel_group_backends_client.rb +2 -0
  443. data/lib/ngrokapi/services/tunnel_sessions_client.rb +2 -0
  444. data/lib/ngrokapi/services/tunnels_client.rb +2 -0
  445. data/lib/ngrokapi/services/weighted_backends_client.rb +2 -0
  446. data/lib/ngrokapi/version.rb +9 -7
  447. data/lib/ngrokapi.rb +15 -13
  448. data/ngrok-api.gemspec +29 -27
  449. data/spec/ngrokapi/client_spec.rb +20 -6
  450. data/spec/ngrokapi/http_client_spec.rb +77 -75
  451. data/spec/ngrokapi/models/abuse_report_hostname_spec.rb +2 -0
  452. data/spec/ngrokapi/models/abuse_report_spec.rb +2 -0
  453. data/spec/ngrokapi/models/agent_ingress_cert_job_spec.rb +23 -0
  454. data/spec/ngrokapi/models/agent_ingress_cert_policy_spec.rb +23 -0
  455. data/spec/ngrokapi/models/agent_ingress_cert_status_spec.rb +23 -0
  456. data/spec/ngrokapi/models/agent_ingress_spec.rb +6 -1
  457. data/spec/ngrokapi/models/api_key_spec.rb +2 -0
  458. data/spec/ngrokapi/models/application_session_spec.rb +30 -0
  459. data/spec/ngrokapi/models/application_user_spec.rb +30 -0
  460. data/spec/ngrokapi/models/aws_auth_spec.rb +2 -0
  461. data/spec/ngrokapi/models/aws_credentials_spec.rb +2 -0
  462. data/spec/ngrokapi/models/aws_role_spec.rb +2 -0
  463. data/spec/ngrokapi/models/browser_session_spec.rb +23 -0
  464. data/spec/ngrokapi/models/certificate_authority_spec.rb +2 -0
  465. data/spec/ngrokapi/models/credential_spec.rb +2 -0
  466. data/spec/ngrokapi/models/endpoint_backend_mutate_spec.rb +2 -0
  467. data/spec/ngrokapi/models/endpoint_backend_spec.rb +2 -0
  468. data/spec/ngrokapi/models/endpoint_circuit_breaker_spec.rb +2 -0
  469. data/spec/ngrokapi/models/endpoint_compression_spec.rb +2 -0
  470. data/spec/ngrokapi/models/endpoint_ip_policy_mutate_spec.rb +2 -0
  471. data/spec/ngrokapi/models/endpoint_ip_policy_spec.rb +2 -0
  472. data/spec/ngrokapi/models/endpoint_mutual_tls_mutate_spec.rb +2 -0
  473. data/spec/ngrokapi/models/endpoint_mutual_tls_spec.rb +2 -0
  474. data/spec/ngrokapi/models/endpoint_o_auth_amazon_spec.rb +23 -0
  475. data/spec/ngrokapi/models/endpoint_o_auth_facebook_spec.rb +2 -0
  476. data/spec/ngrokapi/models/endpoint_o_auth_git_hub_spec.rb +2 -0
  477. data/spec/ngrokapi/models/endpoint_o_auth_git_lab_spec.rb +23 -0
  478. data/spec/ngrokapi/models/endpoint_o_auth_google_spec.rb +2 -0
  479. data/spec/ngrokapi/models/endpoint_o_auth_linked_in_spec.rb +23 -0
  480. data/spec/ngrokapi/models/endpoint_o_auth_microsoft_spec.rb +2 -0
  481. data/spec/ngrokapi/models/endpoint_o_auth_provider_spec.rb +2 -0
  482. data/spec/ngrokapi/models/endpoint_o_auth_spec.rb +2 -0
  483. data/spec/ngrokapi/models/endpoint_o_auth_twitch_spec.rb +23 -0
  484. data/spec/ngrokapi/models/endpoint_oidc_spec.rb +2 -0
  485. data/spec/ngrokapi/models/endpoint_request_headers_spec.rb +2 -0
  486. data/spec/ngrokapi/models/endpoint_response_headers_spec.rb +2 -0
  487. data/spec/ngrokapi/models/endpoint_saml_mutate_spec.rb +2 -0
  488. data/spec/ngrokapi/models/endpoint_saml_spec.rb +2 -0
  489. data/spec/ngrokapi/models/endpoint_spec.rb +2 -0
  490. data/spec/ngrokapi/models/endpoint_tls_termination_at_edge_spec.rb +2 -0
  491. data/spec/ngrokapi/models/endpoint_tls_termination_spec.rb +2 -0
  492. data/spec/ngrokapi/models/endpoint_webhook_validation_spec.rb +2 -0
  493. data/spec/ngrokapi/models/endpoint_websocket_tcp_converter_spec.rb +2 -0
  494. data/spec/ngrokapi/models/event_destination_spec.rb +2 -0
  495. data/spec/ngrokapi/models/event_source_list_spec.rb +2 -0
  496. data/spec/ngrokapi/models/event_source_replace_spec.rb +2 -0
  497. data/spec/ngrokapi/models/event_source_spec.rb +2 -0
  498. data/spec/ngrokapi/models/event_subscription_spec.rb +2 -0
  499. data/spec/ngrokapi/models/event_target_cloudwatch_logs_spec.rb +2 -0
  500. data/spec/ngrokapi/models/event_target_datadog_spec.rb +23 -0
  501. data/spec/ngrokapi/models/event_target_firehose_spec.rb +2 -0
  502. data/spec/ngrokapi/models/event_target_kinesis_spec.rb +2 -0
  503. data/spec/ngrokapi/models/event_target_spec.rb +2 -0
  504. data/spec/ngrokapi/models/failover_backend_spec.rb +2 -0
  505. data/spec/ngrokapi/models/http_response_backend_spec.rb +2 -0
  506. data/spec/ngrokapi/models/https_edge_route_spec.rb +2 -0
  507. data/spec/ngrokapi/models/https_edge_spec.rb +2 -0
  508. data/spec/ngrokapi/models/identity_provider_spec.rb +23 -0
  509. data/spec/ngrokapi/models/ip_policy_rule_spec.rb +2 -0
  510. data/spec/ngrokapi/models/ip_policy_spec.rb +2 -0
  511. data/spec/ngrokapi/models/ip_restriction_spec.rb +2 -0
  512. data/spec/ngrokapi/models/listable_spec.rb +45 -43
  513. data/spec/ngrokapi/models/location_spec.rb +23 -0
  514. data/spec/ngrokapi/models/ref_spec.rb +2 -0
  515. data/spec/ngrokapi/models/reserved_addr_spec.rb +2 -0
  516. data/spec/ngrokapi/models/reserved_domain_cert_job_spec.rb +2 -0
  517. data/spec/ngrokapi/models/reserved_domain_cert_policy_spec.rb +2 -0
  518. data/spec/ngrokapi/models/reserved_domain_cert_status_spec.rb +2 -0
  519. data/spec/ngrokapi/models/reserved_domain_spec.rb +2 -0
  520. data/spec/ngrokapi/models/ssh_certificate_authority_spec.rb +2 -0
  521. data/spec/ngrokapi/models/ssh_credential_spec.rb +2 -0
  522. data/spec/ngrokapi/models/ssh_host_certificate_spec.rb +2 -0
  523. data/spec/ngrokapi/models/ssh_user_certificate_spec.rb +2 -0
  524. data/spec/ngrokapi/models/tcp_edge_spec.rb +2 -0
  525. data/spec/ngrokapi/models/tls_certificate_sa_ns_spec.rb +2 -0
  526. data/spec/ngrokapi/models/tls_certificate_spec.rb +2 -0
  527. data/spec/ngrokapi/models/tls_edge_spec.rb +2 -0
  528. data/spec/ngrokapi/models/tunnel_group_backend_spec.rb +2 -0
  529. data/spec/ngrokapi/models/tunnel_session_spec.rb +2 -0
  530. data/spec/ngrokapi/models/tunnel_spec.rb +2 -0
  531. data/spec/ngrokapi/models/user_agent_spec.rb +23 -0
  532. data/spec/ngrokapi/models/weighted_backend_spec.rb +2 -0
  533. data/spec/ngrokapi/paged_iterator_spec.rb +86 -84
  534. data/spec/ngrokapi/services/abuse_reports_client_spec.rb +2 -0
  535. data/spec/ngrokapi/services/agent_ingresses_client_spec.rb +14 -4
  536. data/spec/ngrokapi/services/api_keys_client_spec.rb +10 -2
  537. data/spec/ngrokapi/services/application_sessions_client_spec.rb +100 -0
  538. data/spec/ngrokapi/services/application_users_client_spec.rb +100 -0
  539. data/spec/ngrokapi/services/certificate_authorities_client_spec.rb +2 -0
  540. data/spec/ngrokapi/services/credentials_client_spec.rb +10 -2
  541. data/spec/ngrokapi/services/edge_route_backend_module_client_spec.rb +2 -0
  542. data/spec/ngrokapi/services/edge_route_circuit_breaker_module_client_spec.rb +2 -0
  543. data/spec/ngrokapi/services/edge_route_compression_module_client_spec.rb +2 -0
  544. data/spec/ngrokapi/services/edge_route_ip_restriction_module_client_spec.rb +2 -0
  545. data/spec/ngrokapi/services/edge_route_o_auth_module_client_spec.rb +2 -0
  546. data/spec/ngrokapi/services/edge_route_oidc_module_client_spec.rb +2 -0
  547. data/spec/ngrokapi/services/edge_route_request_headers_module_client_spec.rb +2 -0
  548. data/spec/ngrokapi/services/edge_route_response_headers_module_client_spec.rb +2 -0
  549. data/spec/ngrokapi/services/edge_route_saml_module_client_spec.rb +2 -0
  550. data/spec/ngrokapi/services/edge_route_webhook_verification_module_client_spec.rb +2 -0
  551. data/spec/ngrokapi/services/edge_route_websocket_tcp_converter_module_client_spec.rb +2 -0
  552. data/spec/ngrokapi/services/edges_https_client_spec.rb +2 -0
  553. data/spec/ngrokapi/services/edges_https_routes_client_spec.rb +2 -0
  554. data/spec/ngrokapi/services/edges_tcp_client_spec.rb +2 -0
  555. data/spec/ngrokapi/services/edges_tls_client_spec.rb +2 -0
  556. data/spec/ngrokapi/services/endpoints_client_spec.rb +2 -0
  557. data/spec/ngrokapi/services/event_destinations_client_spec.rb +2 -0
  558. data/spec/ngrokapi/services/event_sources_client_spec.rb +2 -0
  559. data/spec/ngrokapi/services/event_subscriptions_client_spec.rb +2 -0
  560. data/spec/ngrokapi/services/failover_backends_client_spec.rb +2 -0
  561. data/spec/ngrokapi/services/http_response_backends_client_spec.rb +2 -0
  562. data/spec/ngrokapi/services/https_edge_mutual_tls_module_client_spec.rb +2 -0
  563. data/spec/ngrokapi/services/https_edge_tls_termination_module_client_spec.rb +2 -0
  564. data/spec/ngrokapi/services/ip_policies_client_spec.rb +2 -0
  565. data/spec/ngrokapi/services/ip_policy_rules_client_spec.rb +2 -0
  566. data/spec/ngrokapi/services/ip_restrictions_client_spec.rb +2 -0
  567. data/spec/ngrokapi/services/reserved_addrs_client_spec.rb +2 -0
  568. data/spec/ngrokapi/services/reserved_domains_client_spec.rb +10 -4
  569. data/spec/ngrokapi/services/ssh_certificate_authorities_client_spec.rb +2 -0
  570. data/spec/ngrokapi/services/ssh_credentials_client_spec.rb +10 -2
  571. data/spec/ngrokapi/services/ssh_host_certificates_client_spec.rb +2 -0
  572. data/spec/ngrokapi/services/ssh_user_certificates_client_spec.rb +2 -0
  573. data/spec/ngrokapi/services/tcp_edge_backend_module_client_spec.rb +2 -0
  574. data/spec/ngrokapi/services/tcp_edge_ip_restriction_module_client_spec.rb +2 -0
  575. data/spec/ngrokapi/services/tls_certificates_client_spec.rb +2 -0
  576. data/spec/ngrokapi/services/tls_edge_backend_module_client_spec.rb +2 -0
  577. data/spec/ngrokapi/services/tls_edge_ip_restriction_module_client_spec.rb +2 -0
  578. data/spec/ngrokapi/services/tls_edge_mutual_tls_module_client_spec.rb +2 -0
  579. data/spec/ngrokapi/services/tls_edge_tls_termination_module_client_spec.rb +2 -0
  580. data/spec/ngrokapi/services/tunnel_group_backends_client_spec.rb +2 -0
  581. data/spec/ngrokapi/services/tunnel_sessions_client_spec.rb +2 -0
  582. data/spec/ngrokapi/services/tunnels_client_spec.rb +2 -0
  583. data/spec/ngrokapi/services/weighted_backends_client_spec.rb +2 -0
  584. data/spec/spec_helper.rb +94 -2
  585. metadata +68 -2
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -25,12 +27,13 @@ module NgrokAPI
25
27
  #
26
28
  # @param [string] description human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes.
27
29
  # @param [string] metadata arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes.
28
- # @param [List<string>] acl optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the ``bind`` rule. The ``bind`` rule allows the caller to restrict what domains and addresses the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule ``bind:example.ngrok.io``. Bind rules may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of ``bind:*.example.com`` which will allow ``x.example.com``, ``y.example.com``, ``*.example.com``, etc. A rule of ``'*'`` is equivalent to no acl at all and will explicitly permit all actions.
30
+ # @param [List<string>] acl optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the ``bind`` rule. The ``bind`` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule ``bind:example.ngrok.io``. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of ``bind:*.example.com`` which will allow ``x.example.com``, ``y.example.com``, ``*.example.com``, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of ``bind:*=example`` which will allow ``x=example``, ``y=example``, etc. A rule of ``'*'`` is equivalent to no acl at all and will explicitly permit all actions.
29
31
  # @param [string] public_key the PEM-encoded public key of the SSH keypair that will be used to authenticate
32
+ # @param [string] owner_id If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot.
30
33
  # @return [NgrokAPI::Models::SSHCredential] result from the API request
31
34
  #
32
35
  # https://ngrok.com/docs/api#api-ssh-credentials-create
33
- def create(description: "", metadata: "", acl: [], public_key:)
36
+ def create(description: "", metadata: "", acl: [], public_key:, owner_id: nil, owner_email: "")
34
37
  path = '/ssh_credentials'
35
38
  replacements = {
36
39
  }
@@ -39,6 +42,7 @@ module NgrokAPI
39
42
  data[:metadata] = metadata if metadata
40
43
  data[:acl] = acl if acl
41
44
  data[:public_key] = public_key if public_key
45
+ data[:owner_id] = owner_id if owner_id
42
46
  result = @client.post(path % replacements, data: data)
43
47
  NgrokAPI::Models::SSHCredential.new(client: self, attrs: result)
44
48
  end
@@ -50,12 +54,13 @@ module NgrokAPI
50
54
  #
51
55
  # @param [string] description human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes.
52
56
  # @param [string] metadata arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes.
53
- # @param [List<string>] acl optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the ``bind`` rule. The ``bind`` rule allows the caller to restrict what domains and addresses the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule ``bind:example.ngrok.io``. Bind rules may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of ``bind:*.example.com`` which will allow ``x.example.com``, ``y.example.com``, ``*.example.com``, etc. A rule of ``'*'`` is equivalent to no acl at all and will explicitly permit all actions.
57
+ # @param [List<string>] acl optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the ``bind`` rule. The ``bind`` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule ``bind:example.ngrok.io``. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of ``bind:*.example.com`` which will allow ``x.example.com``, ``y.example.com``, ``*.example.com``, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of ``bind:*=example`` which will allow ``x=example``, ``y=example``, etc. A rule of ``'*'`` is equivalent to no acl at all and will explicitly permit all actions.
54
58
  # @param [string] public_key the PEM-encoded public key of the SSH keypair that will be used to authenticate
59
+ # @param [string] owner_id If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot.
55
60
  # @return [NgrokAPI::Models::SSHCredential] result from the API request
56
61
  #
57
62
  # https://ngrok.com/docs/api#api-ssh-credentials-create
58
- def create!(description: "", metadata: "", acl: [], public_key:)
63
+ def create!(description: "", metadata: "", acl: [], public_key:, owner_id: nil, owner_email: "")
59
64
  path = '/ssh_credentials'
60
65
  replacements = {
61
66
  }
@@ -64,6 +69,7 @@ module NgrokAPI
64
69
  data[:metadata] = metadata if metadata
65
70
  data[:acl] = acl if acl
66
71
  data[:public_key] = public_key if public_key
72
+ data[:owner_id] = owner_id if owner_id
67
73
  result = @client.post(path % replacements, data: data, danger: true)
68
74
  NgrokAPI::Models::SSHCredential.new(client: self, attrs: result)
69
75
  end
@@ -193,7 +199,7 @@ module NgrokAPI
193
199
  # @param [string] id
194
200
  # @param [string] description human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes.
195
201
  # @param [string] metadata arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes.
196
- # @param [List<string>] acl optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the ``bind`` rule. The ``bind`` rule allows the caller to restrict what domains and addresses the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule ``bind:example.ngrok.io``. Bind rules may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of ``bind:*.example.com`` which will allow ``x.example.com``, ``y.example.com``, ``*.example.com``, etc. A rule of ``'*'`` is equivalent to no acl at all and will explicitly permit all actions.
202
+ # @param [List<string>] acl optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the ``bind`` rule. The ``bind`` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule ``bind:example.ngrok.io``. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of ``bind:*.example.com`` which will allow ``x.example.com``, ``y.example.com``, ``*.example.com``, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of ``bind:*=example`` which will allow ``x=example``, ``y=example``, etc. A rule of ``'*'`` is equivalent to no acl at all and will explicitly permit all actions.
197
203
  # @return [NgrokAPI::Models::SSHCredential] result from the API request
198
204
  #
199
205
  # https://ngrok.com/docs/api#api-ssh-credentials-update
@@ -217,7 +223,7 @@ module NgrokAPI
217
223
  # @param [string] id
218
224
  # @param [string] description human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes.
219
225
  # @param [string] metadata arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes.
220
- # @param [List<string>] acl optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the ``bind`` rule. The ``bind`` rule allows the caller to restrict what domains and addresses the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule ``bind:example.ngrok.io``. Bind rules may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of ``bind:*.example.com`` which will allow ``x.example.com``, ``y.example.com``, ``*.example.com``, etc. A rule of ``'*'`` is equivalent to no acl at all and will explicitly permit all actions.
226
+ # @param [List<string>] acl optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the ``bind`` rule. The ``bind`` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule ``bind:example.ngrok.io``. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of ``bind:*.example.com`` which will allow ``x.example.com``, ``y.example.com``, ``*.example.com``, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of ``bind:*=example`` which will allow ``x=example``, ``y=example``, etc. A rule of ``'*'`` is equivalent to no acl at all and will explicitly permit all actions.
221
227
  # @return [NgrokAPI::Models::SSHCredential] result from the API request
222
228
  #
223
229
  # https://ngrok.com/docs/api#api-ssh-credentials-update
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -26,8 +28,8 @@ module NgrokAPI
26
28
  # @param [string] ssh_certificate_authority_id the ssh certificate authority that is used to sign this ssh user certificate
27
29
  # @param [string] public_key a public key in OpenSSH Authorized Keys format that this certificate signs
28
30
  # @param [List<string>] principals the list of principals included in the ssh user certificate. This is the list of usernames that the certificate holder may sign in as on a machine authorizing the signing certificate authority. Dangerously, if no principals are specified, this certificate may be used to log in as any user.
29
- # @param [Map<string, string>] critical_options A map of critical options included in the certificate. Only two critical options are currently defined by OpenSSH: ``force-command`` and ``source-address``. See `the OpenSSH certificate protocol spec` <https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys>`_ for additional details.
30
- # @param [Map<string, string>] extensions A map of extensions included in the certificate. Extensions are additional metadata that can be interpreted by the SSH server for any purpose. These can be used to permit or deny the ability to open a terminal, do port forwarding, x11 forwarding, and more. If unspecified, the certificate will include limited permissions with the following extension map: ``{"permit-pty": "", "permit-user-rc": ""}`` OpenSSH understands a number of predefined extensions. See `the OpenSSH certificate protocol spec` <https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys>`_ for additional details.
31
+ # @param [Map<string, string>] critical_options A map of critical options included in the certificate. Only two critical options are currently defined by OpenSSH: ``force-command`` and ``source-address``. See `the OpenSSH certificate protocol spec <https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys>`_ for additional details.
32
+ # @param [Map<string, string>] extensions A map of extensions included in the certificate. Extensions are additional metadata that can be interpreted by the SSH server for any purpose. These can be used to permit or deny the ability to open a terminal, do port forwarding, x11 forwarding, and more. If unspecified, the certificate will include limited permissions with the following extension map: ``{"permit-pty": "", "permit-user-rc": ""}`` OpenSSH understands a number of predefined extensions. See `the OpenSSH certificate protocol spec <https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys>`_ for additional details.
31
33
  # @param [datetime (RFC3339 string)] valid_after The time when the user certificate becomes valid, in RFC 3339 format. Defaults to the current time if unspecified.
32
34
  # @param [datetime (RFC3339 string)] valid_until The time when this host certificate becomes invalid, in RFC 3339 format. If unspecified, a default value of 24 hours will be used. The OpenSSH certificates RFC calls this ``valid_before``.
33
35
  # @param [string] description human-readable description of this SSH User Certificate. optional, max 255 bytes.
@@ -60,8 +62,8 @@ module NgrokAPI
60
62
  # @param [string] ssh_certificate_authority_id the ssh certificate authority that is used to sign this ssh user certificate
61
63
  # @param [string] public_key a public key in OpenSSH Authorized Keys format that this certificate signs
62
64
  # @param [List<string>] principals the list of principals included in the ssh user certificate. This is the list of usernames that the certificate holder may sign in as on a machine authorizing the signing certificate authority. Dangerously, if no principals are specified, this certificate may be used to log in as any user.
63
- # @param [Map<string, string>] critical_options A map of critical options included in the certificate. Only two critical options are currently defined by OpenSSH: ``force-command`` and ``source-address``. See `the OpenSSH certificate protocol spec` <https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys>`_ for additional details.
64
- # @param [Map<string, string>] extensions A map of extensions included in the certificate. Extensions are additional metadata that can be interpreted by the SSH server for any purpose. These can be used to permit or deny the ability to open a terminal, do port forwarding, x11 forwarding, and more. If unspecified, the certificate will include limited permissions with the following extension map: ``{"permit-pty": "", "permit-user-rc": ""}`` OpenSSH understands a number of predefined extensions. See `the OpenSSH certificate protocol spec` <https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys>`_ for additional details.
65
+ # @param [Map<string, string>] critical_options A map of critical options included in the certificate. Only two critical options are currently defined by OpenSSH: ``force-command`` and ``source-address``. See `the OpenSSH certificate protocol spec <https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys>`_ for additional details.
66
+ # @param [Map<string, string>] extensions A map of extensions included in the certificate. Extensions are additional metadata that can be interpreted by the SSH server for any purpose. These can be used to permit or deny the ability to open a terminal, do port forwarding, x11 forwarding, and more. If unspecified, the certificate will include limited permissions with the following extension map: ``{"permit-pty": "", "permit-user-rc": ""}`` OpenSSH understands a number of predefined extensions. See `the OpenSSH certificate protocol spec <https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys>`_ for additional details.
65
67
  # @param [datetime (RFC3339 string)] valid_after The time when the user certificate becomes valid, in RFC 3339 format. Defaults to the current time if unspecified.
66
68
  # @param [datetime (RFC3339 string)] valid_until The time when this host certificate becomes invalid, in RFC 3339 format. If unspecified, a default value of 24 hours will be used. The OpenSSH certificates RFC calls this ``valid_before``.
67
69
  # @param [string] description human-readable description of this SSH User Certificate. optional, max 255 bytes.
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -27,8 +29,8 @@ module NgrokAPI
27
29
  #
28
30
  # @param [string] description human-readable description of this TLS certificate. optional, max 255 bytes.
29
31
  # @param [string] metadata arbitrary user-defined machine-readable data of this TLS certificate. optional, max 4096 bytes.
30
- # @param [string] certificate_pem chain of PEM-encoded certificates, leaf first. See `Certificate Bundles` <https://ngrok.com/docs/api#tls-certificates-pem>`_.
31
- # @param [string] private_key_pem private key for the TLS certificate, PEM-encoded. See `Private Keys` <https://ngrok.com/docs/ngrok-link#tls-certificates-key>`_.
32
+ # @param [string] certificate_pem chain of PEM-encoded certificates, leaf first. See `Certificate Bundles <https://ngrok.com/docs/cloud-edge/endpoints#certificate-chains>`_.
33
+ # @param [string] private_key_pem private key for the TLS certificate, PEM-encoded. See `Private Keys <https://ngrok.com/docs/cloud-edge/endpoints#private-keys>`_.
32
34
  # @return [NgrokAPI::Models::TLSCertificate] result from the API request
33
35
  #
34
36
  # https://ngrok.com/docs/api#api-tls-certificates-create
@@ -51,8 +53,8 @@ module NgrokAPI
51
53
  #
52
54
  # @param [string] description human-readable description of this TLS certificate. optional, max 255 bytes.
53
55
  # @param [string] metadata arbitrary user-defined machine-readable data of this TLS certificate. optional, max 4096 bytes.
54
- # @param [string] certificate_pem chain of PEM-encoded certificates, leaf first. See `Certificate Bundles` <https://ngrok.com/docs/api#tls-certificates-pem>`_.
55
- # @param [string] private_key_pem private key for the TLS certificate, PEM-encoded. See `Private Keys` <https://ngrok.com/docs/ngrok-link#tls-certificates-key>`_.
56
+ # @param [string] certificate_pem chain of PEM-encoded certificates, leaf first. See `Certificate Bundles <https://ngrok.com/docs/cloud-edge/endpoints#certificate-chains>`_.
57
+ # @param [string] private_key_pem private key for the TLS certificate, PEM-encoded. See `Private Keys <https://ngrok.com/docs/cloud-edge/endpoints#private-keys>`_.
56
58
  # @return [NgrokAPI::Models::TLSCertificate] result from the API request
57
59
  #
58
60
  # https://ngrok.com/docs/api#api-tls-certificates-create
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
3
5
  module NgrokAPI
4
6
  module Services
5
7
  ##
@@ -1,7 +1,9 @@
1
- module NgrokAPI
2
- # rubocop:disable Layout/SpaceAroundOperators
3
-
4
- # The current version of the gem
5
- VERSION="0.19.0".freeze
6
- # rubocop:enable Layout/SpaceAroundOperators
7
- end
1
+ # Code generated for API Clients. DO NOT EDIT.
2
+
3
+ module NgrokAPI
4
+ # rubocop:disable Layout/SpaceAroundOperators
5
+
6
+ # The current version of the gem
7
+ VERSION="0.21.0".freeze
8
+ # rubocop:enable Layout/SpaceAroundOperators
9
+ end
data/lib/ngrokapi.rb CHANGED
@@ -1,13 +1,15 @@
1
- # frozen_string_literal: true
2
-
3
- require 'json'
4
- require 'net/http'
5
-
6
- Dir[File.join(__dir__, '**', '*.rb')].sort.each do |f|
7
- require f
8
- end
9
-
10
- ##
11
- # The Module which contains the Ngrok API gem
12
- module NgrokAPI
13
- end
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
5
+ require 'json'
6
+ require 'net/http'
7
+
8
+ Dir[File.join(__dir__, '**', '*.rb')].sort.each do |f|
9
+ require f
10
+ end
11
+
12
+ ##
13
+ # The Module which contains the Ngrok API gem
14
+ module NgrokAPI
15
+ end
data/ngrok-api.gemspec CHANGED
@@ -1,27 +1,29 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
- $LOAD_PATH.push File.expand_path('../lib', __FILE__)
4
- require 'ngrokapi/version'
5
-
6
- Gem::Specification.new do |s|
7
- s.name = 'ngrok-api'
8
- s.version = NgrokAPI::VERSION
9
- s.platform = Gem::Platform::RUBY
10
- s.licenses = ['MIT']
11
- s.authors = ['']
12
- s.email = ['']
13
- s.homepage = 'https://github.com/ngrok/ngrok-api-ruby'
14
- s.summary = 'This library wraps the [ngrok HTTP API](https://ngrok.com/docs/api) to make
15
- it easier to consume in Ruby.'
16
- s.description = 'This library wraps the [ngrok HTTP API](https://ngrok.com/docs/api) to make
17
- it easier to consume in Ruby.'
18
-
19
- s.required_ruby_version = '>= 2.7.2'
20
-
21
- all_files = `git ls-files`.split("\n")
22
- test_files = `git ls-files -- {test,spec,features}/*`.split('\n')
23
-
24
- s.files = all_files - test_files
25
- s.executables = `git ls-files -- bin/*`.split('\n').map { |f| File.basename(f) }
26
- s.require_paths = ['lib']
27
- end
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
5
+ $LOAD_PATH.push File.expand_path('../lib', __FILE__)
6
+ require 'ngrokapi/version'
7
+
8
+ Gem::Specification.new do |s|
9
+ s.name = 'ngrok-api'
10
+ s.version = NgrokAPI::VERSION
11
+ s.platform = Gem::Platform::RUBY
12
+ s.licenses = ['MIT']
13
+ s.authors = ['']
14
+ s.email = ['']
15
+ s.homepage = 'https://github.com/ngrok/ngrok-api-ruby'
16
+ s.summary = 'This library wraps the [ngrok HTTP API](https://ngrok.com/docs/api) to make
17
+ it easier to consume in Ruby.'
18
+ s.description = 'This library wraps the [ngrok HTTP API](https://ngrok.com/docs/api) to make
19
+ it easier to consume in Ruby.'
20
+
21
+ s.required_ruby_version = '>= 2.7.2'
22
+
23
+ all_files = `git ls-files`.split("\n")
24
+ test_files = `git ls-files -- {test,spec,features}/*`.split('\n')
25
+
26
+ s.files = all_files - test_files
27
+ s.executables = `git ls-files -- bin/*`.split('\n').map { |f| File.basename(f) }
28
+ s.require_paths = ['lib']
29
+ end
@@ -1,3 +1,5 @@
1
+ # Code generated for API Clients. DO NOT EDIT.
2
+
1
3
  require 'spec_helper'
2
4
  require 'ostruct'
3
5
 
@@ -24,6 +26,24 @@ RSpec.describe NgrokAPI::Client do
24
26
  end
25
27
  end
26
28
 
29
+ describe "#application_sessions" do
30
+ it "returns an instance of the ApplicationSessionsClient" do
31
+ expect(@client.application_sessions.class).to eq(NgrokAPI::Services::ApplicationSessionsClient)
32
+ end
33
+ end
34
+
35
+ describe "#application_users" do
36
+ it "returns an instance of the ApplicationUsersClient" do
37
+ expect(@client.application_users.class).to eq(NgrokAPI::Services::ApplicationUsersClient)
38
+ end
39
+ end
40
+
41
+ describe "#tunnel_sessions" do
42
+ it "returns an instance of the TunnelSessionsClient" do
43
+ expect(@client.tunnel_sessions.class).to eq(NgrokAPI::Services::TunnelSessionsClient)
44
+ end
45
+ end
46
+
27
47
  describe "#certificate_authorities" do
28
48
  it "returns an instance of the CertificateAuthoritiesClient" do
29
49
  expect(@client.certificate_authorities.class).to eq(NgrokAPI::Services::CertificateAuthoritiesClient)
@@ -120,12 +140,6 @@ RSpec.describe NgrokAPI::Client do
120
140
  end
121
141
  end
122
142
 
123
- describe "#tunnel_sessions" do
124
- it "returns an instance of the TunnelSessionsClient" do
125
- expect(@client.tunnel_sessions.class).to eq(NgrokAPI::Services::TunnelSessionsClient)
126
- end
127
- end
128
-
129
143
  describe "#tunnels" do
130
144
  it "returns an instance of the TunnelsClient" do
131
145
  expect(@client.tunnels.class).to eq(NgrokAPI::Services::TunnelsClient)
@@ -1,75 +1,77 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe NgrokAPI::HttpClient do
4
- let(:base_url) { 'https://api.ngrok.com' }
5
- let(:path) { '/api_keys' }
6
-
7
- before(:each) do
8
- api_key = 'abc'
9
- @client = NgrokAPI::HttpClient.new(api_key: api_key)
10
- end
11
-
12
- describe "#delete" do
13
- it "will delete and return an empty body" do
14
- url = "#{base_url}#{path}/#{api_key_result["id"]}"
15
- stub_request(:delete, url).to_return(body: nil)
16
- expect(@client.delete(url)).to eq(nil)
17
- end
18
- end
19
-
20
- describe "#get" do
21
- it "will get the returned resource json" do
22
- url = "#{base_url}#{path}/#{api_key_result["id"]}"
23
- stub_request(:get, url).to_return(body: api_key_result.to_json)
24
- expect(@client.get(url)).to eq(api_key_result)
25
- end
26
-
27
- it "will raise a NotFoundError if 404" do
28
- url = "#{base_url}#{path}/#{api_key_result["id"]}"
29
- stub_request(:get, url).to_return(body: nil, status: 404)
30
- expect do
31
- @client.get(url, danger: true)
32
- end.to raise_error(NgrokAPI::Errors::NotFoundError)
33
- end
34
-
35
- it "will raise a NgrokAPI::Error if >= 400" do
36
- url = "#{base_url}#{path}/#{api_key_result["id"]}"
37
- stub_request(:get, url).to_return(body: nil, status: 400)
38
- expect do
39
- @client.get(url, danger: true)
40
- end.to raise_error(NgrokAPI::Error)
41
- end
42
- end
43
-
44
- describe "#list" do
45
- it "with a url will return based on the absolute URL" do
46
- url = "#{base_url}#{path}?before_id=#{api_key_result["id"]}&limit=1"
47
- stub_request(:get, url).to_return(body: api_key_results.to_json)
48
- expect(@client.list(url: url)).to eq(api_key_results)
49
- end
50
-
51
- it "without a url will return based on the path, before_id, and limit" do
52
- url = "#{base_url}#{path}?before_id=#{api_key_result["id"]}&limit=1"
53
- stub_request(:get, url).to_return(body: api_key_results.to_json)
54
- expect(@client.list(before_id: api_key_result["id"], limit: 1, path: path)).to eq(api_key_results)
55
- end
56
- end
57
-
58
- describe "#patch" do
59
- it "updates an existing resource" do
60
- merged = api_key_result
61
- merged['metadata'] = 'updated'
62
- url = "#{base_url}#{path}/#{api_key_result["id"]}"
63
- stub_request(:patch, url).to_return(body: merged.to_json)
64
- expect(@client.patch(url)).to eq(merged)
65
- end
66
- end
67
-
68
- describe "#post" do
69
- it "creates a new resource" do
70
- url = "#{base_url}#{path}/#{api_key_result["id"]}"
71
- stub_request(:post, url).to_return(body: api_key_result.to_json)
72
- expect(@client.post(url)).to eq(api_key_result)
73
- end
74
- end
75
- end
1
+ # Code generated for API Clients. DO NOT EDIT.
2
+
3
+ require 'spec_helper'
4
+
5
+ RSpec.describe NgrokAPI::HttpClient do
6
+ let(:base_url) { 'https://api.ngrok.com' }
7
+ let(:path) { '/api_keys' }
8
+
9
+ before(:each) do
10
+ api_key = 'abc'
11
+ @client = NgrokAPI::HttpClient.new(api_key: api_key)
12
+ end
13
+
14
+ describe "#delete" do
15
+ it "will delete and return an empty body" do
16
+ url = "#{base_url}#{path}/#{api_key_result["id"]}"
17
+ stub_request(:delete, url).to_return(body: nil)
18
+ expect(@client.delete(url)).to eq(nil)
19
+ end
20
+ end
21
+
22
+ describe "#get" do
23
+ it "will get the returned resource json" do
24
+ url = "#{base_url}#{path}/#{api_key_result["id"]}"
25
+ stub_request(:get, url).to_return(body: api_key_result.to_json)
26
+ expect(@client.get(url)).to eq(api_key_result)
27
+ end
28
+
29
+ it "will raise a NotFoundError if 404" do
30
+ url = "#{base_url}#{path}/#{api_key_result["id"]}"
31
+ stub_request(:get, url).to_return(body: nil, status: 404)
32
+ expect do
33
+ @client.get(url, danger: true)
34
+ end.to raise_error(NgrokAPI::Errors::NotFoundError)
35
+ end
36
+
37
+ it "will raise a NgrokAPI::Error if >= 400" do
38
+ url = "#{base_url}#{path}/#{api_key_result["id"]}"
39
+ stub_request(:get, url).to_return(body: nil, status: 400)
40
+ expect do
41
+ @client.get(url, danger: true)
42
+ end.to raise_error(NgrokAPI::Error)
43
+ end
44
+ end
45
+
46
+ describe "#list" do
47
+ it "with a url will return based on the absolute URL" do
48
+ url = "#{base_url}#{path}?before_id=#{api_key_result["id"]}&limit=1"
49
+ stub_request(:get, url).to_return(body: api_key_results.to_json)
50
+ expect(@client.list(url: url)).to eq(api_key_results)
51
+ end
52
+
53
+ it "without a url will return based on the path, before_id, and limit" do
54
+ url = "#{base_url}#{path}?before_id=#{api_key_result["id"]}&limit=1"
55
+ stub_request(:get, url).to_return(body: api_key_results.to_json)
56
+ expect(@client.list(before_id: api_key_result["id"], limit: 1, path: path)).to eq(api_key_results)
57
+ end
58
+ end
59
+
60
+ describe "#patch" do
61
+ it "updates an existing resource" do
62
+ merged = api_key_result
63
+ merged['metadata'] = 'updated'
64
+ url = "#{base_url}#{path}/#{api_key_result["id"]}"
65
+ stub_request(:patch, url).to_return(body: merged.to_json)
66
+ expect(@client.patch(url)).to eq(merged)
67
+ end
68
+ end
69
+
70
+ describe "#post" do
71
+ it "creates a new resource" do
72
+ url = "#{base_url}#{path}/#{api_key_result["id"]}"
73
+ stub_request(:post, url).to_return(body: api_key_result.to_json)
74
+ expect(@client.post(url)).to eq(api_key_result)
75
+ end
76
+ end
77
+ end
@@ -1,3 +1,5 @@
1
+ # Code generated for API Clients. DO NOT EDIT.
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  RSpec.describe NgrokAPI::Models::AbuseReportHostname do
@@ -1,3 +1,5 @@
1
+ # Code generated for API Clients. DO NOT EDIT.
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  RSpec.describe NgrokAPI::Models::AbuseReport do
@@ -0,0 +1,23 @@
1
+ # Code generated for API Clients. DO NOT EDIT.
2
+
3
+ require 'spec_helper'
4
+
5
+ RSpec.describe NgrokAPI::Models::AgentIngressCertJob do
6
+ before(:each) do
7
+ @client = class_double("AgentIngressCertJobsClient")
8
+ @agent_ingress_cert_job = NgrokAPI::Models::AgentIngressCertJob.new(client: @client, attrs: agent_ingress_cert_job_result)
9
+ end
10
+
11
+ describe "#==" do
12
+ it "is equal if the results are the same" do
13
+ other = NgrokAPI::Models::AgentIngressCertJob.new(client: @client, attrs: agent_ingress_cert_job_result)
14
+ expect(@agent_ingress_cert_job == other).to eq true
15
+ end
16
+ end
17
+
18
+ describe "#to_s" do
19
+ it "stringifies as result.to_s" do
20
+ expect(@agent_ingress_cert_job.to_s).to eq agent_ingress_cert_job_result.to_s
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,23 @@
1
+ # Code generated for API Clients. DO NOT EDIT.
2
+
3
+ require 'spec_helper'
4
+
5
+ RSpec.describe NgrokAPI::Models::AgentIngressCertPolicy do
6
+ before(:each) do
7
+ @client = class_double("AgentIngressCertPolicysClient")
8
+ @agent_ingress_cert_policy = NgrokAPI::Models::AgentIngressCertPolicy.new(client: @client, attrs: agent_ingress_cert_policy_result)
9
+ end
10
+
11
+ describe "#==" do
12
+ it "is equal if the results are the same" do
13
+ other = NgrokAPI::Models::AgentIngressCertPolicy.new(client: @client, attrs: agent_ingress_cert_policy_result)
14
+ expect(@agent_ingress_cert_policy == other).to eq true
15
+ end
16
+ end
17
+
18
+ describe "#to_s" do
19
+ it "stringifies as result.to_s" do
20
+ expect(@agent_ingress_cert_policy.to_s).to eq agent_ingress_cert_policy_result.to_s
21
+ end
22
+ end
23
+ end