ngrok-api 0.9.0 → 0.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +1 -1
- data/doc/.gitkeep +0 -0
- data/doc/NgrokAPI/Client.html +1499 -125
- data/doc/NgrokAPI/Error.html +1 -1
- data/doc/NgrokAPI/Errors/NotFoundError.html +1 -1
- data/doc/NgrokAPI/Errors.html +1 -1
- data/doc/NgrokAPI/HttpClient.html +1 -1
- data/doc/NgrokAPI/Models/{ApiKey.html → APIKey.html} +108 -177
- data/doc/NgrokAPI/Models/AWSAuth.html +617 -0
- data/doc/NgrokAPI/Models/AWSCredentials.html +617 -0
- data/doc/NgrokAPI/Models/AWSRole.html +543 -0
- data/doc/NgrokAPI/Models/AbuseReport.html +987 -0
- data/doc/NgrokAPI/Models/AbuseReportHostname.html +617 -0
- data/doc/NgrokAPI/Models/CertificateAuthority.html +1439 -0
- data/doc/NgrokAPI/Models/Credential.html +1149 -0
- data/doc/NgrokAPI/Models/EndpointCircuitBreaker.html +913 -0
- data/doc/NgrokAPI/Models/EndpointCompression.html +543 -0
- data/doc/NgrokAPI/Models/EndpointConfiguration.html +1321 -510
- data/doc/NgrokAPI/Models/EndpointIPPolicy.html +617 -0
- data/doc/NgrokAPI/Models/EndpointIPPolicyMutate.html +617 -0
- data/doc/NgrokAPI/Models/EndpointLogging.html +617 -0
- data/doc/NgrokAPI/Models/EndpointLoggingMutate.html +617 -0
- data/doc/NgrokAPI/Models/EndpointMutualTLS.html +617 -0
- data/doc/NgrokAPI/Models/EndpointMutualTLSMutate.html +617 -0
- data/doc/NgrokAPI/Models/EndpointOAuth.html +987 -0
- data/doc/NgrokAPI/Models/EndpointOAuthFacebook.html +839 -0
- data/doc/NgrokAPI/Models/EndpointOAuthGitHub.html +987 -0
- data/doc/NgrokAPI/Models/EndpointOAuthGoogle.html +839 -0
- data/doc/NgrokAPI/Models/EndpointOAuthMicrosoft.html +839 -0
- data/doc/NgrokAPI/Models/EndpointOAuthProvider.html +765 -0
- data/doc/NgrokAPI/Models/EndpointOIDC.html +1135 -0
- data/doc/NgrokAPI/Models/EndpointRequestHeaders.html +691 -0
- data/doc/NgrokAPI/Models/EndpointResponseHeaders.html +691 -0
- data/doc/NgrokAPI/Models/EndpointSAML.html +1653 -0
- data/doc/NgrokAPI/Models/EndpointSAMLMutate.html +1283 -0
- data/doc/NgrokAPI/Models/EndpointTLSTermination.html +691 -0
- data/doc/NgrokAPI/Models/EndpointWebhookValidation.html +691 -0
- data/doc/NgrokAPI/Models/EventDestination.html +1058 -0
- data/doc/NgrokAPI/Models/EventSource.html +765 -0
- data/doc/NgrokAPI/Models/EventSourceReplace.html +691 -0
- data/doc/NgrokAPI/Models/EventStream.html +1309 -0
- data/doc/NgrokAPI/Models/EventSubscription.html +1058 -0
- data/doc/NgrokAPI/Models/EventTarget.html +765 -0
- data/doc/NgrokAPI/Models/EventTargetCloudwatchLogs.html +617 -0
- data/doc/NgrokAPI/Models/EventTargetFirehose.html +617 -0
- data/doc/NgrokAPI/Models/EventTargetKinesis.html +617 -0
- data/doc/NgrokAPI/Models/IPPolicy.html +1069 -0
- data/doc/NgrokAPI/Models/IPPolicyRule.html +1149 -0
- data/doc/NgrokAPI/Models/IPRestriction.html +1132 -0
- data/doc/NgrokAPI/Models/{TlsCertificate.html → IPWhitelistEntry.html} +168 -163
- data/doc/NgrokAPI/Models/Listable.html +1 -1
- data/doc/NgrokAPI/Models/Ref.html +617 -0
- data/doc/NgrokAPI/Models/ReservedAddr.html +1132 -0
- data/doc/NgrokAPI/Models/ReservedDomain.html +111 -1107
- data/doc/NgrokAPI/Models/ReservedDomainCertJob.html +839 -0
- data/doc/NgrokAPI/Models/ReservedDomainCertNSTarget.html +617 -0
- data/doc/NgrokAPI/Models/ReservedDomainCertPolicy.html +617 -0
- data/doc/NgrokAPI/Models/ReservedDomainCertStatus.html +617 -0
- data/doc/NgrokAPI/Models/SSHCertificateAuthority.html +1143 -0
- data/doc/NgrokAPI/Models/SSHCredential.html +1149 -0
- data/doc/NgrokAPI/Models/SSHHostCertificate.html +1513 -0
- data/doc/NgrokAPI/Models/SSHUserCertificate.html +1661 -0
- data/doc/NgrokAPI/Models/TLSCertificate.html +2179 -0
- data/doc/NgrokAPI/Models/TLSCertificateSANs.html +617 -0
- data/doc/NgrokAPI/Models/Tunnel.html +987 -0
- data/doc/NgrokAPI/Models/TunnelSession.html +1209 -0
- data/doc/NgrokAPI/Models.html +4 -4
- data/doc/NgrokAPI/PagedIterator.html +1 -1
- data/{docs/NgrokAPI/Services/ApiKeysClient.html → doc/NgrokAPI/Services/APIKeysClient.html} +287 -151
- data/doc/NgrokAPI/Services/AbuseReportsClient.html +723 -0
- data/doc/NgrokAPI/Services/CertificateAuthoritiesClient.html +1489 -0
- data/doc/NgrokAPI/Services/CredentialsClient.html +1534 -0
- data/doc/NgrokAPI/Services/EndpointCircuitBreakerModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointCompressionModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointConfigurationsClient.html +473 -371
- data/doc/NgrokAPI/Services/EndpointIPPolicyModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointLoggingModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointMutualTLSModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointOAuthModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointOIDCModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointRequestHeadersModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointSAMLModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EndpointWebhookValidationModuleClient.html +1071 -0
- data/doc/NgrokAPI/Services/EventDestinationsClient.html +1609 -0
- data/doc/NgrokAPI/Services/EventSourcesClient.html +1348 -0
- data/doc/NgrokAPI/Services/EventStreamsClient.html +1691 -0
- data/doc/NgrokAPI/Services/EventSubscriptionsClient.html +1603 -0
- data/doc/NgrokAPI/Services/IPPoliciesClient.html +1488 -0
- data/doc/NgrokAPI/Services/IPPolicyRulesClient.html +1550 -0
- data/doc/NgrokAPI/Services/IPRestrictionsClient.html +1620 -0
- data/doc/NgrokAPI/Services/IPWhitelistClient.html +1488 -0
- data/doc/NgrokAPI/Services/ReservedAddrsClient.html +1793 -0
- data/doc/NgrokAPI/Services/ReservedDomainsClient.html +518 -333
- data/doc/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +1532 -0
- data/doc/NgrokAPI/Services/SSHCredentialsClient.html +1552 -0
- data/doc/NgrokAPI/Services/SSHHostCertificatesClient.html +1573 -0
- data/doc/NgrokAPI/Services/SSHUserCertificatesClient.html +1617 -0
- data/{docs/NgrokAPI/Services/TlsCertificatesClient.html → doc/NgrokAPI/Services/TLSCertificatesClient.html} +290 -198
- data/doc/NgrokAPI/Services/TunnelSessionsClient.html +1468 -0
- data/doc/NgrokAPI/Services/TunnelsClient.html +513 -0
- data/doc/NgrokAPI/Services.html +4 -4
- data/doc/NgrokAPI.html +3 -3
- data/doc/_index.html +624 -28
- data/doc/class_list.html +1 -1
- data/doc/file.README.html +1 -1
- data/doc/index.html +1 -1
- data/doc/method_list.html +7318 -286
- data/doc/top-level-namespace.html +1 -1
- data/docs/.gitkeep +0 -0
- data/docs/NgrokAPI/Client.html +1499 -125
- data/docs/NgrokAPI/Error.html +1 -1
- data/docs/NgrokAPI/Errors/NotFoundError.html +1 -1
- data/docs/NgrokAPI/Errors.html +1 -1
- data/docs/NgrokAPI/HttpClient.html +1 -1
- data/docs/NgrokAPI/Models/{ApiKey.html → APIKey.html} +108 -177
- data/docs/NgrokAPI/Models/AWSAuth.html +617 -0
- data/docs/NgrokAPI/Models/AWSCredentials.html +617 -0
- data/docs/NgrokAPI/Models/AWSRole.html +543 -0
- data/docs/NgrokAPI/Models/AbuseReport.html +987 -0
- data/docs/NgrokAPI/Models/AbuseReportHostname.html +617 -0
- data/docs/NgrokAPI/Models/CertificateAuthority.html +1439 -0
- data/docs/NgrokAPI/Models/Credential.html +1149 -0
- data/docs/NgrokAPI/Models/EndpointCircuitBreaker.html +913 -0
- data/docs/NgrokAPI/Models/EndpointCompression.html +543 -0
- data/docs/NgrokAPI/Models/EndpointConfiguration.html +1321 -510
- data/docs/NgrokAPI/Models/EndpointIPPolicy.html +617 -0
- data/docs/NgrokAPI/Models/EndpointIPPolicyMutate.html +617 -0
- data/docs/NgrokAPI/Models/EndpointLogging.html +617 -0
- data/docs/NgrokAPI/Models/EndpointLoggingMutate.html +617 -0
- data/docs/NgrokAPI/Models/EndpointMutualTLS.html +617 -0
- data/docs/NgrokAPI/Models/EndpointMutualTLSMutate.html +617 -0
- data/docs/NgrokAPI/Models/EndpointOAuth.html +987 -0
- data/docs/NgrokAPI/Models/EndpointOAuthFacebook.html +839 -0
- data/docs/NgrokAPI/Models/EndpointOAuthGitHub.html +987 -0
- data/docs/NgrokAPI/Models/EndpointOAuthGoogle.html +839 -0
- data/docs/NgrokAPI/Models/EndpointOAuthMicrosoft.html +839 -0
- data/docs/NgrokAPI/Models/EndpointOAuthProvider.html +765 -0
- data/docs/NgrokAPI/Models/EndpointOIDC.html +1135 -0
- data/docs/NgrokAPI/Models/EndpointRequestHeaders.html +691 -0
- data/docs/NgrokAPI/Models/EndpointResponseHeaders.html +691 -0
- data/docs/NgrokAPI/Models/EndpointSAML.html +1653 -0
- data/docs/NgrokAPI/Models/EndpointSAMLMutate.html +1283 -0
- data/docs/NgrokAPI/Models/EndpointTLSTermination.html +691 -0
- data/docs/NgrokAPI/Models/EndpointWebhookValidation.html +691 -0
- data/docs/NgrokAPI/Models/EventDestination.html +1058 -0
- data/docs/NgrokAPI/Models/EventSource.html +765 -0
- data/docs/NgrokAPI/Models/EventSourceReplace.html +691 -0
- data/docs/NgrokAPI/Models/EventStream.html +1309 -0
- data/docs/NgrokAPI/Models/EventSubscription.html +1058 -0
- data/docs/NgrokAPI/Models/EventTarget.html +765 -0
- data/docs/NgrokAPI/Models/EventTargetCloudwatchLogs.html +617 -0
- data/docs/NgrokAPI/Models/EventTargetFirehose.html +617 -0
- data/docs/NgrokAPI/Models/EventTargetKinesis.html +617 -0
- data/docs/NgrokAPI/Models/IPPolicy.html +1069 -0
- data/docs/NgrokAPI/Models/IPPolicyRule.html +1149 -0
- data/docs/NgrokAPI/Models/IPRestriction.html +1132 -0
- data/docs/NgrokAPI/Models/{TlsCertificate.html → IPWhitelistEntry.html} +168 -163
- data/docs/NgrokAPI/Models/Listable.html +1 -1
- data/docs/NgrokAPI/Models/Ref.html +617 -0
- data/docs/NgrokAPI/Models/ReservedAddr.html +1132 -0
- data/docs/NgrokAPI/Models/ReservedDomain.html +111 -1107
- data/docs/NgrokAPI/Models/ReservedDomainCertJob.html +839 -0
- data/docs/NgrokAPI/Models/ReservedDomainCertNSTarget.html +617 -0
- data/docs/NgrokAPI/Models/ReservedDomainCertPolicy.html +617 -0
- data/docs/NgrokAPI/Models/ReservedDomainCertStatus.html +617 -0
- data/docs/NgrokAPI/Models/SSHCertificateAuthority.html +1143 -0
- data/docs/NgrokAPI/Models/SSHCredential.html +1149 -0
- data/docs/NgrokAPI/Models/SSHHostCertificate.html +1513 -0
- data/docs/NgrokAPI/Models/SSHUserCertificate.html +1661 -0
- data/docs/NgrokAPI/Models/TLSCertificate.html +2179 -0
- data/docs/NgrokAPI/Models/TLSCertificateSANs.html +617 -0
- data/docs/NgrokAPI/Models/Tunnel.html +987 -0
- data/docs/NgrokAPI/Models/TunnelSession.html +1209 -0
- data/docs/NgrokAPI/Models.html +4 -4
- data/docs/NgrokAPI/PagedIterator.html +1 -1
- data/{doc/NgrokAPI/Services/ApiKeysClient.html → docs/NgrokAPI/Services/APIKeysClient.html} +287 -151
- data/docs/NgrokAPI/Services/AbuseReportsClient.html +723 -0
- data/docs/NgrokAPI/Services/CertificateAuthoritiesClient.html +1489 -0
- data/docs/NgrokAPI/Services/CredentialsClient.html +1534 -0
- data/docs/NgrokAPI/Services/EndpointCircuitBreakerModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointCompressionModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointConfigurationsClient.html +473 -371
- data/docs/NgrokAPI/Services/EndpointIPPolicyModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointLoggingModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointMutualTLSModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointOAuthModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointOIDCModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointRequestHeadersModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointResponseHeadersModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointSAMLModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointTLSTerminationModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EndpointWebhookValidationModuleClient.html +1071 -0
- data/docs/NgrokAPI/Services/EventDestinationsClient.html +1609 -0
- data/docs/NgrokAPI/Services/EventSourcesClient.html +1348 -0
- data/docs/NgrokAPI/Services/EventStreamsClient.html +1691 -0
- data/docs/NgrokAPI/Services/EventSubscriptionsClient.html +1603 -0
- data/docs/NgrokAPI/Services/IPPoliciesClient.html +1488 -0
- data/docs/NgrokAPI/Services/IPPolicyRulesClient.html +1550 -0
- data/docs/NgrokAPI/Services/IPRestrictionsClient.html +1620 -0
- data/docs/NgrokAPI/Services/IPWhitelistClient.html +1488 -0
- data/docs/NgrokAPI/Services/ReservedAddrsClient.html +1793 -0
- data/docs/NgrokAPI/Services/ReservedDomainsClient.html +518 -333
- data/docs/NgrokAPI/Services/SSHCertificateAuthoritiesClient.html +1532 -0
- data/docs/NgrokAPI/Services/SSHCredentialsClient.html +1552 -0
- data/docs/NgrokAPI/Services/SSHHostCertificatesClient.html +1573 -0
- data/docs/NgrokAPI/Services/SSHUserCertificatesClient.html +1617 -0
- data/{doc/NgrokAPI/Services/TlsCertificatesClient.html → docs/NgrokAPI/Services/TLSCertificatesClient.html} +290 -198
- data/docs/NgrokAPI/Services/TunnelSessionsClient.html +1468 -0
- data/docs/NgrokAPI/Services/TunnelsClient.html +513 -0
- data/docs/NgrokAPI/Services.html +4 -4
- data/docs/NgrokAPI.html +3 -3
- data/docs/_index.html +624 -28
- data/docs/class_list.html +1 -1
- data/docs/file.README.html +1 -1
- data/docs/index.html +1 -1
- data/docs/method_list.html +7318 -286
- data/docs/top-level-namespace.html +1 -1
- data/lib/ngrokapi/client.rb +218 -49
- data/lib/ngrokapi/models/abuse_report.rb +37 -0
- data/lib/ngrokapi/models/abuse_report_hostname.rb +27 -0
- data/lib/ngrokapi/models/api_key.rb +62 -64
- data/lib/ngrokapi/models/aws_auth.rb +27 -0
- data/lib/ngrokapi/models/aws_credentials.rb +27 -0
- data/lib/ngrokapi/models/aws_role.rb +25 -0
- data/lib/ngrokapi/models/certificate_authority.rb +72 -0
- data/lib/ngrokapi/models/credential.rb +67 -0
- data/lib/ngrokapi/models/endpoint_circuit_breaker.rb +35 -0
- data/lib/ngrokapi/models/endpoint_compression.rb +25 -0
- data/lib/ngrokapi/models/endpoint_configuration.rb +130 -119
- data/lib/ngrokapi/models/endpoint_ip_policy.rb +27 -0
- data/lib/ngrokapi/models/endpoint_ip_policy_mutate.rb +27 -0
- data/lib/ngrokapi/models/endpoint_logging.rb +27 -0
- data/lib/ngrokapi/models/endpoint_logging_mutate.rb +27 -0
- data/lib/ngrokapi/models/endpoint_mutual_tls.rb +27 -0
- data/lib/ngrokapi/models/endpoint_mutual_tls_mutate.rb +27 -0
- data/lib/ngrokapi/models/endpoint_o_auth.rb +37 -0
- data/lib/ngrokapi/models/endpoint_o_auth_facebook.rb +33 -0
- data/lib/ngrokapi/models/endpoint_o_auth_git_hub.rb +37 -0
- data/lib/ngrokapi/models/endpoint_o_auth_google.rb +33 -0
- data/lib/ngrokapi/models/endpoint_o_auth_microsoft.rb +33 -0
- data/lib/ngrokapi/models/endpoint_o_auth_provider.rb +31 -0
- data/lib/ngrokapi/models/endpoint_oidc.rb +41 -0
- data/lib/ngrokapi/models/endpoint_request_headers.rb +29 -0
- data/lib/ngrokapi/models/endpoint_response_headers.rb +29 -0
- data/lib/ngrokapi/models/endpoint_saml.rb +55 -0
- data/lib/ngrokapi/models/endpoint_saml_mutate.rb +45 -0
- data/lib/ngrokapi/models/endpoint_tls_termination.rb +29 -0
- data/lib/ngrokapi/models/endpoint_webhook_validation.rb +29 -0
- data/lib/ngrokapi/models/event_destination.rb +49 -0
- data/lib/ngrokapi/models/event_source.rb +31 -0
- data/lib/ngrokapi/models/event_source_replace.rb +29 -0
- data/lib/ngrokapi/models/event_stream.rb +77 -0
- data/lib/ngrokapi/models/event_subscription.rb +47 -0
- data/lib/ngrokapi/models/event_target.rb +31 -0
- data/lib/ngrokapi/models/event_target_cloudwatch_logs.rb +27 -0
- data/lib/ngrokapi/models/event_target_firehose.rb +27 -0
- data/lib/ngrokapi/models/event_target_kinesis.rb +27 -0
- data/lib/ngrokapi/models/ip_policy.rb +64 -0
- data/lib/ngrokapi/models/ip_policy_rule.rb +67 -0
- data/lib/ngrokapi/models/ip_restriction.rb +49 -0
- data/lib/ngrokapi/models/ip_whitelist_entry.rb +62 -0
- data/lib/ngrokapi/models/ref.rb +27 -0
- data/lib/ngrokapi/models/reserved_addr.rb +49 -0
- data/lib/ngrokapi/models/reserved_domain.rb +59 -211
- data/lib/ngrokapi/models/reserved_domain_cert_job.rb +33 -0
- data/lib/ngrokapi/models/reserved_domain_cert_ns_target.rb +27 -0
- data/lib/ngrokapi/models/reserved_domain_cert_policy.rb +27 -0
- data/lib/ngrokapi/models/reserved_domain_cert_status.rb +27 -0
- data/lib/ngrokapi/models/ssh_certificate_authority.rb +64 -0
- data/lib/ngrokapi/models/ssh_credential.rb +67 -0
- data/lib/ngrokapi/models/ssh_host_certificate.rb +74 -0
- data/lib/ngrokapi/models/ssh_user_certificate.rb +78 -0
- data/lib/ngrokapi/models/tls_certificate.rb +92 -62
- data/lib/ngrokapi/models/tls_certificate_sa_ns.rb +27 -0
- data/lib/ngrokapi/models/tunnel.rb +37 -0
- data/lib/ngrokapi/models/tunnel_session.rb +43 -0
- data/lib/ngrokapi/services/.gitkeep +0 -0
- data/lib/ngrokapi/services/abuse_reports_client.rb +84 -0
- data/lib/ngrokapi/services/api_keys_client.rb +203 -144
- data/lib/ngrokapi/services/certificate_authorities_client.rb +204 -0
- data/lib/ngrokapi/services/credentials_client.rb +212 -0
- data/lib/ngrokapi/services/endpoint_circuit_breaker_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_compression_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_configurations_client.rb +324 -313
- data/lib/ngrokapi/services/endpoint_ip_policy_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_logging_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_mutual_tls_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_o_auth_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_oidc_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_request_headers_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_response_headers_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_saml_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_tls_termination_module_client.rb +122 -0
- data/lib/ngrokapi/services/endpoint_webhook_validation_module_client.rb +122 -0
- data/lib/ngrokapi/services/event_destinations_client.rb +222 -0
- data/lib/ngrokapi/services/event_sources_client.rb +177 -0
- data/lib/ngrokapi/services/event_streams_client.rb +226 -0
- data/lib/ngrokapi/services/event_subscriptions_client.rb +213 -0
- data/lib/ngrokapi/services/ip_policies_client.rb +208 -0
- data/lib/ngrokapi/services/ip_policy_rules_client.rb +210 -0
- data/lib/ngrokapi/services/ip_restrictions_client.rb +223 -0
- data/lib/ngrokapi/services/ip_whitelist_client.rb +202 -0
- data/lib/ngrokapi/services/reserved_addrs_client.rb +246 -0
- data/lib/ngrokapi/services/reserved_domains_client.rb +382 -313
- data/lib/ngrokapi/services/ssh_certificate_authorities_client.rb +207 -0
- data/lib/ngrokapi/services/ssh_credentials_client.rb +211 -0
- data/lib/ngrokapi/services/ssh_host_certificates_client.rb +214 -0
- data/lib/ngrokapi/services/ssh_user_certificates_client.rb +220 -0
- data/lib/ngrokapi/services/tls_certificates_client.rb +207 -161
- data/lib/ngrokapi/services/tunnel_sessions_client.rb +228 -0
- data/lib/ngrokapi/services/tunnels_client.rb +51 -0
- data/lib/ngrokapi/version.rb +1 -1
- data/spec/ngrokapi/client_spec.rb +139 -33
- data/spec/ngrokapi/models/abuse_report_hostname_spec.rb +21 -0
- data/spec/ngrokapi/models/abuse_report_spec.rb +21 -0
- data/spec/ngrokapi/models/api_key_spec.rb +42 -43
- data/spec/ngrokapi/models/aws_auth_spec.rb +21 -0
- data/spec/ngrokapi/models/aws_credentials_spec.rb +21 -0
- data/spec/ngrokapi/models/aws_role_spec.rb +21 -0
- data/spec/ngrokapi/models/certificate_authority_spec.rb +42 -0
- data/spec/ngrokapi/models/credential_spec.rb +45 -0
- data/spec/ngrokapi/models/endpoint_circuit_breaker_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_compression_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_configuration_spec.rb +78 -0
- data/spec/ngrokapi/models/endpoint_ip_policy_mutate_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_ip_policy_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_logging_mutate_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_logging_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_mutual_tls_mutate_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_mutual_tls_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_o_auth_facebook_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_o_auth_git_hub_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_o_auth_google_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_o_auth_microsoft_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_o_auth_provider_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_o_auth_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_oidc_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_request_headers_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_response_headers_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_saml_mutate_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_saml_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_tls_termination_spec.rb +21 -0
- data/spec/ngrokapi/models/endpoint_webhook_validation_spec.rb +21 -0
- data/spec/ngrokapi/models/event_destination_spec.rb +28 -0
- data/spec/ngrokapi/models/event_source_replace_spec.rb +21 -0
- data/spec/ngrokapi/models/event_source_spec.rb +21 -0
- data/spec/ngrokapi/models/event_stream_spec.rb +51 -0
- data/spec/ngrokapi/models/event_subscription_spec.rb +28 -0
- data/spec/ngrokapi/models/event_target_cloudwatch_logs_spec.rb +21 -0
- data/spec/ngrokapi/models/event_target_firehose_spec.rb +21 -0
- data/spec/ngrokapi/models/event_target_kinesis_spec.rb +21 -0
- data/spec/ngrokapi/models/event_target_spec.rb +21 -0
- data/spec/ngrokapi/models/ip_policy_rule_spec.rb +45 -0
- data/spec/ngrokapi/models/ip_policy_spec.rb +42 -0
- data/spec/ngrokapi/models/ip_restriction_spec.rb +28 -0
- data/spec/ngrokapi/models/ip_whitelist_entry_spec.rb +42 -0
- data/spec/ngrokapi/models/listable_spec.rb +4 -4
- data/spec/ngrokapi/models/ref_spec.rb +21 -0
- data/spec/ngrokapi/models/reserved_addr_spec.rb +28 -0
- data/spec/ngrokapi/models/reserved_domain_cert_job_spec.rb +21 -0
- data/spec/ngrokapi/models/reserved_domain_cert_ns_target_spec.rb +21 -0
- data/spec/ngrokapi/models/reserved_domain_cert_policy_spec.rb +21 -0
- data/spec/ngrokapi/models/reserved_domain_cert_status_spec.rb +21 -0
- data/spec/ngrokapi/models/reserved_domain_spec.rb +28 -100
- data/spec/ngrokapi/models/ssh_certificate_authority_spec.rb +42 -0
- data/spec/ngrokapi/models/ssh_credential_spec.rb +45 -0
- data/spec/ngrokapi/models/ssh_host_certificate_spec.rb +42 -0
- data/spec/ngrokapi/models/ssh_user_certificate_spec.rb +42 -0
- data/spec/ngrokapi/models/tls_certificate_sa_ns_spec.rb +21 -0
- data/spec/ngrokapi/models/tls_certificate_spec.rb +42 -0
- data/spec/ngrokapi/models/tunnel_session_spec.rb +21 -0
- data/spec/ngrokapi/models/tunnel_spec.rb +21 -0
- data/spec/ngrokapi/paged_iterator_spec.rb +5 -5
- data/spec/ngrokapi/services/.gitkeep +0 -0
- data/spec/ngrokapi/services/abuse_reports_client_spec.rb +67 -0
- data/spec/ngrokapi/services/api_keys_client_spec.rb +160 -127
- data/spec/ngrokapi/services/certificate_authorities_client_spec.rb +162 -0
- data/spec/ngrokapi/services/credentials_client_spec.rb +166 -0
- data/spec/ngrokapi/services/endpoint_circuit_breaker_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_compression_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_configurations_client_spec.rb +240 -0
- data/spec/ngrokapi/services/endpoint_ip_policy_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_logging_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_mutual_tls_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_o_auth_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_oidc_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_request_headers_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_response_headers_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_saml_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_tls_termination_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/endpoint_webhook_validation_module_client_spec.rb +127 -0
- data/spec/ngrokapi/services/event_destinations_client_spec.rb +175 -0
- data/spec/ngrokapi/services/event_sources_client_spec.rb +162 -0
- data/spec/ngrokapi/services/event_streams_client_spec.rb +180 -0
- data/spec/ngrokapi/services/event_subscriptions_client_spec.rb +172 -0
- data/spec/ngrokapi/services/ip_policies_client_spec.rb +162 -0
- data/spec/ngrokapi/services/ip_policy_rules_client_spec.rb +168 -0
- data/spec/ngrokapi/services/ip_restrictions_client_spec.rb +174 -0
- data/spec/ngrokapi/services/ip_whitelist_client_spec.rb +162 -0
- data/spec/ngrokapi/services/reserved_addrs_client_spec.rb +209 -0
- data/spec/ngrokapi/services/reserved_domains_client_spec.rb +352 -0
- data/spec/ngrokapi/services/ssh_certificate_authorities_client_spec.rb +166 -0
- data/spec/ngrokapi/services/ssh_credentials_client_spec.rb +168 -0
- data/spec/ngrokapi/services/ssh_host_certificates_client_spec.rb +170 -0
- data/spec/ngrokapi/services/ssh_user_certificates_client_spec.rb +174 -0
- data/spec/ngrokapi/services/tls_certificates_client_spec.rb +164 -0
- data/spec/ngrokapi/services/tunnel_sessions_client_spec.rb +184 -0
- data/spec/ngrokapi/services/tunnels_client_spec.rb +21 -0
- data/spec/spec_helper.rb +958 -0
- metadata +355 -10
@@ -0,0 +1,213 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module NgrokAPI
|
4
|
+
module Services
|
5
|
+
##
|
6
|
+
# https://ngrok.com/docs/api#api-event-subscriptions
|
7
|
+
class EventSubscriptionsClient
|
8
|
+
# The API path for the requests
|
9
|
+
PATH = '/event_subscriptions'
|
10
|
+
# The List Property from the resulting API for list calls
|
11
|
+
LIST_PROPERTY = 'event_subscriptions'
|
12
|
+
|
13
|
+
attr_reader :client
|
14
|
+
|
15
|
+
def initialize(client:)
|
16
|
+
@client = client
|
17
|
+
end
|
18
|
+
|
19
|
+
##
|
20
|
+
# Create an Event Subscription.
|
21
|
+
#
|
22
|
+
# @param [string] metadata Arbitrary customer supplied information intended to be machine readable. Optional, max 4096 chars.
|
23
|
+
# @param [string] description Arbitrary customer supplied information intended to be human readable. Optional, max 255 chars.
|
24
|
+
# @param [List<EventSourceReplace>] sources Sources containing the types for which this event subscription will trigger
|
25
|
+
# @param [List<string>] destination_ids A list of Event Destination IDs which should be used for this Event Stream. Event Streams are required to have at least one Event Destination.
|
26
|
+
# @return [NgrokAPI::Models::EventSubscription] result from the API request
|
27
|
+
#
|
28
|
+
# https://ngrok.com/docs/api#api-event-subscriptions-create
|
29
|
+
def create(
|
30
|
+
metadata: "",
|
31
|
+
description: "",
|
32
|
+
sources: [],
|
33
|
+
destination_ids: []
|
34
|
+
)
|
35
|
+
path = '/event_subscriptions'
|
36
|
+
replacements = {
|
37
|
+
}
|
38
|
+
data = {}
|
39
|
+
data[:metadata] = metadata if metadata
|
40
|
+
data[:description] = description if description
|
41
|
+
data[:sources] = sources if sources
|
42
|
+
data[:destination_ids] = destination_ids if destination_ids
|
43
|
+
result = @client.post(path % replacements, data: data)
|
44
|
+
NgrokAPI::Models::EventSubscription.new(client: self, result: result)
|
45
|
+
end
|
46
|
+
|
47
|
+
##
|
48
|
+
# Delete an Event Subscription.
|
49
|
+
#
|
50
|
+
# @param [string] id a resource identifier
|
51
|
+
# @return [NgrokAPI::Models::Empty] result from the API request
|
52
|
+
#
|
53
|
+
# https://ngrok.com/docs/api#api-event-subscriptions-delete
|
54
|
+
def delete(
|
55
|
+
id: ""
|
56
|
+
)
|
57
|
+
path = '/event_subscriptions/%{id}'
|
58
|
+
replacements = {
|
59
|
+
id: id,
|
60
|
+
}
|
61
|
+
@client.delete(path % replacements)
|
62
|
+
end
|
63
|
+
|
64
|
+
##
|
65
|
+
# Delete an Event Subscription.
|
66
|
+
# Throws an exception if API error.
|
67
|
+
#
|
68
|
+
# @param [string] id a resource identifier
|
69
|
+
# @return [NgrokAPI::Models::Empty] result from the API request
|
70
|
+
#
|
71
|
+
# https://ngrok.com/docs/api#api-event-subscriptions-delete
|
72
|
+
def delete!(
|
73
|
+
id: ""
|
74
|
+
)
|
75
|
+
path = '/event_subscriptions/%{id}'
|
76
|
+
replacements = {
|
77
|
+
id: id,
|
78
|
+
}
|
79
|
+
@client.delete(path % replacements, danger: true)
|
80
|
+
end
|
81
|
+
|
82
|
+
##
|
83
|
+
# Get an Event Subscription by ID.
|
84
|
+
#
|
85
|
+
# @param [string] id a resource identifier
|
86
|
+
# @return [NgrokAPI::Models::EventSubscription] result from the API request
|
87
|
+
#
|
88
|
+
# https://ngrok.com/docs/api#api-event-subscriptions-get
|
89
|
+
def get(
|
90
|
+
id: ""
|
91
|
+
)
|
92
|
+
path = '/event_subscriptions/%{id}'
|
93
|
+
replacements = {
|
94
|
+
id: id,
|
95
|
+
}
|
96
|
+
data = {}
|
97
|
+
result = @client.get(path % replacements, data: data)
|
98
|
+
NgrokAPI::Models::EventSubscription.new(client: self, result: result)
|
99
|
+
end
|
100
|
+
|
101
|
+
##
|
102
|
+
# Get an Event Subscription by ID.
|
103
|
+
# Throws an exception if API error.
|
104
|
+
#
|
105
|
+
# @param [string] id a resource identifier
|
106
|
+
# @return [NgrokAPI::Models::EventSubscription] result from the API request
|
107
|
+
#
|
108
|
+
# https://ngrok.com/docs/api#api-event-subscriptions-get
|
109
|
+
def get!(
|
110
|
+
id: ""
|
111
|
+
)
|
112
|
+
path = '/event_subscriptions/%{id}'
|
113
|
+
replacements = {
|
114
|
+
id: id,
|
115
|
+
}
|
116
|
+
data = {}
|
117
|
+
result = @client.get(path % replacements, data: data, danger: true)
|
118
|
+
NgrokAPI::Models::EventSubscription.new(client: self, result: result)
|
119
|
+
end
|
120
|
+
|
121
|
+
##
|
122
|
+
# List this Account's Event Subscriptions.
|
123
|
+
#
|
124
|
+
# @param [string] before_id
|
125
|
+
# @param [string] limit
|
126
|
+
# @param [string] url optional and mutually exclusive from before_id and limit
|
127
|
+
# @return [NgrokAPI::Models::Listable] result from the API request
|
128
|
+
#
|
129
|
+
# https://ngrok.com/docs/api#api-event-subscriptions-list
|
130
|
+
def list(
|
131
|
+
before_id: nil,
|
132
|
+
limit: nil,
|
133
|
+
url: nil
|
134
|
+
)
|
135
|
+
result = @client.list(
|
136
|
+
before_id: before_id,
|
137
|
+
limit: limit,
|
138
|
+
url: url,
|
139
|
+
path: PATH
|
140
|
+
)
|
141
|
+
NgrokAPI::Models::Listable.new(
|
142
|
+
client: self,
|
143
|
+
result: result,
|
144
|
+
list_property: LIST_PROPERTY,
|
145
|
+
klass: NgrokAPI::Models::EventSubscription
|
146
|
+
)
|
147
|
+
end
|
148
|
+
|
149
|
+
##
|
150
|
+
# Update an Event Subscription.
|
151
|
+
#
|
152
|
+
# @param [string] id Unique identifier for this Event Subscription.
|
153
|
+
# @param [string] metadata Arbitrary customer supplied information intended to be machine readable. Optional, max 4096 chars.
|
154
|
+
# @param [string] description Arbitrary customer supplied information intended to be human readable. Optional, max 255 chars.
|
155
|
+
# @param [List<EventSourceReplace>] sources Sources containing the types for which this event subscription will trigger
|
156
|
+
# @param [List<string>] destination_ids A list of Event Destination IDs which should be used for this Event Stream. Event Streams are required to have at least one Event Destination.
|
157
|
+
# @return [NgrokAPI::Models::EventSubscription] result from the API request
|
158
|
+
#
|
159
|
+
# https://ngrok.com/docs/api#api-event-subscriptions-update
|
160
|
+
def update(
|
161
|
+
id: "",
|
162
|
+
metadata: nil,
|
163
|
+
description: nil,
|
164
|
+
sources: nil,
|
165
|
+
destination_ids: nil
|
166
|
+
)
|
167
|
+
path = '/event_subscriptions/%{id}'
|
168
|
+
replacements = {
|
169
|
+
id: id,
|
170
|
+
}
|
171
|
+
data = {}
|
172
|
+
data[:metadata] = metadata if metadata
|
173
|
+
data[:description] = description if description
|
174
|
+
data[:sources] = sources if sources
|
175
|
+
data[:destination_ids] = destination_ids if destination_ids
|
176
|
+
result = @client.patch(path % replacements, data: data)
|
177
|
+
NgrokAPI::Models::EventSubscription.new(client: self, result: result)
|
178
|
+
end
|
179
|
+
|
180
|
+
##
|
181
|
+
# Update an Event Subscription.
|
182
|
+
# Throws an exception if API error.
|
183
|
+
#
|
184
|
+
# @param [string] id Unique identifier for this Event Subscription.
|
185
|
+
# @param [string] metadata Arbitrary customer supplied information intended to be machine readable. Optional, max 4096 chars.
|
186
|
+
# @param [string] description Arbitrary customer supplied information intended to be human readable. Optional, max 255 chars.
|
187
|
+
# @param [List<EventSourceReplace>] sources Sources containing the types for which this event subscription will trigger
|
188
|
+
# @param [List<string>] destination_ids A list of Event Destination IDs which should be used for this Event Stream. Event Streams are required to have at least one Event Destination.
|
189
|
+
# @return [NgrokAPI::Models::EventSubscription] result from the API request
|
190
|
+
#
|
191
|
+
# https://ngrok.com/docs/api#api-event-subscriptions-update
|
192
|
+
def update!(
|
193
|
+
id: "",
|
194
|
+
metadata: nil,
|
195
|
+
description: nil,
|
196
|
+
sources: nil,
|
197
|
+
destination_ids: nil
|
198
|
+
)
|
199
|
+
path = '/event_subscriptions/%{id}'
|
200
|
+
replacements = {
|
201
|
+
id: id,
|
202
|
+
}
|
203
|
+
data = {}
|
204
|
+
data[:metadata] = metadata if metadata
|
205
|
+
data[:description] = description if description
|
206
|
+
data[:sources] = sources if sources
|
207
|
+
data[:destination_ids] = destination_ids if destination_ids
|
208
|
+
result = @client.patch(path % replacements, data: data, danger: true)
|
209
|
+
NgrokAPI::Models::EventSubscription.new(client: self, result: result)
|
210
|
+
end
|
211
|
+
end
|
212
|
+
end
|
213
|
+
end
|
@@ -0,0 +1,208 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module NgrokAPI
|
4
|
+
module Services
|
5
|
+
##
|
6
|
+
# IP Policies are reusable groups of CIDR ranges with an allow or deny
|
7
|
+
# action. They can be attached to endpoints via the Endpoint Configuration IP
|
8
|
+
# Policy module. They can also be used with IP Restrictions to control source
|
9
|
+
# IP ranges that can start tunnel sessions and connect to the API and dashboard.
|
10
|
+
#
|
11
|
+
# https://ngrok.com/docs/api#api-ip-policies
|
12
|
+
class IPPoliciesClient
|
13
|
+
# The API path for the requests
|
14
|
+
PATH = '/ip_policies'
|
15
|
+
# The List Property from the resulting API for list calls
|
16
|
+
LIST_PROPERTY = 'ip_policies'
|
17
|
+
|
18
|
+
attr_reader :client
|
19
|
+
|
20
|
+
def initialize(client:)
|
21
|
+
@client = client
|
22
|
+
end
|
23
|
+
|
24
|
+
##
|
25
|
+
# Create a new IP policy. It will not apply to any traffic until you associate to
|
26
|
+
# a traffic source via an endpoint configuration or IP restriction.
|
27
|
+
#
|
28
|
+
# @param [string] description human-readable description of the source IPs of this IP policy. optional, max 255 bytes.
|
29
|
+
# @param [string] metadata arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes.
|
30
|
+
# @param [string] action the IP policy action. Supported values are ``allow`` or ``deny``
|
31
|
+
# @return [NgrokAPI::Models::IPPolicy] result from the API request
|
32
|
+
#
|
33
|
+
# https://ngrok.com/docs/api#api-ip-policies-create
|
34
|
+
def create(
|
35
|
+
description: "",
|
36
|
+
metadata: "",
|
37
|
+
action:
|
38
|
+
)
|
39
|
+
path = '/ip_policies'
|
40
|
+
replacements = {
|
41
|
+
}
|
42
|
+
data = {}
|
43
|
+
data[:description] = description if description
|
44
|
+
data[:metadata] = metadata if metadata
|
45
|
+
data[:action] = action if action
|
46
|
+
result = @client.post(path % replacements, data: data)
|
47
|
+
NgrokAPI::Models::IPPolicy.new(client: self, result: result)
|
48
|
+
end
|
49
|
+
|
50
|
+
##
|
51
|
+
# Delete an IP policy. If the IP policy is referenced by another object for the
|
52
|
+
# purposes of traffic restriction it will be treated as if the IP policy remains
|
53
|
+
# but has zero rules.
|
54
|
+
#
|
55
|
+
# @param [string] id a resource identifier
|
56
|
+
# @return [NgrokAPI::Models::Empty] result from the API request
|
57
|
+
#
|
58
|
+
# https://ngrok.com/docs/api#api-ip-policies-delete
|
59
|
+
def delete(
|
60
|
+
id: ""
|
61
|
+
)
|
62
|
+
path = '/ip_policies/%{id}'
|
63
|
+
replacements = {
|
64
|
+
id: id,
|
65
|
+
}
|
66
|
+
@client.delete(path % replacements)
|
67
|
+
end
|
68
|
+
|
69
|
+
##
|
70
|
+
# Delete an IP policy. If the IP policy is referenced by another object for the
|
71
|
+
# purposes of traffic restriction it will be treated as if the IP policy remains
|
72
|
+
# but has zero rules.
|
73
|
+
# Throws an exception if API error.
|
74
|
+
#
|
75
|
+
# @param [string] id a resource identifier
|
76
|
+
# @return [NgrokAPI::Models::Empty] result from the API request
|
77
|
+
#
|
78
|
+
# https://ngrok.com/docs/api#api-ip-policies-delete
|
79
|
+
def delete!(
|
80
|
+
id: ""
|
81
|
+
)
|
82
|
+
path = '/ip_policies/%{id}'
|
83
|
+
replacements = {
|
84
|
+
id: id,
|
85
|
+
}
|
86
|
+
@client.delete(path % replacements, danger: true)
|
87
|
+
end
|
88
|
+
|
89
|
+
##
|
90
|
+
# Get detailed information about an IP policy by ID.
|
91
|
+
#
|
92
|
+
# @param [string] id a resource identifier
|
93
|
+
# @return [NgrokAPI::Models::IPPolicy] result from the API request
|
94
|
+
#
|
95
|
+
# https://ngrok.com/docs/api#api-ip-policies-get
|
96
|
+
def get(
|
97
|
+
id: ""
|
98
|
+
)
|
99
|
+
path = '/ip_policies/%{id}'
|
100
|
+
replacements = {
|
101
|
+
id: id,
|
102
|
+
}
|
103
|
+
data = {}
|
104
|
+
result = @client.get(path % replacements, data: data)
|
105
|
+
NgrokAPI::Models::IPPolicy.new(client: self, result: result)
|
106
|
+
end
|
107
|
+
|
108
|
+
##
|
109
|
+
# Get detailed information about an IP policy by ID.
|
110
|
+
# Throws an exception if API error.
|
111
|
+
#
|
112
|
+
# @param [string] id a resource identifier
|
113
|
+
# @return [NgrokAPI::Models::IPPolicy] result from the API request
|
114
|
+
#
|
115
|
+
# https://ngrok.com/docs/api#api-ip-policies-get
|
116
|
+
def get!(
|
117
|
+
id: ""
|
118
|
+
)
|
119
|
+
path = '/ip_policies/%{id}'
|
120
|
+
replacements = {
|
121
|
+
id: id,
|
122
|
+
}
|
123
|
+
data = {}
|
124
|
+
result = @client.get(path % replacements, data: data, danger: true)
|
125
|
+
NgrokAPI::Models::IPPolicy.new(client: self, result: result)
|
126
|
+
end
|
127
|
+
|
128
|
+
##
|
129
|
+
# List all IP policies on this account
|
130
|
+
#
|
131
|
+
# @param [string] before_id
|
132
|
+
# @param [string] limit
|
133
|
+
# @param [string] url optional and mutually exclusive from before_id and limit
|
134
|
+
# @return [NgrokAPI::Models::Listable] result from the API request
|
135
|
+
#
|
136
|
+
# https://ngrok.com/docs/api#api-ip-policies-list
|
137
|
+
def list(
|
138
|
+
before_id: nil,
|
139
|
+
limit: nil,
|
140
|
+
url: nil
|
141
|
+
)
|
142
|
+
result = @client.list(
|
143
|
+
before_id: before_id,
|
144
|
+
limit: limit,
|
145
|
+
url: url,
|
146
|
+
path: PATH
|
147
|
+
)
|
148
|
+
NgrokAPI::Models::Listable.new(
|
149
|
+
client: self,
|
150
|
+
result: result,
|
151
|
+
list_property: LIST_PROPERTY,
|
152
|
+
klass: NgrokAPI::Models::IPPolicy
|
153
|
+
)
|
154
|
+
end
|
155
|
+
|
156
|
+
##
|
157
|
+
# Update attributes of an IP policy by ID
|
158
|
+
#
|
159
|
+
# @param [string] id
|
160
|
+
# @param [string] description human-readable description of the source IPs of this IP policy. optional, max 255 bytes.
|
161
|
+
# @param [string] metadata arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes.
|
162
|
+
# @return [NgrokAPI::Models::IPPolicy] result from the API request
|
163
|
+
#
|
164
|
+
# https://ngrok.com/docs/api#api-ip-policies-update
|
165
|
+
def update(
|
166
|
+
id: "",
|
167
|
+
description: nil,
|
168
|
+
metadata: nil
|
169
|
+
)
|
170
|
+
path = '/ip_policies/%{id}'
|
171
|
+
replacements = {
|
172
|
+
id: id,
|
173
|
+
}
|
174
|
+
data = {}
|
175
|
+
data[:description] = description if description
|
176
|
+
data[:metadata] = metadata if metadata
|
177
|
+
result = @client.patch(path % replacements, data: data)
|
178
|
+
NgrokAPI::Models::IPPolicy.new(client: self, result: result)
|
179
|
+
end
|
180
|
+
|
181
|
+
##
|
182
|
+
# Update attributes of an IP policy by ID
|
183
|
+
# Throws an exception if API error.
|
184
|
+
#
|
185
|
+
# @param [string] id
|
186
|
+
# @param [string] description human-readable description of the source IPs of this IP policy. optional, max 255 bytes.
|
187
|
+
# @param [string] metadata arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes.
|
188
|
+
# @return [NgrokAPI::Models::IPPolicy] result from the API request
|
189
|
+
#
|
190
|
+
# https://ngrok.com/docs/api#api-ip-policies-update
|
191
|
+
def update!(
|
192
|
+
id: "",
|
193
|
+
description: nil,
|
194
|
+
metadata: nil
|
195
|
+
)
|
196
|
+
path = '/ip_policies/%{id}'
|
197
|
+
replacements = {
|
198
|
+
id: id,
|
199
|
+
}
|
200
|
+
data = {}
|
201
|
+
data[:description] = description if description
|
202
|
+
data[:metadata] = metadata if metadata
|
203
|
+
result = @client.patch(path % replacements, data: data, danger: true)
|
204
|
+
NgrokAPI::Models::IPPolicy.new(client: self, result: result)
|
205
|
+
end
|
206
|
+
end
|
207
|
+
end
|
208
|
+
end
|
@@ -0,0 +1,210 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module NgrokAPI
|
4
|
+
module Services
|
5
|
+
##
|
6
|
+
# IP Policy Rules are the IPv4 or IPv6 CIDRs entries that
|
7
|
+
# make up an IP Policy.
|
8
|
+
#
|
9
|
+
# https://ngrok.com/docs/api#api-ip-policy-rules
|
10
|
+
class IPPolicyRulesClient
|
11
|
+
# The API path for the requests
|
12
|
+
PATH = '/ip_policy_rules'
|
13
|
+
# The List Property from the resulting API for list calls
|
14
|
+
LIST_PROPERTY = 'ip_policy_rules'
|
15
|
+
|
16
|
+
attr_reader :client
|
17
|
+
|
18
|
+
def initialize(client:)
|
19
|
+
@client = client
|
20
|
+
end
|
21
|
+
|
22
|
+
##
|
23
|
+
# Create a new IP policy rule attached to an IP Policy.
|
24
|
+
#
|
25
|
+
# @param [string] description human-readable description of the source IPs of this IP rule. optional, max 255 bytes.
|
26
|
+
# @param [string] metadata arbitrary user-defined machine-readable data of this IP policy rule. optional, max 4096 bytes.
|
27
|
+
# @param [string] cidr an IP or IP range specified in CIDR notation. IPv4 and IPv6 are both supported.
|
28
|
+
# @param [string] ip_policy_id ID of the IP policy this IP policy rule will be attached to
|
29
|
+
# @return [NgrokAPI::Models::IPPolicyRule] result from the API request
|
30
|
+
#
|
31
|
+
# https://ngrok.com/docs/api#api-ip-policy-rules-create
|
32
|
+
def create(
|
33
|
+
description: "",
|
34
|
+
metadata: "",
|
35
|
+
cidr:,
|
36
|
+
ip_policy_id:
|
37
|
+
)
|
38
|
+
path = '/ip_policy_rules'
|
39
|
+
replacements = {
|
40
|
+
}
|
41
|
+
data = {}
|
42
|
+
data[:description] = description if description
|
43
|
+
data[:metadata] = metadata if metadata
|
44
|
+
data[:cidr] = cidr if cidr
|
45
|
+
data[:ip_policy_id] = ip_policy_id if ip_policy_id
|
46
|
+
result = @client.post(path % replacements, data: data)
|
47
|
+
NgrokAPI::Models::IPPolicyRule.new(client: self, result: result)
|
48
|
+
end
|
49
|
+
|
50
|
+
##
|
51
|
+
# Delete an IP policy rule.
|
52
|
+
#
|
53
|
+
# @param [string] id a resource identifier
|
54
|
+
# @return [NgrokAPI::Models::Empty] result from the API request
|
55
|
+
#
|
56
|
+
# https://ngrok.com/docs/api#api-ip-policy-rules-delete
|
57
|
+
def delete(
|
58
|
+
id: ""
|
59
|
+
)
|
60
|
+
path = '/ip_policy_rules/%{id}'
|
61
|
+
replacements = {
|
62
|
+
id: id,
|
63
|
+
}
|
64
|
+
@client.delete(path % replacements)
|
65
|
+
end
|
66
|
+
|
67
|
+
##
|
68
|
+
# Delete an IP policy rule.
|
69
|
+
# Throws an exception if API error.
|
70
|
+
#
|
71
|
+
# @param [string] id a resource identifier
|
72
|
+
# @return [NgrokAPI::Models::Empty] result from the API request
|
73
|
+
#
|
74
|
+
# https://ngrok.com/docs/api#api-ip-policy-rules-delete
|
75
|
+
def delete!(
|
76
|
+
id: ""
|
77
|
+
)
|
78
|
+
path = '/ip_policy_rules/%{id}'
|
79
|
+
replacements = {
|
80
|
+
id: id,
|
81
|
+
}
|
82
|
+
@client.delete(path % replacements, danger: true)
|
83
|
+
end
|
84
|
+
|
85
|
+
##
|
86
|
+
# Get detailed information about an IP policy rule by ID.
|
87
|
+
#
|
88
|
+
# @param [string] id a resource identifier
|
89
|
+
# @return [NgrokAPI::Models::IPPolicyRule] result from the API request
|
90
|
+
#
|
91
|
+
# https://ngrok.com/docs/api#api-ip-policy-rules-get
|
92
|
+
def get(
|
93
|
+
id: ""
|
94
|
+
)
|
95
|
+
path = '/ip_policy_rules/%{id}'
|
96
|
+
replacements = {
|
97
|
+
id: id,
|
98
|
+
}
|
99
|
+
data = {}
|
100
|
+
result = @client.get(path % replacements, data: data)
|
101
|
+
NgrokAPI::Models::IPPolicyRule.new(client: self, result: result)
|
102
|
+
end
|
103
|
+
|
104
|
+
##
|
105
|
+
# Get detailed information about an IP policy rule by ID.
|
106
|
+
# Throws an exception if API error.
|
107
|
+
#
|
108
|
+
# @param [string] id a resource identifier
|
109
|
+
# @return [NgrokAPI::Models::IPPolicyRule] result from the API request
|
110
|
+
#
|
111
|
+
# https://ngrok.com/docs/api#api-ip-policy-rules-get
|
112
|
+
def get!(
|
113
|
+
id: ""
|
114
|
+
)
|
115
|
+
path = '/ip_policy_rules/%{id}'
|
116
|
+
replacements = {
|
117
|
+
id: id,
|
118
|
+
}
|
119
|
+
data = {}
|
120
|
+
result = @client.get(path % replacements, data: data, danger: true)
|
121
|
+
NgrokAPI::Models::IPPolicyRule.new(client: self, result: result)
|
122
|
+
end
|
123
|
+
|
124
|
+
##
|
125
|
+
# List all IP policy rules on this account
|
126
|
+
#
|
127
|
+
# @param [string] before_id
|
128
|
+
# @param [string] limit
|
129
|
+
# @param [string] url optional and mutually exclusive from before_id and limit
|
130
|
+
# @return [NgrokAPI::Models::Listable] result from the API request
|
131
|
+
#
|
132
|
+
# https://ngrok.com/docs/api#api-ip-policy-rules-list
|
133
|
+
def list(
|
134
|
+
before_id: nil,
|
135
|
+
limit: nil,
|
136
|
+
url: nil
|
137
|
+
)
|
138
|
+
result = @client.list(
|
139
|
+
before_id: before_id,
|
140
|
+
limit: limit,
|
141
|
+
url: url,
|
142
|
+
path: PATH
|
143
|
+
)
|
144
|
+
NgrokAPI::Models::Listable.new(
|
145
|
+
client: self,
|
146
|
+
result: result,
|
147
|
+
list_property: LIST_PROPERTY,
|
148
|
+
klass: NgrokAPI::Models::IPPolicyRule
|
149
|
+
)
|
150
|
+
end
|
151
|
+
|
152
|
+
##
|
153
|
+
# Update attributes of an IP policy rule by ID
|
154
|
+
#
|
155
|
+
# @param [string] id
|
156
|
+
# @param [string] description human-readable description of the source IPs of this IP rule. optional, max 255 bytes.
|
157
|
+
# @param [string] metadata arbitrary user-defined machine-readable data of this IP policy rule. optional, max 4096 bytes.
|
158
|
+
# @param [string] cidr an IP or IP range specified in CIDR notation. IPv4 and IPv6 are both supported.
|
159
|
+
# @return [NgrokAPI::Models::IPPolicyRule] result from the API request
|
160
|
+
#
|
161
|
+
# https://ngrok.com/docs/api#api-ip-policy-rules-update
|
162
|
+
def update(
|
163
|
+
id: "",
|
164
|
+
description: nil,
|
165
|
+
metadata: nil,
|
166
|
+
cidr: nil
|
167
|
+
)
|
168
|
+
path = '/ip_policy_rules/%{id}'
|
169
|
+
replacements = {
|
170
|
+
id: id,
|
171
|
+
}
|
172
|
+
data = {}
|
173
|
+
data[:description] = description if description
|
174
|
+
data[:metadata] = metadata if metadata
|
175
|
+
data[:cidr] = cidr if cidr
|
176
|
+
result = @client.patch(path % replacements, data: data)
|
177
|
+
NgrokAPI::Models::IPPolicyRule.new(client: self, result: result)
|
178
|
+
end
|
179
|
+
|
180
|
+
##
|
181
|
+
# Update attributes of an IP policy rule by ID
|
182
|
+
# Throws an exception if API error.
|
183
|
+
#
|
184
|
+
# @param [string] id
|
185
|
+
# @param [string] description human-readable description of the source IPs of this IP rule. optional, max 255 bytes.
|
186
|
+
# @param [string] metadata arbitrary user-defined machine-readable data of this IP policy rule. optional, max 4096 bytes.
|
187
|
+
# @param [string] cidr an IP or IP range specified in CIDR notation. IPv4 and IPv6 are both supported.
|
188
|
+
# @return [NgrokAPI::Models::IPPolicyRule] result from the API request
|
189
|
+
#
|
190
|
+
# https://ngrok.com/docs/api#api-ip-policy-rules-update
|
191
|
+
def update!(
|
192
|
+
id: "",
|
193
|
+
description: nil,
|
194
|
+
metadata: nil,
|
195
|
+
cidr: nil
|
196
|
+
)
|
197
|
+
path = '/ip_policy_rules/%{id}'
|
198
|
+
replacements = {
|
199
|
+
id: id,
|
200
|
+
}
|
201
|
+
data = {}
|
202
|
+
data[:description] = description if description
|
203
|
+
data[:metadata] = metadata if metadata
|
204
|
+
data[:cidr] = cidr if cidr
|
205
|
+
result = @client.patch(path % replacements, data: data, danger: true)
|
206
|
+
NgrokAPI::Models::IPPolicyRule.new(client: self, result: result)
|
207
|
+
end
|
208
|
+
end
|
209
|
+
end
|
210
|
+
end
|