ngrok-api 0.24.0 → 0.25.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 (347) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +1 -1
  3. data/CHANGELOG.md +9 -0
  4. data/Gemfile.lock +9 -1
  5. data/doc/NgrokAPI/Client.html +223 -67
  6. data/doc/NgrokAPI/Error.html +2 -2
  7. data/doc/NgrokAPI/Errors/NotFoundError.html +2 -2
  8. data/doc/NgrokAPI/Errors.html +2 -2
  9. data/doc/NgrokAPI/HttpClient.html +2 -2
  10. data/doc/NgrokAPI/Models/APIKey.html +2 -2
  11. data/doc/NgrokAPI/Models/AWSAuth.html +2 -2
  12. data/doc/NgrokAPI/Models/AWSCredentials.html +2 -2
  13. data/doc/NgrokAPI/Models/AWSRole.html +2 -2
  14. data/doc/NgrokAPI/Models/AbuseReport.html +2 -2
  15. data/doc/NgrokAPI/Models/AbuseReportHostname.html +2 -2
  16. data/doc/NgrokAPI/Models/AgentIngress.html +2 -2
  17. data/doc/NgrokAPI/Models/AgentIngressCertJob.html +2 -2
  18. data/doc/NgrokAPI/Models/AgentIngressCertPolicy.html +2 -2
  19. data/doc/NgrokAPI/Models/AgentIngressCertStatus.html +2 -2
  20. data/doc/NgrokAPI/Models/ApplicationSession.html +2 -2
  21. data/doc/NgrokAPI/Models/ApplicationUser.html +2 -2
  22. data/doc/NgrokAPI/Models/BotUser.html +2 -2
  23. data/doc/NgrokAPI/Models/BrowserSession.html +2 -2
  24. data/doc/NgrokAPI/Models/CertificateAuthority.html +2 -2
  25. data/doc/NgrokAPI/Models/Credential.html +2 -2
  26. data/doc/NgrokAPI/Models/Endpoint.html +48 -42
  27. data/doc/NgrokAPI/Models/EndpointBackend.html +2 -2
  28. data/doc/NgrokAPI/Models/EndpointBackendMutate.html +2 -2
  29. data/doc/NgrokAPI/Models/EndpointCircuitBreaker.html +2 -2
  30. data/doc/NgrokAPI/Models/EndpointCompression.html +2 -2
  31. data/doc/NgrokAPI/Models/EndpointIPPolicy.html +2 -2
  32. data/doc/NgrokAPI/Models/EndpointIPPolicyMutate.html +2 -2
  33. data/doc/NgrokAPI/Models/EndpointMutualTLS.html +2 -2
  34. data/doc/NgrokAPI/Models/EndpointMutualTLSMutate.html +2 -2
  35. data/doc/NgrokAPI/Models/EndpointOAuth.html +2 -2
  36. data/doc/NgrokAPI/Models/EndpointOAuthAmazon.html +2 -2
  37. data/doc/NgrokAPI/Models/EndpointOAuthFacebook.html +2 -2
  38. data/doc/NgrokAPI/Models/EndpointOAuthGitHub.html +2 -2
  39. data/doc/NgrokAPI/Models/EndpointOAuthGitLab.html +2 -2
  40. data/doc/NgrokAPI/Models/EndpointOAuthGoogle.html +2 -2
  41. data/doc/NgrokAPI/Models/EndpointOAuthLinkedIn.html +2 -2
  42. data/doc/NgrokAPI/Models/EndpointOAuthMicrosoft.html +2 -2
  43. data/doc/NgrokAPI/Models/EndpointOAuthProvider.html +2 -2
  44. data/doc/NgrokAPI/Models/EndpointOAuthTwitch.html +2 -2
  45. data/doc/NgrokAPI/Models/EndpointOIDC.html +2 -2
  46. data/doc/NgrokAPI/Models/EndpointRequestHeaders.html +2 -2
  47. data/doc/NgrokAPI/Models/EndpointResponseHeaders.html +2 -2
  48. data/doc/NgrokAPI/Models/EndpointSAML.html +2 -2
  49. data/doc/NgrokAPI/Models/EndpointSAMLMutate.html +2 -2
  50. data/doc/NgrokAPI/Models/EndpointTLSTermination.html +2 -2
  51. data/doc/NgrokAPI/Models/EndpointTLSTerminationAtEdge.html +2 -2
  52. data/doc/NgrokAPI/Models/EndpointTrafficPolicy.html +2 -2
  53. data/doc/NgrokAPI/Models/EndpointUserAgentFilter.html +2 -2
  54. data/doc/NgrokAPI/Models/EndpointWebhookValidation.html +2 -2
  55. data/doc/NgrokAPI/Models/EndpointWebsocketTCPConverter.html +2 -2
  56. data/doc/NgrokAPI/Models/EventDestination.html +2 -2
  57. data/doc/NgrokAPI/Models/EventSource.html +2 -2
  58. data/doc/NgrokAPI/Models/EventSourceList.html +2 -2
  59. data/doc/NgrokAPI/Models/EventSourceReplace.html +2 -2
  60. data/doc/NgrokAPI/Models/EventSubscription.html +2 -2
  61. data/doc/NgrokAPI/Models/EventTarget.html +2 -2
  62. data/doc/NgrokAPI/Models/EventTargetAzureLogsIngestion.html +2 -2
  63. data/doc/NgrokAPI/Models/EventTargetCloudwatchLogs.html +2 -2
  64. data/doc/NgrokAPI/Models/EventTargetDatadog.html +2 -2
  65. data/doc/NgrokAPI/Models/EventTargetFirehose.html +2 -2
  66. data/doc/NgrokAPI/Models/EventTargetKinesis.html +2 -2
  67. data/doc/NgrokAPI/Models/FailoverBackend.html +2 -2
  68. data/doc/NgrokAPI/Models/HTTPResponseBackend.html +2 -2
  69. data/doc/NgrokAPI/Models/HTTPSEdge.html +2 -2
  70. data/doc/NgrokAPI/Models/HTTPSEdgeRoute.html +2 -2
  71. data/doc/NgrokAPI/Models/IPPolicy.html +2 -2
  72. data/doc/NgrokAPI/Models/IPPolicyRule.html +2 -2
  73. data/doc/NgrokAPI/Models/IPRestriction.html +2 -2
  74. data/doc/NgrokAPI/Models/IdentityProvider.html +2 -2
  75. data/doc/NgrokAPI/Models/Listable.html +2 -2
  76. data/doc/NgrokAPI/Models/Location.html +2 -2
  77. data/doc/NgrokAPI/Models/Ref.html +2 -2
  78. data/doc/NgrokAPI/Models/ReservedAddr.html +2 -2
  79. data/doc/NgrokAPI/Models/ReservedDomain.html +2 -2
  80. data/doc/NgrokAPI/Models/ReservedDomainCertJob.html +2 -2
  81. data/doc/NgrokAPI/Models/ReservedDomainCertPolicy.html +2 -2
  82. data/doc/NgrokAPI/Models/ReservedDomainCertStatus.html +2 -2
  83. data/doc/NgrokAPI/Models/SSHCertificateAuthority.html +2 -2
  84. data/doc/NgrokAPI/Models/SSHCredential.html +2 -2
  85. data/doc/NgrokAPI/Models/SSHHostCertificate.html +2 -2
  86. data/doc/NgrokAPI/Models/SSHUserCertificate.html +2 -2
  87. data/doc/NgrokAPI/Models/Secret.html +1336 -0
  88. data/doc/NgrokAPI/Models/StaticBackend.html +2 -2
  89. data/doc/NgrokAPI/Models/StaticBackendTLS.html +2 -2
  90. data/doc/NgrokAPI/Models/TCPEdge.html +2 -2
  91. data/doc/NgrokAPI/Models/TLSCertificate.html +2 -2
  92. data/doc/NgrokAPI/Models/TLSCertificateSANs.html +2 -2
  93. data/doc/NgrokAPI/Models/TLSEdge.html +2 -2
  94. data/doc/NgrokAPI/Models/Tunnel.html +2 -2
  95. data/doc/NgrokAPI/Models/TunnelGroupBackend.html +2 -2
  96. data/doc/NgrokAPI/Models/TunnelSession.html +2 -2
  97. data/doc/NgrokAPI/Models/UserAgent.html +2 -2
  98. data/doc/NgrokAPI/Models/Vault.html +1353 -0
  99. data/doc/NgrokAPI/Models/WeightedBackend.html +2 -2
  100. data/doc/NgrokAPI/Models.html +4 -4
  101. data/doc/NgrokAPI/PagedIterator.html +2 -2
  102. data/doc/NgrokAPI/Services/APIKeysClient.html +2 -2
  103. data/doc/NgrokAPI/Services/AbuseReportsClient.html +2 -2
  104. data/doc/NgrokAPI/Services/AgentIngressesClient.html +2 -2
  105. data/doc/NgrokAPI/Services/ApplicationSessionsClient.html +2 -2
  106. data/doc/NgrokAPI/Services/ApplicationUsersClient.html +2 -2
  107. data/doc/NgrokAPI/Services/BotUsersClient.html +2 -2
  108. data/doc/NgrokAPI/Services/CertificateAuthoritiesClient.html +2 -2
  109. data/doc/NgrokAPI/Services/CredentialsClient.html +2 -2
  110. data/doc/NgrokAPI/Services/EdgeRouteBackendModuleClient.html +2 -2
  111. data/doc/NgrokAPI/Services/EdgeRouteCircuitBreakerModuleClient.html +2 -2
  112. data/doc/NgrokAPI/Services/EdgeRouteCompressionModuleClient.html +2 -2
  113. data/doc/NgrokAPI/Services/EdgeRouteIPRestrictionModuleClient.html +2 -2
  114. data/doc/NgrokAPI/Services/EdgeRouteOAuthModuleClient.html +2 -2
  115. data/doc/NgrokAPI/Services/EdgeRouteOIDCModuleClient.html +2 -2
  116. data/doc/NgrokAPI/Services/EdgeRouteRequestHeadersModuleClient.html +2 -2
  117. data/doc/NgrokAPI/Services/EdgeRouteResponseHeadersModuleClient.html +2 -2
  118. data/doc/NgrokAPI/Services/EdgeRouteSAMLModuleClient.html +2 -2
  119. data/doc/NgrokAPI/Services/EdgeRouteTrafficPolicyModuleClient.html +2 -2
  120. data/doc/NgrokAPI/Services/EdgeRouteUserAgentFilterModuleClient.html +2 -2
  121. data/doc/NgrokAPI/Services/EdgeRouteWebhookVerificationModuleClient.html +2 -2
  122. data/doc/NgrokAPI/Services/EdgeRouteWebsocketTCPConverterModuleClient.html +2 -2
  123. data/doc/NgrokAPI/Services/EdgesHTTPSClient.html +2 -2
  124. data/doc/NgrokAPI/Services/EdgesHTTPSRoutesClient.html +2 -2
  125. data/doc/NgrokAPI/Services/EdgesTCPClient.html +2 -2
  126. data/doc/NgrokAPI/Services/EdgesTLSClient.html +2 -2
  127. data/doc/NgrokAPI/Services/EndpointsClient.html +236 -128
  128. data/doc/NgrokAPI/Services/EventDestinationsClient.html +2 -2
  129. data/doc/NgrokAPI/Services/EventSourcesClient.html +2 -2
  130. data/doc/NgrokAPI/Services/EventSubscriptionsClient.html +2 -2
  131. data/doc/NgrokAPI/Services/FailoverBackendsClient.html +2 -2
  132. data/doc/NgrokAPI/Services/HTTPResponseBackendsClient.html +2 -2
  133. data/doc/NgrokAPI/Services/HTTPSEdgeMutualTLSModuleClient.html +2 -2
  134. data/doc/NgrokAPI/Services/HTTPSEdgeTLSTerminationModuleClient.html +2 -2
  135. data/doc/NgrokAPI/Services/IPPoliciesClient.html +2 -2
  136. data/doc/NgrokAPI/Services/IPPolicyRulesClient.html +2 -2
  137. data/doc/NgrokAPI/Services/IPRestrictionsClient.html +2 -2
  138. data/doc/NgrokAPI/Services/ReservedAddrsClient.html +2 -2
  139. data/doc/NgrokAPI/Services/ReservedDomainsClient.html +2 -2
  140. data/doc/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +2 -2
  141. data/doc/NgrokAPI/Services/SSHCredentialsClient.html +2 -2
  142. data/doc/NgrokAPI/Services/SSHHostCertificatesClient.html +2 -2
  143. data/doc/NgrokAPI/Services/SSHUserCertificatesClient.html +2 -2
  144. data/doc/NgrokAPI/Services/SecretsClient.html +1925 -0
  145. data/doc/NgrokAPI/Services/StaticBackendsClient.html +2 -2
  146. data/doc/NgrokAPI/Services/TCPEdgeBackendModuleClient.html +2 -2
  147. data/doc/NgrokAPI/Services/TCPEdgeIPRestrictionModuleClient.html +2 -2
  148. data/doc/NgrokAPI/Services/TCPEdgeTrafficPolicyModuleClient.html +2 -2
  149. data/doc/NgrokAPI/Services/TLSCertificatesClient.html +2 -2
  150. data/doc/NgrokAPI/Services/TLSEdgeBackendModuleClient.html +2 -2
  151. data/doc/NgrokAPI/Services/TLSEdgeIPRestrictionModuleClient.html +2 -2
  152. data/doc/NgrokAPI/Services/TLSEdgeMutualTLSModuleClient.html +2 -2
  153. data/doc/NgrokAPI/Services/TLSEdgeTLSTerminationModuleClient.html +2 -2
  154. data/doc/NgrokAPI/Services/TLSEdgeTrafficPolicyModuleClient.html +2 -2
  155. data/doc/NgrokAPI/Services/TunnelGroupBackendsClient.html +2 -2
  156. data/doc/NgrokAPI/Services/TunnelSessionsClient.html +2 -2
  157. data/doc/NgrokAPI/Services/TunnelsClient.html +2 -2
  158. data/doc/NgrokAPI/Services/VaultsClient.html +1809 -0
  159. data/doc/NgrokAPI/Services/WeightedBackendsClient.html +2 -2
  160. data/doc/NgrokAPI/Services.html +5 -5
  161. data/doc/NgrokAPI.html +3 -3
  162. data/doc/_index.html +38 -2
  163. data/doc/class_list.html +1 -1
  164. data/doc/file.README.html +2 -2
  165. data/doc/index.html +2 -2
  166. data/doc/method_list.html +735 -255
  167. data/doc/top-level-namespace.html +2 -2
  168. data/docs/NgrokAPI/Client.html +223 -67
  169. data/docs/NgrokAPI/Error.html +2 -2
  170. data/docs/NgrokAPI/Errors/NotFoundError.html +2 -2
  171. data/docs/NgrokAPI/Errors.html +2 -2
  172. data/docs/NgrokAPI/HttpClient.html +2 -2
  173. data/docs/NgrokAPI/Models/APIKey.html +2 -2
  174. data/docs/NgrokAPI/Models/AWSAuth.html +2 -2
  175. data/docs/NgrokAPI/Models/AWSCredentials.html +2 -2
  176. data/docs/NgrokAPI/Models/AWSRole.html +2 -2
  177. data/docs/NgrokAPI/Models/AbuseReport.html +2 -2
  178. data/docs/NgrokAPI/Models/AbuseReportHostname.html +2 -2
  179. data/docs/NgrokAPI/Models/AgentIngress.html +2 -2
  180. data/docs/NgrokAPI/Models/AgentIngressCertJob.html +2 -2
  181. data/docs/NgrokAPI/Models/AgentIngressCertPolicy.html +2 -2
  182. data/docs/NgrokAPI/Models/AgentIngressCertStatus.html +2 -2
  183. data/docs/NgrokAPI/Models/ApplicationSession.html +2 -2
  184. data/docs/NgrokAPI/Models/ApplicationUser.html +2 -2
  185. data/docs/NgrokAPI/Models/BotUser.html +2 -2
  186. data/docs/NgrokAPI/Models/BrowserSession.html +2 -2
  187. data/docs/NgrokAPI/Models/CertificateAuthority.html +2 -2
  188. data/docs/NgrokAPI/Models/Credential.html +2 -2
  189. data/docs/NgrokAPI/Models/Endpoint.html +48 -42
  190. data/docs/NgrokAPI/Models/EndpointBackend.html +2 -2
  191. data/docs/NgrokAPI/Models/EndpointBackendMutate.html +2 -2
  192. data/docs/NgrokAPI/Models/EndpointCircuitBreaker.html +2 -2
  193. data/docs/NgrokAPI/Models/EndpointCompression.html +2 -2
  194. data/docs/NgrokAPI/Models/EndpointIPPolicy.html +2 -2
  195. data/docs/NgrokAPI/Models/EndpointIPPolicyMutate.html +2 -2
  196. data/docs/NgrokAPI/Models/EndpointMutualTLS.html +2 -2
  197. data/docs/NgrokAPI/Models/EndpointMutualTLSMutate.html +2 -2
  198. data/docs/NgrokAPI/Models/EndpointOAuth.html +2 -2
  199. data/docs/NgrokAPI/Models/EndpointOAuthAmazon.html +2 -2
  200. data/docs/NgrokAPI/Models/EndpointOAuthFacebook.html +2 -2
  201. data/docs/NgrokAPI/Models/EndpointOAuthGitHub.html +2 -2
  202. data/docs/NgrokAPI/Models/EndpointOAuthGitLab.html +2 -2
  203. data/docs/NgrokAPI/Models/EndpointOAuthGoogle.html +2 -2
  204. data/docs/NgrokAPI/Models/EndpointOAuthLinkedIn.html +2 -2
  205. data/docs/NgrokAPI/Models/EndpointOAuthMicrosoft.html +2 -2
  206. data/docs/NgrokAPI/Models/EndpointOAuthProvider.html +2 -2
  207. data/docs/NgrokAPI/Models/EndpointOAuthTwitch.html +2 -2
  208. data/docs/NgrokAPI/Models/EndpointOIDC.html +2 -2
  209. data/docs/NgrokAPI/Models/EndpointRequestHeaders.html +2 -2
  210. data/docs/NgrokAPI/Models/EndpointResponseHeaders.html +2 -2
  211. data/docs/NgrokAPI/Models/EndpointSAML.html +2 -2
  212. data/docs/NgrokAPI/Models/EndpointSAMLMutate.html +2 -2
  213. data/docs/NgrokAPI/Models/EndpointTLSTermination.html +2 -2
  214. data/docs/NgrokAPI/Models/EndpointTLSTerminationAtEdge.html +2 -2
  215. data/docs/NgrokAPI/Models/EndpointTrafficPolicy.html +2 -2
  216. data/docs/NgrokAPI/Models/EndpointUserAgentFilter.html +2 -2
  217. data/docs/NgrokAPI/Models/EndpointWebhookValidation.html +2 -2
  218. data/docs/NgrokAPI/Models/EndpointWebsocketTCPConverter.html +2 -2
  219. data/docs/NgrokAPI/Models/EventDestination.html +2 -2
  220. data/docs/NgrokAPI/Models/EventSource.html +2 -2
  221. data/docs/NgrokAPI/Models/EventSourceList.html +2 -2
  222. data/docs/NgrokAPI/Models/EventSourceReplace.html +2 -2
  223. data/docs/NgrokAPI/Models/EventSubscription.html +2 -2
  224. data/docs/NgrokAPI/Models/EventTarget.html +2 -2
  225. data/docs/NgrokAPI/Models/EventTargetAzureLogsIngestion.html +2 -2
  226. data/docs/NgrokAPI/Models/EventTargetCloudwatchLogs.html +2 -2
  227. data/docs/NgrokAPI/Models/EventTargetDatadog.html +2 -2
  228. data/docs/NgrokAPI/Models/EventTargetFirehose.html +2 -2
  229. data/docs/NgrokAPI/Models/EventTargetKinesis.html +2 -2
  230. data/docs/NgrokAPI/Models/FailoverBackend.html +2 -2
  231. data/docs/NgrokAPI/Models/HTTPResponseBackend.html +2 -2
  232. data/docs/NgrokAPI/Models/HTTPSEdge.html +2 -2
  233. data/docs/NgrokAPI/Models/HTTPSEdgeRoute.html +2 -2
  234. data/docs/NgrokAPI/Models/IPPolicy.html +2 -2
  235. data/docs/NgrokAPI/Models/IPPolicyRule.html +2 -2
  236. data/docs/NgrokAPI/Models/IPRestriction.html +2 -2
  237. data/docs/NgrokAPI/Models/IdentityProvider.html +2 -2
  238. data/docs/NgrokAPI/Models/Listable.html +2 -2
  239. data/docs/NgrokAPI/Models/Location.html +2 -2
  240. data/docs/NgrokAPI/Models/Ref.html +2 -2
  241. data/docs/NgrokAPI/Models/ReservedAddr.html +2 -2
  242. data/docs/NgrokAPI/Models/ReservedDomain.html +2 -2
  243. data/docs/NgrokAPI/Models/ReservedDomainCertJob.html +2 -2
  244. data/docs/NgrokAPI/Models/ReservedDomainCertPolicy.html +2 -2
  245. data/docs/NgrokAPI/Models/ReservedDomainCertStatus.html +2 -2
  246. data/docs/NgrokAPI/Models/SSHCertificateAuthority.html +2 -2
  247. data/docs/NgrokAPI/Models/SSHCredential.html +2 -2
  248. data/docs/NgrokAPI/Models/SSHHostCertificate.html +2 -2
  249. data/docs/NgrokAPI/Models/SSHUserCertificate.html +2 -2
  250. data/docs/NgrokAPI/Models/Secret.html +1336 -0
  251. data/docs/NgrokAPI/Models/StaticBackend.html +2 -2
  252. data/docs/NgrokAPI/Models/StaticBackendTLS.html +2 -2
  253. data/docs/NgrokAPI/Models/TCPEdge.html +2 -2
  254. data/docs/NgrokAPI/Models/TLSCertificate.html +2 -2
  255. data/docs/NgrokAPI/Models/TLSCertificateSANs.html +2 -2
  256. data/docs/NgrokAPI/Models/TLSEdge.html +2 -2
  257. data/docs/NgrokAPI/Models/Tunnel.html +2 -2
  258. data/docs/NgrokAPI/Models/TunnelGroupBackend.html +2 -2
  259. data/docs/NgrokAPI/Models/TunnelSession.html +2 -2
  260. data/docs/NgrokAPI/Models/UserAgent.html +2 -2
  261. data/docs/NgrokAPI/Models/Vault.html +1353 -0
  262. data/docs/NgrokAPI/Models/WeightedBackend.html +2 -2
  263. data/docs/NgrokAPI/Models.html +4 -4
  264. data/docs/NgrokAPI/PagedIterator.html +2 -2
  265. data/docs/NgrokAPI/Services/APIKeysClient.html +2 -2
  266. data/docs/NgrokAPI/Services/AbuseReportsClient.html +2 -2
  267. data/docs/NgrokAPI/Services/AgentIngressesClient.html +2 -2
  268. data/docs/NgrokAPI/Services/ApplicationSessionsClient.html +2 -2
  269. data/docs/NgrokAPI/Services/ApplicationUsersClient.html +2 -2
  270. data/docs/NgrokAPI/Services/BotUsersClient.html +2 -2
  271. data/docs/NgrokAPI/Services/CertificateAuthoritiesClient.html +2 -2
  272. data/docs/NgrokAPI/Services/CredentialsClient.html +2 -2
  273. data/docs/NgrokAPI/Services/EdgeRouteBackendModuleClient.html +2 -2
  274. data/docs/NgrokAPI/Services/EdgeRouteCircuitBreakerModuleClient.html +2 -2
  275. data/docs/NgrokAPI/Services/EdgeRouteCompressionModuleClient.html +2 -2
  276. data/docs/NgrokAPI/Services/EdgeRouteIPRestrictionModuleClient.html +2 -2
  277. data/docs/NgrokAPI/Services/EdgeRouteOAuthModuleClient.html +2 -2
  278. data/docs/NgrokAPI/Services/EdgeRouteOIDCModuleClient.html +2 -2
  279. data/docs/NgrokAPI/Services/EdgeRouteRequestHeadersModuleClient.html +2 -2
  280. data/docs/NgrokAPI/Services/EdgeRouteResponseHeadersModuleClient.html +2 -2
  281. data/docs/NgrokAPI/Services/EdgeRouteSAMLModuleClient.html +2 -2
  282. data/docs/NgrokAPI/Services/EdgeRouteTrafficPolicyModuleClient.html +2 -2
  283. data/docs/NgrokAPI/Services/EdgeRouteUserAgentFilterModuleClient.html +2 -2
  284. data/docs/NgrokAPI/Services/EdgeRouteWebhookVerificationModuleClient.html +2 -2
  285. data/docs/NgrokAPI/Services/EdgeRouteWebsocketTCPConverterModuleClient.html +2 -2
  286. data/docs/NgrokAPI/Services/EdgesHTTPSClient.html +2 -2
  287. data/docs/NgrokAPI/Services/EdgesHTTPSRoutesClient.html +2 -2
  288. data/docs/NgrokAPI/Services/EdgesTCPClient.html +2 -2
  289. data/docs/NgrokAPI/Services/EdgesTLSClient.html +2 -2
  290. data/docs/NgrokAPI/Services/EndpointsClient.html +236 -128
  291. data/docs/NgrokAPI/Services/EventDestinationsClient.html +2 -2
  292. data/docs/NgrokAPI/Services/EventSourcesClient.html +2 -2
  293. data/docs/NgrokAPI/Services/EventSubscriptionsClient.html +2 -2
  294. data/docs/NgrokAPI/Services/FailoverBackendsClient.html +2 -2
  295. data/docs/NgrokAPI/Services/HTTPResponseBackendsClient.html +2 -2
  296. data/docs/NgrokAPI/Services/HTTPSEdgeMutualTLSModuleClient.html +2 -2
  297. data/docs/NgrokAPI/Services/HTTPSEdgeTLSTerminationModuleClient.html +2 -2
  298. data/docs/NgrokAPI/Services/IPPoliciesClient.html +2 -2
  299. data/docs/NgrokAPI/Services/IPPolicyRulesClient.html +2 -2
  300. data/docs/NgrokAPI/Services/IPRestrictionsClient.html +2 -2
  301. data/docs/NgrokAPI/Services/ReservedAddrsClient.html +2 -2
  302. data/docs/NgrokAPI/Services/ReservedDomainsClient.html +2 -2
  303. data/docs/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +2 -2
  304. data/docs/NgrokAPI/Services/SSHCredentialsClient.html +2 -2
  305. data/docs/NgrokAPI/Services/SSHHostCertificatesClient.html +2 -2
  306. data/docs/NgrokAPI/Services/SSHUserCertificatesClient.html +2 -2
  307. data/docs/NgrokAPI/Services/SecretsClient.html +1925 -0
  308. data/docs/NgrokAPI/Services/StaticBackendsClient.html +2 -2
  309. data/docs/NgrokAPI/Services/TCPEdgeBackendModuleClient.html +2 -2
  310. data/docs/NgrokAPI/Services/TCPEdgeIPRestrictionModuleClient.html +2 -2
  311. data/docs/NgrokAPI/Services/TCPEdgeTrafficPolicyModuleClient.html +2 -2
  312. data/docs/NgrokAPI/Services/TLSCertificatesClient.html +2 -2
  313. data/docs/NgrokAPI/Services/TLSEdgeBackendModuleClient.html +2 -2
  314. data/docs/NgrokAPI/Services/TLSEdgeIPRestrictionModuleClient.html +2 -2
  315. data/docs/NgrokAPI/Services/TLSEdgeMutualTLSModuleClient.html +2 -2
  316. data/docs/NgrokAPI/Services/TLSEdgeTLSTerminationModuleClient.html +2 -2
  317. data/docs/NgrokAPI/Services/TLSEdgeTrafficPolicyModuleClient.html +2 -2
  318. data/docs/NgrokAPI/Services/TunnelGroupBackendsClient.html +2 -2
  319. data/docs/NgrokAPI/Services/TunnelSessionsClient.html +2 -2
  320. data/docs/NgrokAPI/Services/TunnelsClient.html +2 -2
  321. data/docs/NgrokAPI/Services/VaultsClient.html +1809 -0
  322. data/docs/NgrokAPI/Services/WeightedBackendsClient.html +2 -2
  323. data/docs/NgrokAPI/Services.html +5 -5
  324. data/docs/NgrokAPI.html +3 -3
  325. data/docs/_index.html +38 -2
  326. data/docs/class_list.html +1 -1
  327. data/docs/file.README.html +2 -2
  328. data/docs/index.html +2 -2
  329. data/docs/method_list.html +735 -255
  330. data/docs/top-level-namespace.html +2 -2
  331. data/lib/ngrokapi/client.rb +18 -0
  332. data/lib/ngrokapi/models/endpoint.rb +10 -7
  333. data/lib/ngrokapi/models/secret.rb +63 -0
  334. data/lib/ngrokapi/models/vault.rb +81 -0
  335. data/lib/ngrokapi/services/endpoints_client.rb +24 -8
  336. data/lib/ngrokapi/services/secrets_client.rb +246 -0
  337. data/lib/ngrokapi/services/vaults_client.rb +234 -0
  338. data/lib/ngrokapi/version.rb +1 -1
  339. data/spec/ngrokapi/client_spec.rb +12 -0
  340. data/spec/ngrokapi/models/endpoint_spec.rb +4 -1
  341. data/spec/ngrokapi/models/secret_spec.rb +30 -0
  342. data/spec/ngrokapi/models/vault_spec.rb +47 -0
  343. data/spec/ngrokapi/services/endpoints_client_spec.rb +12 -4
  344. data/spec/ngrokapi/services/secrets_client_spec.rb +198 -0
  345. data/spec/ngrokapi/services/vaults_client_spec.rb +186 -0
  346. data/spec/spec_helper.rb +117 -0
  347. metadata +18 -5
@@ -100,9 +100,9 @@
100
100
  </div>
101
101
 
102
102
  <div id="footer">
103
- Generated on Thu Oct 24 20:57:22 2024 by
103
+ Generated on Thu Aug 14 22:44:14 2025 by
104
104
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
105
- 0.9.36 (ruby-3.3.5).
105
+ 0.9.36 (ruby-3.3.8).
106
106
  </div>
107
107
 
108
108
  </div>
@@ -159,6 +159,15 @@ module NgrokAPI
159
159
  @_reserved_domains ||= NgrokAPI::Services::ReservedDomainsClient.new(client: @client)
160
160
  end
161
161
 
162
+ ##
163
+ # Secrets is an api service for securely storing and managing sensitive data such
164
+ # as secrets, credentials, and tokens.
165
+ #
166
+ # @return [NgrokAPI::Services::SecretsClient]
167
+ def secrets
168
+ @_secrets ||= NgrokAPI::Services::SecretsClient.new(client: @client)
169
+ end
170
+
162
171
  ##
163
172
  # An SSH Certificate Authority is a pair of an SSH Certificate and its private
164
173
  # key that can be used to sign other SSH host and user certificates.
@@ -218,6 +227,15 @@ module NgrokAPI
218
227
  @_tunnels ||= NgrokAPI::Services::TunnelsClient.new(client: @client)
219
228
  end
220
229
 
230
+ ##
231
+ # Vaults is an api service for securely storing and managing sensitive data such
232
+ # as secrets, credentials, and tokens.
233
+ #
234
+ # @return [NgrokAPI::Services::VaultsClient]
235
+ def vaults
236
+ @_vaults ||= NgrokAPI::Services::VaultsClient.new(client: @client)
237
+ end
238
+
221
239
  def backends
222
240
  ns = OpenStruct.new
223
241
  ns.failover = NgrokAPI::Services::FailoverBackendsClient.new(client: @client)
@@ -27,15 +27,15 @@ module NgrokAPI
27
27
  :tunnel,
28
28
  :edge,
29
29
  :upstream_url,
30
- :upstream_proto,
30
+ :upstream_protocol,
31
31
  :url,
32
32
  :principal,
33
- :principal_id,
34
33
  :traffic_policy,
35
34
  :bindings,
36
35
  :tunnel_session,
37
36
  :uri,
38
- :name
37
+ :name,
38
+ :pooling_enabled
39
39
 
40
40
  def initialize(client: nil, attrs: {})
41
41
  @client = client
@@ -60,10 +60,9 @@ module NgrokAPI
60
60
  @tunnel = @attrs['tunnel']
61
61
  @edge = @attrs['edge']
62
62
  @upstream_url = @attrs['upstream_url']
63
- @upstream_proto = @attrs['upstream_proto']
63
+ @upstream_protocol = @attrs['upstream_protocol']
64
64
  @url = @attrs['url']
65
65
  @principal = @attrs['principal']
66
- @principal_id = @attrs['principal_id']
67
66
  @traffic_policy = @attrs['traffic_policy']
68
67
  @bindings = @attrs['bindings']
69
68
  @tunnel_session = @attrs['tunnel_session']
@@ -71,6 +70,7 @@ module NgrokAPI
71
70
  @uri = URI(@attrs['uri'])
72
71
  end
73
72
  @name = @attrs['name']
73
+ @pooling_enabled = @attrs['pooling_enabled']
74
74
  end
75
75
 
76
76
  def ==(other)
@@ -94,20 +94,23 @@ module NgrokAPI
94
94
  traffic_policy: nil,
95
95
  description: nil,
96
96
  metadata: nil,
97
- bindings: nil
97
+ bindings: nil,
98
+ pooling_enabled: False
98
99
  )
99
100
  @url = url if url
100
101
  @traffic_policy = traffic_policy if traffic_policy
101
102
  @description = description if description
102
103
  @metadata = metadata if metadata
103
104
  @bindings = bindings if bindings
105
+ @pooling_enabled = pooling_enabled if pooling_enabled
104
106
  @client.update(
105
107
  id: @id,
106
108
  url: url,
107
109
  traffic_policy: traffic_policy,
108
110
  description: description,
109
111
  metadata: metadata,
110
- bindings: bindings
112
+ bindings: bindings,
113
+ pooling_enabled: pooling_enabled
111
114
  )
112
115
  end
113
116
 
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
5
+ require 'uri'
6
+
7
+ module NgrokAPI
8
+ module Models
9
+ class Secret
10
+ attr_reader :client,
11
+ :attrs,
12
+ :id,
13
+ :uri,
14
+ :created_at,
15
+ :updated_at,
16
+ :name,
17
+ :description,
18
+ :metadata,
19
+ :created_by,
20
+ :last_updated_by,
21
+ :vault
22
+
23
+ def initialize(client: nil, attrs: {})
24
+ @client = client
25
+ @attrs = attrs
26
+ @id = @attrs['id']
27
+ unless @attrs['uri'].nil?
28
+ @uri = URI(@attrs['uri'])
29
+ end
30
+ @created_at = @attrs['created_at']
31
+ @updated_at = @attrs['updated_at']
32
+ @name = @attrs['name']
33
+ @description = @attrs['description']
34
+ @metadata = @attrs['metadata']
35
+ @created_by = @attrs['created_by']
36
+ @last_updated_by = @attrs['last_updated_by']
37
+ @vault = @attrs['vault']
38
+ end
39
+
40
+ def ==(other)
41
+ @attrs == other.attrs
42
+ end
43
+
44
+ def to_s
45
+ @attrs.to_s
46
+ end
47
+
48
+ def to_h
49
+ @attrs.to_h
50
+ end
51
+
52
+ ##
53
+ # Delete a Secret
54
+ #
55
+ # https://ngrok.com/docs/api#api-secrets-delete
56
+ def delete
57
+ @client.delete(
58
+ id: @id
59
+ )
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,81 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
5
+ require 'uri'
6
+
7
+ module NgrokAPI
8
+ module Models
9
+ class Vault
10
+ attr_reader :client,
11
+ :attrs,
12
+ :id,
13
+ :uri,
14
+ :created_at,
15
+ :updated_at,
16
+ :name,
17
+ :description,
18
+ :metadata,
19
+ :created_by,
20
+ :last_updated_by
21
+
22
+ def initialize(client: nil, attrs: {})
23
+ @client = client
24
+ @attrs = attrs
25
+ @id = @attrs['id']
26
+ unless @attrs['uri'].nil?
27
+ @uri = URI(@attrs['uri'])
28
+ end
29
+ @created_at = @attrs['created_at']
30
+ @updated_at = @attrs['updated_at']
31
+ @name = @attrs['name']
32
+ @description = @attrs['description']
33
+ @metadata = @attrs['metadata']
34
+ @created_by = @attrs['created_by']
35
+ @last_updated_by = @attrs['last_updated_by']
36
+ end
37
+
38
+ def ==(other)
39
+ @attrs == other.attrs
40
+ end
41
+
42
+ def to_s
43
+ @attrs.to_s
44
+ end
45
+
46
+ def to_h
47
+ @attrs.to_h
48
+ end
49
+
50
+ ##
51
+ # Update an existing Vault by ID
52
+ #
53
+ # https://ngrok.com/docs/api#api-vaults-update
54
+ def update(
55
+ name: nil,
56
+ metadata: nil,
57
+ description: nil
58
+ )
59
+ @name = name if name
60
+ @metadata = metadata if metadata
61
+ @description = description if description
62
+ @client.update(
63
+ id: @id,
64
+ name: name,
65
+ metadata: metadata,
66
+ description: description
67
+ )
68
+ end
69
+
70
+ ##
71
+ # Delete a Vault
72
+ #
73
+ # https://ngrok.com/docs/api#api-vaults-delete
74
+ def delete
75
+ @client.delete(
76
+ id: @id
77
+ )
78
+ end
79
+ end
80
+ end
81
+ end
@@ -26,15 +26,16 @@ module NgrokAPI
26
26
  # Create an endpoint, currently available only for cloud endpoints
27
27
  #
28
28
  # @param [string] url the url of the endpoint
29
- # @param [string] type whether the endpoint is ``ephemeral`` (served directly by an agent-initiated tunnel) or ``edge`` (served by an edge) or ``cloud (represents a cloud endpoint)``
29
+ # @param [string] type Type of endpoint. Only 'cloud' is currently supported (represents a cloud endpoint). Defaults to 'cloud' if not specified.
30
30
  # @param [string] traffic_policy The traffic policy attached to this endpoint
31
31
  # @param [string] description user-supplied description of the associated tunnel
32
32
  # @param [string] metadata user-supplied metadata of the associated tunnel or edge object
33
33
  # @param [List<string>] bindings the bindings associated with this endpoint
34
+ # @param [boolean] pooling_enabled
34
35
  # @return [NgrokAPI::Models::Endpoint] result from the API request
35
36
  #
36
37
  # https://ngrok.com/docs/api#api-endpoints-create
37
- def create(url: "", type: "", traffic_policy: "", description: nil, metadata: nil, bindings: nil)
38
+ def create(url:, type:, traffic_policy:, description: nil, metadata: nil, bindings: nil, pooling_enabled: False)
38
39
  path = '/endpoints'
39
40
  replacements = {
40
41
  }
@@ -45,6 +46,7 @@ module NgrokAPI
45
46
  data[:description] = description if description
46
47
  data[:metadata] = metadata if metadata
47
48
  data[:bindings] = bindings if bindings
49
+ data[:pooling_enabled] = pooling_enabled if pooling_enabled
48
50
  result = @client.post(path % replacements, data: data)
49
51
  NgrokAPI::Models::Endpoint.new(client: self, attrs: result)
50
52
  end
@@ -54,15 +56,16 @@ module NgrokAPI
54
56
  # Throws an exception if API error.
55
57
  #
56
58
  # @param [string] url the url of the endpoint
57
- # @param [string] type whether the endpoint is ``ephemeral`` (served directly by an agent-initiated tunnel) or ``edge`` (served by an edge) or ``cloud (represents a cloud endpoint)``
59
+ # @param [string] type Type of endpoint. Only 'cloud' is currently supported (represents a cloud endpoint). Defaults to 'cloud' if not specified.
58
60
  # @param [string] traffic_policy The traffic policy attached to this endpoint
59
61
  # @param [string] description user-supplied description of the associated tunnel
60
62
  # @param [string] metadata user-supplied metadata of the associated tunnel or edge object
61
63
  # @param [List<string>] bindings the bindings associated with this endpoint
64
+ # @param [boolean] pooling_enabled
62
65
  # @return [NgrokAPI::Models::Endpoint] result from the API request
63
66
  #
64
67
  # https://ngrok.com/docs/api#api-endpoints-create
65
- def create!(url: "", type: "", traffic_policy: "", description: nil, metadata: nil, bindings: nil)
68
+ def create!(url:, type:, traffic_policy:, description: nil, metadata: nil, bindings: nil, pooling_enabled: False)
66
69
  path = '/endpoints'
67
70
  replacements = {
68
71
  }
@@ -73,6 +76,7 @@ module NgrokAPI
73
76
  data[:description] = description if description
74
77
  data[:metadata] = metadata if metadata
75
78
  data[:bindings] = bindings if bindings
79
+ data[:pooling_enabled] = pooling_enabled if pooling_enabled
76
80
  result = @client.post(path % replacements, data: data, danger: true)
77
81
  NgrokAPI::Models::Endpoint.new(client: self, attrs: result)
78
82
  end
@@ -82,14 +86,18 @@ module NgrokAPI
82
86
  #
83
87
  # @param [string] before_id
84
88
  # @param [string] limit
89
+ # @param [List<string>] ids
90
+ # @param [List<string>] urls
85
91
  # @param [string] url optional and mutually exclusive from before_id and limit
86
92
  # @return [NgrokAPI::Models::Listable] result from the API request
87
93
  #
88
94
  # https://ngrok.com/docs/api#api-endpoints-list
89
- def list(before_id: nil, limit: nil, url: nil)
95
+ def list(before_id: nil, limit: nil, ids: [], urls: [], url: nil)
90
96
  result = @client.list(
91
97
  before_id: before_id,
92
98
  limit: limit,
99
+ ids: ids,
100
+ urls: urls,
93
101
  url: url,
94
102
  path: PATH
95
103
  )
@@ -108,14 +116,18 @@ module NgrokAPI
108
116
  #
109
117
  # @param [string] before_id
110
118
  # @param [string] limit
119
+ # @param [List<string>] ids
120
+ # @param [List<string>] urls
111
121
  # @param [string] url optional and mutually exclusive from before_id and limit
112
122
  # @return [NgrokAPI::Models::Listable] result from the API request
113
123
  #
114
124
  # https://ngrok.com/docs/api#api-endpoints-list
115
- def list!(before_id: nil, limit: nil, url: nil)
125
+ def list!(before_id: nil, limit: nil, ids: [], urls: [], url: nil)
116
126
  result = @client.list(
117
127
  before_id: before_id,
118
128
  limit: limit,
129
+ ids: ids,
130
+ urls: urls,
119
131
  danger: true,
120
132
  url: url,
121
133
  path: PATH
@@ -174,10 +186,11 @@ module NgrokAPI
174
186
  # @param [string] description user-supplied description of the associated tunnel
175
187
  # @param [string] metadata user-supplied metadata of the associated tunnel or edge object
176
188
  # @param [List<string>] bindings the bindings associated with this endpoint
189
+ # @param [boolean] pooling_enabled
177
190
  # @return [NgrokAPI::Models::Endpoint] result from the API request
178
191
  #
179
192
  # https://ngrok.com/docs/api#api-endpoints-update
180
- def update(id: "", url: nil, traffic_policy: nil, description: nil, metadata: nil, bindings: nil)
193
+ def update(id: "", url: nil, traffic_policy: nil, description: nil, metadata: nil, bindings: nil, pooling_enabled: False)
181
194
  path = '/endpoints/%{id}'
182
195
  replacements = {
183
196
  id: id,
@@ -188,6 +201,7 @@ module NgrokAPI
188
201
  data[:description] = description if description
189
202
  data[:metadata] = metadata if metadata
190
203
  data[:bindings] = bindings if bindings
204
+ data[:pooling_enabled] = pooling_enabled if pooling_enabled
191
205
  result = @client.patch(path % replacements, data: data)
192
206
  NgrokAPI::Models::Endpoint.new(client: self, attrs: result)
193
207
  end
@@ -202,10 +216,11 @@ module NgrokAPI
202
216
  # @param [string] description user-supplied description of the associated tunnel
203
217
  # @param [string] metadata user-supplied metadata of the associated tunnel or edge object
204
218
  # @param [List<string>] bindings the bindings associated with this endpoint
219
+ # @param [boolean] pooling_enabled
205
220
  # @return [NgrokAPI::Models::Endpoint] result from the API request
206
221
  #
207
222
  # https://ngrok.com/docs/api#api-endpoints-update
208
- def update!(id: "", url: nil, traffic_policy: nil, description: nil, metadata: nil, bindings: nil)
223
+ def update!(id: "", url: nil, traffic_policy: nil, description: nil, metadata: nil, bindings: nil, pooling_enabled: False)
209
224
  path = '/endpoints/%{id}'
210
225
  replacements = {
211
226
  id: id,
@@ -216,6 +231,7 @@ module NgrokAPI
216
231
  data[:description] = description if description
217
232
  data[:metadata] = metadata if metadata
218
233
  data[:bindings] = bindings if bindings
234
+ data[:pooling_enabled] = pooling_enabled if pooling_enabled
219
235
  result = @client.patch(path % replacements, data: data, danger: true)
220
236
  NgrokAPI::Models::Endpoint.new(client: self, attrs: result)
221
237
  end
@@ -0,0 +1,246 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Code generated for API Clients. DO NOT EDIT.
4
+
5
+ module NgrokAPI
6
+ module Services
7
+ ##
8
+ # Secrets is an api service for securely storing and managing sensitive data such
9
+ # as secrets, credentials, and tokens.
10
+ #
11
+ # https://ngrok.com/docs/api#api-secrets
12
+ class SecretsClient
13
+ # The API path for the requests
14
+ PATH = '/vault_secrets'
15
+ # The List Property from the resulting API for list calls
16
+ LIST_PROPERTY = 'secrets'
17
+
18
+ attr_reader :client
19
+
20
+ def initialize(client:)
21
+ @client = client
22
+ end
23
+
24
+ ##
25
+ # Create a new Secret
26
+ #
27
+ # @param [string] name Name of secret
28
+ # @param [string] value Value of secret
29
+ # @param [string] metadata Arbitrary user-defined metadata for this Secret
30
+ # @param [string] description description of Secret
31
+ # @param [string] vault_id unique identifier of the referenced vault
32
+ # @return [NgrokAPI::Models::Secret] result from the API request
33
+ #
34
+ # https://ngrok.com/docs/api#api-secrets-create
35
+ def create(name: "", value: "", metadata: "", description: "", vault_id:)
36
+ path = '/vault_secrets'
37
+ replacements = {
38
+ }
39
+ data = {}
40
+ data[:name] = name if name
41
+ data[:value] = value if value
42
+ data[:metadata] = metadata if metadata
43
+ data[:description] = description if description
44
+ data[:vault_id] = vault_id if vault_id
45
+ result = @client.post(path % replacements, data: data)
46
+ NgrokAPI::Models::Secret.new(client: self, attrs: result)
47
+ end
48
+
49
+ ##
50
+ # Create a new Secret
51
+ # Throws an exception if API error.
52
+ #
53
+ # @param [string] name Name of secret
54
+ # @param [string] value Value of secret
55
+ # @param [string] metadata Arbitrary user-defined metadata for this Secret
56
+ # @param [string] description description of Secret
57
+ # @param [string] vault_id unique identifier of the referenced vault
58
+ # @return [NgrokAPI::Models::Secret] result from the API request
59
+ #
60
+ # https://ngrok.com/docs/api#api-secrets-create
61
+ def create!(name: "", value: "", metadata: "", description: "", vault_id:)
62
+ path = '/vault_secrets'
63
+ replacements = {
64
+ }
65
+ data = {}
66
+ data[:name] = name if name
67
+ data[:value] = value if value
68
+ data[:metadata] = metadata if metadata
69
+ data[:description] = description if description
70
+ data[:vault_id] = vault_id if vault_id
71
+ result = @client.post(path % replacements, data: data, danger: true)
72
+ NgrokAPI::Models::Secret.new(client: self, attrs: result)
73
+ end
74
+
75
+ ##
76
+ # Update an existing Secret by ID
77
+ #
78
+ # @param [string] id identifier for Secret
79
+ # @param [string] name Name of secret
80
+ # @param [string] value Value of secret
81
+ # @param [string] metadata Arbitrary user-defined metadata for this Secret
82
+ # @param [string] description description of Secret
83
+ # @return [NgrokAPI::Models::Secret] result from the API request
84
+ #
85
+ # https://ngrok.com/docs/api#api-secrets-update
86
+ def update(id: "", name: nil, value: nil, metadata: nil, description: nil)
87
+ path = '/vault_secrets/%{id}'
88
+ replacements = {
89
+ id: id,
90
+ }
91
+ data = {}
92
+ data[:name] = name if name
93
+ data[:value] = value if value
94
+ data[:metadata] = metadata if metadata
95
+ data[:description] = description if description
96
+ result = @client.patch(path % replacements, data: data)
97
+ NgrokAPI::Models::Secret.new(client: self, attrs: result)
98
+ end
99
+
100
+ ##
101
+ # Update an existing Secret by ID
102
+ # Throws an exception if API error.
103
+ #
104
+ # @param [string] id identifier for Secret
105
+ # @param [string] name Name of secret
106
+ # @param [string] value Value of secret
107
+ # @param [string] metadata Arbitrary user-defined metadata for this Secret
108
+ # @param [string] description description of Secret
109
+ # @return [NgrokAPI::Models::Secret] result from the API request
110
+ #
111
+ # https://ngrok.com/docs/api#api-secrets-update
112
+ def update!(id: "", name: nil, value: nil, metadata: nil, description: nil)
113
+ path = '/vault_secrets/%{id}'
114
+ replacements = {
115
+ id: id,
116
+ }
117
+ data = {}
118
+ data[:name] = name if name
119
+ data[:value] = value if value
120
+ data[:metadata] = metadata if metadata
121
+ data[:description] = description if description
122
+ result = @client.patch(path % replacements, data: data, danger: true)
123
+ NgrokAPI::Models::Secret.new(client: self, attrs: result)
124
+ end
125
+
126
+ ##
127
+ # Delete a Secret
128
+ #
129
+ # @param [string] id a resource identifier
130
+ # @return [NgrokAPI::Models::Empty] result from the API request
131
+ #
132
+ # https://ngrok.com/docs/api#api-secrets-delete
133
+ def delete(id: "")
134
+ path = '/vault_secrets/%{id}'
135
+ replacements = {
136
+ id: id,
137
+ }
138
+ @client.delete(path % replacements)
139
+ end
140
+
141
+ ##
142
+ # Delete a Secret
143
+ # Throws an exception if API error.
144
+ #
145
+ # @param [string] id a resource identifier
146
+ # @return [NgrokAPI::Models::Empty] result from the API request
147
+ #
148
+ # https://ngrok.com/docs/api#api-secrets-delete
149
+ def delete!(id: "")
150
+ path = '/vault_secrets/%{id}'
151
+ replacements = {
152
+ id: id,
153
+ }
154
+ @client.delete(path % replacements, danger: true)
155
+ end
156
+
157
+ ##
158
+ # Get a Secret by ID
159
+ #
160
+ # @param [string] id a resource identifier
161
+ # @return [NgrokAPI::Models::Secret] result from the API request
162
+ #
163
+ # https://ngrok.com/docs/api#api-secrets-get
164
+ def get(id: "")
165
+ path = '/vault_secrets/%{id}'
166
+ replacements = {
167
+ id: id,
168
+ }
169
+ data = {}
170
+ result = @client.get(path % replacements, data: data)
171
+ NgrokAPI::Models::Secret.new(client: self, attrs: result)
172
+ end
173
+
174
+ ##
175
+ # Get a Secret by ID
176
+ # Throws an exception if API error.
177
+ #
178
+ # @param [string] id a resource identifier
179
+ # @return [NgrokAPI::Models::Secret] result from the API request
180
+ #
181
+ # https://ngrok.com/docs/api#api-secrets-get
182
+ def get!(id: "")
183
+ path = '/vault_secrets/%{id}'
184
+ replacements = {
185
+ id: id,
186
+ }
187
+ data = {}
188
+ result = @client.get(path % replacements, data: data, danger: true)
189
+ NgrokAPI::Models::Secret.new(client: self, attrs: result)
190
+ end
191
+
192
+ ##
193
+ # List all Secrets owned by account
194
+ #
195
+ # @param [string] before_id
196
+ # @param [string] limit
197
+ # @param [string] url optional and mutually exclusive from before_id and limit
198
+ # @return [NgrokAPI::Models::Listable] result from the API request
199
+ #
200
+ # https://ngrok.com/docs/api#api-secrets-list
201
+ def list(before_id: nil, limit: nil, url: nil)
202
+ result = @client.list(
203
+ before_id: before_id,
204
+ limit: limit,
205
+ url: url,
206
+ path: PATH
207
+ )
208
+
209
+ NgrokAPI::Models::Listable.new(
210
+ client: self,
211
+ attrs: result,
212
+ list_property: LIST_PROPERTY,
213
+ klass: NgrokAPI::Models::Secret
214
+ )
215
+ end
216
+
217
+ ##
218
+ # List all Secrets owned by account
219
+ # Throws an exception if API error.
220
+ #
221
+ # @param [string] before_id
222
+ # @param [string] limit
223
+ # @param [string] url optional and mutually exclusive from before_id and limit
224
+ # @return [NgrokAPI::Models::Listable] result from the API request
225
+ #
226
+ # https://ngrok.com/docs/api#api-secrets-list
227
+ def list!(before_id: nil, limit: nil, url: nil)
228
+ result = @client.list(
229
+ before_id: before_id,
230
+ limit: limit,
231
+ danger: true,
232
+ url: url,
233
+ path: PATH
234
+ )
235
+
236
+ NgrokAPI::Models::Listable.new(
237
+ client: self,
238
+ attrs: result,
239
+ list_property: LIST_PROPERTY,
240
+ klass: NgrokAPI::Models::Secret,
241
+ danger: true
242
+ )
243
+ end
244
+ end
245
+ end
246
+ end