From 7d45e7be384a3524857c0597c8b013ca3f3e72d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?the=20ngrok=20rock=20=F0=9F=AA=A8?= Date: Fri, 15 Nov 2024 17:31:42 +0000 Subject: [PATCH 1/2] automated generation of docs from buildkite --- docs/agent/cli-api.mdx | 8160 +++++++++++++++++ docs/agent/cli.mdx | 727 +- .../examples/_abuse_reports_create_request.md | 13 + .../_abuse_reports_create_response.md | 20 + .../examples/_abuse_reports_get_request.md | 11 + .../examples/_abuse_reports_get_response.md | 20 + .../_agent_ingresses_create_request.md | 13 + .../_agent_ingresses_create_response.md | 22 + .../_agent_ingresses_delete_request.md | 11 + .../_agent_ingresses_delete_response.md | 0 .../examples/_agent_ingresses_get_request.md | 11 + .../examples/_agent_ingresses_get_response.md | 23 + .../examples/_agent_ingresses_list_request.md | 11 + .../_agent_ingresses_list_response.md | 28 + .../_agent_ingresses_update_request.md | 13 + .../_agent_ingresses_update_response.md | 23 + docs/api/examples/_api_keys_create_request.md | 13 + .../api/examples/_api_keys_create_response.md | 15 + docs/api/examples/_api_keys_delete_request.md | 11 + .../api/examples/_api_keys_delete_response.md | 0 docs/api/examples/_api_keys_get_request.md | 11 + docs/api/examples/_api_keys_get_response.md | 15 + docs/api/examples/_api_keys_list_request.md | 11 + docs/api/examples/_api_keys_list_response.md | 29 + docs/api/examples/_api_keys_update_request.md | 13 + .../api/examples/_api_keys_update_response.md | 15 + .../api/examples/_bot_users_create_request.md | 13 + .../examples/_bot_users_create_response.md | 13 + .../api/examples/_bot_users_delete_request.md | 11 + .../examples/_bot_users_delete_response.md | 0 docs/api/examples/_bot_users_get_request.md | 11 + docs/api/examples/_bot_users_get_response.md | 13 + docs/api/examples/_bot_users_list_request.md | 11 + docs/api/examples/_bot_users_list_response.md | 19 + .../api/examples/_bot_users_update_request.md | 13 + .../examples/_bot_users_update_response.md | 13 + ..._certificate_authorities_create_request.md | 13 + ...certificate_authorities_create_response.md | 19 + ..._certificate_authorities_delete_request.md | 11 + ...certificate_authorities_delete_response.md | 0 .../_certificate_authorities_get_request.md | 11 + .../_certificate_authorities_get_response.md | 19 + .../_certificate_authorities_list_request.md | 11 + .../_certificate_authorities_list_response.md | 48 + ..._certificate_authorities_update_request.md | 13 + ...certificate_authorities_update_response.md | 19 + .../examples/_credentials_create_request.md | 13 + .../examples/_credentials_create_response.md | 15 + .../examples/_credentials_delete_request.md | 11 + .../examples/_credentials_delete_response.md | 0 docs/api/examples/_credentials_get_request.md | 11 + .../api/examples/_credentials_get_response.md | 16 + .../api/examples/_credentials_list_request.md | 11 + .../examples/_credentials_list_response.md | 39 + .../examples/_credentials_update_request.md | 13 + .../examples/_credentials_update_response.md | 16 + ...dge_route_backend_module_delete_request.md | 11 + ...ge_route_backend_module_delete_response.md | 0 .../_edge_route_backend_module_get_request.md | 11 + ..._edge_route_backend_module_get_response.md | 13 + ...ge_route_backend_module_replace_request.md | 13 + ...e_route_backend_module_replace_response.md | 13 + ...e_circuit_breaker_module_delete_request.md | 11 + ..._circuit_breaker_module_delete_response.md | 0 ...oute_circuit_breaker_module_get_request.md | 11 + ...ute_circuit_breaker_module_get_response.md | 14 + ..._circuit_breaker_module_replace_request.md | 13 + ...circuit_breaker_module_replace_response.md | 14 + ...route_compression_module_delete_request.md | 11 + ...oute_compression_module_delete_response.md | 0 ...ge_route_compression_module_get_request.md | 11 + ...e_route_compression_module_get_response.md | 9 + ...oute_compression_module_replace_request.md | 13 + ...ute_compression_module_replace_response.md | 9 + ...te_ip_restriction_module_delete_request.md | 11 + ...e_ip_restriction_module_delete_response.md | 0 ...route_ip_restriction_module_get_request.md | 11 + ...oute_ip_restriction_module_get_response.md | 19 + ...e_ip_restriction_module_replace_request.md | 13 + ..._ip_restriction_module_replace_response.md | 19 + ...edge_route_o_auth_module_delete_request.md | 11 + ...dge_route_o_auth_module_delete_response.md | 0 .../_edge_route_o_auth_module_get_request.md | 11 + .../_edge_route_o_auth_module_get_response.md | 34 + ...dge_route_o_auth_module_replace_request.md | 13 + ...ge_route_o_auth_module_replace_response.md | 34 + .../_edge_route_oidc_module_delete_request.md | 11 + ..._edge_route_oidc_module_delete_response.md | 0 .../_edge_route_oidc_module_get_request.md | 11 + .../_edge_route_oidc_module_get_response.md | 17 + ..._edge_route_oidc_module_replace_request.md | 13 + ...edge_route_oidc_module_replace_response.md | 17 + ...e_request_headers_module_delete_request.md | 11 + ..._request_headers_module_delete_response.md | 0 ...oute_request_headers_module_get_request.md | 11 + ...ute_request_headers_module_get_response.md | 13 + ..._request_headers_module_replace_request.md | 13 + ...request_headers_module_replace_response.md | 13 + ..._response_headers_module_delete_request.md | 11 + ...response_headers_module_delete_response.md | 0 ...ute_response_headers_module_get_request.md | 11 + ...te_response_headers_module_get_response.md | 14 + ...response_headers_module_replace_request.md | 13 + ...esponse_headers_module_replace_response.md | 14 + .../_edge_route_saml_module_delete_request.md | 11 + ..._edge_route_saml_module_delete_response.md | 0 .../_edge_route_saml_module_get_request.md | 11 + .../_edge_route_saml_module_get_response.md | 24 + ..._edge_route_saml_module_replace_request.md | 13 + ...edge_route_saml_module_replace_response.md | 24 + ...te_traffic_policy_module_delete_request.md | 11 + ...e_traffic_policy_module_delete_response.md | 0 ...route_traffic_policy_module_get_request.md | 11 + ...oute_traffic_policy_module_get_response.md | 10 + ...e_traffic_policy_module_replace_request.md | 13 + ..._traffic_policy_module_replace_response.md | 10 + ...user_agent_filter_module_delete_request.md | 11 + ...ser_agent_filter_module_delete_response.md | 0 ...te_user_agent_filter_module_get_request.md | 11 + ...e_user_agent_filter_module_get_response.md | 11 + ...ser_agent_filter_module_replace_request.md | 13 + ...er_agent_filter_module_replace_response.md | 11 + ...hook_verification_module_delete_request.md | 11 + ...ook_verification_module_delete_response.md | 0 ...webhook_verification_module_get_request.md | 11 + ...ebhook_verification_module_get_response.md | 11 + ...ook_verification_module_replace_request.md | 13 + ...ok_verification_module_replace_response.md | 11 + ...ket_tcp_converter_module_delete_request.md | 11 + ...et_tcp_converter_module_delete_response.md | 0 ...socket_tcp_converter_module_get_request.md | 11 + ...ocket_tcp_converter_module_get_response.md | 9 + ...et_tcp_converter_module_replace_request.md | 13 + ...t_tcp_converter_module_replace_response.md | 9 + .../examples/_edges_https_create_request.md | 13 + .../examples/_edges_https_create_response.md | 17 + .../examples/_edges_https_delete_request.md | 11 + .../examples/_edges_https_delete_response.md | 0 docs/api/examples/_edges_https_get_request.md | 11 + .../api/examples/_edges_https_get_response.md | 17 + .../api/examples/_edges_https_list_request.md | 11 + .../examples/_edges_https_list_response.md | 23 + .../_edges_https_routes_create_request.md | 13 + .../_edges_https_routes_create_response.md | 30 + .../_edges_https_routes_delete_request.md | 11 + .../_edges_https_routes_delete_response.md | 0 .../_edges_https_routes_get_request.md | 11 + .../_edges_https_routes_get_response.md | 30 + .../_edges_https_routes_update_request.md | 13 + .../_edges_https_routes_update_response.md | 30 + .../examples/_edges_https_update_request.md | 13 + .../examples/_edges_https_update_response.md | 17 + .../api/examples/_edges_tcp_create_request.md | 13 + .../examples/_edges_tcp_create_response.md | 18 + .../api/examples/_edges_tcp_delete_request.md | 11 + .../examples/_edges_tcp_delete_response.md | 0 docs/api/examples/_edges_tcp_get_request.md | 11 + docs/api/examples/_edges_tcp_get_response.md | 18 + docs/api/examples/_edges_tcp_list_request.md | 11 + docs/api/examples/_edges_tcp_list_response.md | 24 + .../api/examples/_edges_tcp_update_request.md | 13 + .../examples/_edges_tcp_update_response.md | 18 + .../api/examples/_edges_tls_create_request.md | 13 + .../examples/_edges_tls_create_response.md | 20 + .../api/examples/_edges_tls_delete_request.md | 11 + .../examples/_edges_tls_delete_response.md | 0 docs/api/examples/_edges_tls_get_request.md | 11 + docs/api/examples/_edges_tls_get_response.md | 20 + docs/api/examples/_edges_tls_list_request.md | 11 + docs/api/examples/_edges_tls_list_response.md | 45 + .../api/examples/_edges_tls_update_request.md | 13 + .../examples/_edges_tls_update_response.md | 20 + ...dpoint_basic_auth_module_delete_request.md | 11 + ...point_basic_auth_module_delete_response.md | 0 ..._endpoint_basic_auth_module_get_request.md | 11 + ...endpoint_basic_auth_module_get_response.md | 12 + ...point_basic_auth_module_replace_request.md | 13 + ...oint_basic_auth_module_replace_response.md | 12 + ...t_circuit_breaker_module_delete_request.md | 11 + ..._circuit_breaker_module_delete_response.md | 0 ...oint_circuit_breaker_module_get_request.md | 11 + ...int_circuit_breaker_module_get_response.md | 14 + ..._circuit_breaker_module_replace_request.md | 13 + ...circuit_breaker_module_replace_response.md | 14 + ...point_compression_module_delete_request.md | 11 + ...oint_compression_module_delete_response.md | 0 ...endpoint_compression_module_get_request.md | 11 + ...ndpoint_compression_module_get_response.md | 9 + ...oint_compression_module_replace_request.md | 13 + ...int_compression_module_replace_response.md | 9 + ..._endpoint_configurations_create_request.md | 13 + ...endpoint_configurations_create_response.md | 32 + ..._endpoint_configurations_delete_request.md | 11 + ...endpoint_configurations_delete_response.md | 0 .../_endpoint_configurations_get_request.md | 11 + .../_endpoint_configurations_get_response.md | 40 + .../_endpoint_configurations_list_request.md | 11 + .../_endpoint_configurations_list_response.md | 74 + ..._endpoint_configurations_update_request.md | 13 + ...endpoint_configurations_update_response.md | 40 + ...ndpoint_ip_policy_module_delete_request.md | 11 + ...dpoint_ip_policy_module_delete_response.md | 0 .../_endpoint_ip_policy_module_get_request.md | 11 + ..._endpoint_ip_policy_module_get_response.md | 15 + ...dpoint_ip_policy_module_replace_request.md | 13 + ...point_ip_policy_module_replace_response.md | 15 + ...dpoint_mutual_tls_module_delete_request.md | 11 + ...point_mutual_tls_module_delete_response.md | 0 ..._endpoint_mutual_tls_module_get_request.md | 11 + ...endpoint_mutual_tls_module_get_response.md | 15 + ...point_mutual_tls_module_replace_request.md | 13 + ...oint_mutual_tls_module_replace_response.md | 15 + .../_endpoint_o_auth_module_delete_request.md | 11 + ..._endpoint_o_auth_module_delete_response.md | 0 .../_endpoint_o_auth_module_get_request.md | 11 + .../_endpoint_o_auth_module_get_response.md | 34 + ..._endpoint_o_auth_module_replace_request.md | 13 + ...endpoint_o_auth_module_replace_response.md | 34 + .../_endpoint_oidc_module_delete_request.md | 11 + .../_endpoint_oidc_module_delete_response.md | 0 .../_endpoint_oidc_module_get_request.md | 11 + .../_endpoint_oidc_module_get_response.md | 17 + .../_endpoint_oidc_module_replace_request.md | 13 + .../_endpoint_oidc_module_replace_response.md | 17 + ...t_request_headers_module_delete_request.md | 11 + ..._request_headers_module_delete_response.md | 0 ...oint_request_headers_module_get_request.md | 11 + ...int_request_headers_module_get_response.md | 14 + ..._request_headers_module_replace_request.md | 13 + ...request_headers_module_replace_response.md | 14 + ..._response_headers_module_delete_request.md | 11 + ...response_headers_module_delete_response.md | 0 ...int_response_headers_module_get_request.md | 11 + ...nt_response_headers_module_get_response.md | 14 + ...response_headers_module_replace_request.md | 13 + ...esponse_headers_module_replace_response.md | 14 + .../_endpoint_saml_module_delete_request.md | 11 + .../_endpoint_saml_module_delete_response.md | 0 .../_endpoint_saml_module_get_request.md | 11 + .../_endpoint_saml_module_get_response.md | 24 + .../_endpoint_saml_module_replace_request.md | 13 + .../_endpoint_saml_module_replace_response.md | 24 + ...t_tls_termination_module_delete_request.md | 11 + ..._tls_termination_module_delete_response.md | 0 ...oint_tls_termination_module_get_request.md | 11 + ...int_tls_termination_module_get_response.md | 11 + ..._tls_termination_module_replace_request.md | 13 + ...tls_termination_module_replace_response.md | 11 + ...ebhook_validation_module_delete_request.md | 11 + ...bhook_validation_module_delete_response.md | 0 ...t_webhook_validation_module_get_request.md | 11 + ..._webhook_validation_module_get_response.md | 11 + ...bhook_validation_module_replace_request.md | 13 + ...hook_validation_module_replace_response.md | 11 + .../api/examples/_endpoints_create_request.md | 13 + .../examples/_endpoints_create_response.md | 25 + .../api/examples/_endpoints_delete_request.md | 11 + .../examples/_endpoints_delete_response.md | 0 docs/api/examples/_endpoints_get_request.md | 11 + docs/api/examples/_endpoints_get_response.md | 27 + docs/api/examples/_endpoints_list_request.md | 11 + docs/api/examples/_endpoints_list_response.md | 55 + .../api/examples/_endpoints_update_request.md | 13 + .../examples/_endpoints_update_response.md | 25 + .../_event_destinations_create_request.md | 13 + .../_event_destinations_create_response.md | 29 + .../_event_destinations_delete_request.md | 11 + .../_event_destinations_delete_response.md | 0 .../_event_destinations_get_request.md | 11 + .../_event_destinations_get_response.md | 29 + .../_event_destinations_list_request.md | 11 + .../_event_destinations_list_response.md | 35 + .../_event_destinations_update_request.md | 13 + .../_event_destinations_update_response.md | 29 + .../examples/_event_sources_create_request.md | 13 + .../_event_sources_create_response.md | 10 + .../examples/_event_sources_delete_request.md | 11 + .../_event_sources_delete_response.md | 0 .../examples/_event_sources_get_request.md | 11 + .../examples/_event_sources_get_response.md | 10 + .../examples/_event_sources_list_request.md | 11 + .../examples/_event_sources_list_response.md | 19 + .../examples/_event_sources_update_request.md | 13 + .../_event_sources_update_response.md | 10 + .../_event_subscriptions_create_request.md | 13 + .../_event_subscriptions_create_response.md | 25 + .../_event_subscriptions_delete_request.md | 11 + .../_event_subscriptions_delete_response.md | 0 .../_event_subscriptions_get_request.md | 11 + .../_event_subscriptions_get_response.md | 25 + .../_event_subscriptions_list_request.md | 11 + .../_event_subscriptions_list_response.md | 31 + .../_event_subscriptions_update_request.md | 13 + .../_event_subscriptions_update_response.md | 25 + .../_failover_backends_create_request.md | 13 + .../_failover_backends_create_response.md | 14 + .../_failover_backends_delete_request.md | 11 + .../_failover_backends_delete_response.md | 0 .../_failover_backends_get_request.md | 11 + .../_failover_backends_get_response.md | 14 + .../_failover_backends_list_request.md | 11 + .../_failover_backends_list_response.md | 20 + .../_failover_backends_update_request.md | 13 + .../_failover_backends_update_response.md | 14 + .../_http_response_backends_create_request.md | 13 + ..._http_response_backends_create_response.md | 18 + .../_http_response_backends_delete_request.md | 11 + ..._http_response_backends_delete_response.md | 0 .../_http_response_backends_get_request.md | 11 + .../_http_response_backends_get_response.md | 18 + .../_http_response_backends_list_request.md | 11 + .../_http_response_backends_list_response.md | 40 + .../_http_response_backends_update_request.md | 13 + ..._http_response_backends_update_response.md | 18 + ...s_edge_mutual_tls_module_delete_request.md | 11 + ..._edge_mutual_tls_module_delete_response.md | 0 ...ttps_edge_mutual_tls_module_get_request.md | 11 + ...tps_edge_mutual_tls_module_get_response.md | 15 + ..._edge_mutual_tls_module_replace_request.md | 13 + ...edge_mutual_tls_module_replace_response.md | 15 + ...e_tls_termination_module_delete_request.md | 11 + ..._tls_termination_module_delete_response.md | 0 ...edge_tls_termination_module_get_request.md | 11 + ...dge_tls_termination_module_get_response.md | 11 + ..._tls_termination_module_replace_request.md | 13 + ...tls_termination_module_replace_response.md | 11 + .../examples/_ip_policies_create_request.md | 13 + .../examples/_ip_policies_create_response.md | 12 + .../examples/_ip_policies_delete_request.md | 11 + .../examples/_ip_policies_delete_response.md | 0 docs/api/examples/_ip_policies_get_request.md | 11 + .../api/examples/_ip_policies_get_response.md | 13 + .../api/examples/_ip_policies_list_request.md | 11 + .../examples/_ip_policies_list_response.md | 24 + .../examples/_ip_policies_update_request.md | 13 + .../examples/_ip_policies_update_response.md | 13 + .../_ip_policy_rules_create_request.md | 13 + .../_ip_policy_rules_create_response.md | 18 + .../_ip_policy_rules_delete_request.md | 11 + .../_ip_policy_rules_delete_response.md | 0 .../examples/_ip_policy_rules_get_request.md | 11 + .../examples/_ip_policy_rules_get_response.md | 18 + .../examples/_ip_policy_rules_list_request.md | 11 + .../_ip_policy_rules_list_response.md | 48 + .../_ip_policy_rules_update_request.md | 13 + .../_ip_policy_rules_update_response.md | 18 + .../_ip_restrictions_create_request.md | 13 + .../_ip_restrictions_create_response.md | 19 + .../_ip_restrictions_delete_request.md | 11 + .../_ip_restrictions_delete_response.md | 0 .../examples/_ip_restrictions_get_request.md | 11 + .../examples/_ip_restrictions_get_response.md | 23 + .../examples/_ip_restrictions_list_request.md | 11 + .../_ip_restrictions_list_response.md | 25 + .../_ip_restrictions_update_request.md | 13 + .../_ip_restrictions_update_response.md | 23 + .../_reserved_addrs_create_request.md | 13 + .../_reserved_addrs_create_response.md | 15 + ...ed_addrs_delete_endpoint_config_request.md | 11 + ...d_addrs_delete_endpoint_config_response.md | 0 .../_reserved_addrs_delete_request.md | 11 + .../_reserved_addrs_delete_response.md | 0 .../examples/_reserved_addrs_get_request.md | 11 + .../examples/_reserved_addrs_get_response.md | 19 + .../examples/_reserved_addrs_list_request.md | 11 + .../examples/_reserved_addrs_list_response.md | 21 + .../_reserved_addrs_update_request.md | 13 + .../_reserved_addrs_update_response.md | 19 + .../_reserved_domains_create_request.md | 13 + .../_reserved_domains_create_response.md | 24 + ...e_certificate_management_policy_request.md | 11 + ..._certificate_management_policy_response.md | 0 ...rved_domains_delete_certificate_request.md | 11 + ...ved_domains_delete_certificate_response.md | 0 ...ins_delete_http_endpoint_config_request.md | 11 + ...ns_delete_http_endpoint_config_response.md | 0 ...ns_delete_https_endpoint_config_request.md | 11 + ...s_delete_https_endpoint_config_response.md | 0 .../_reserved_domains_delete_request.md | 11 + .../_reserved_domains_delete_response.md | 0 .../examples/_reserved_domains_get_request.md | 11 + .../_reserved_domains_get_response.md | 32 + .../_reserved_domains_list_request.md | 11 + .../_reserved_domains_list_response.md | 58 + .../_reserved_domains_update_request.md | 13 + .../_reserved_domains_update_response.md | 32 + ..._certificate_authorities_create_request.md | 13 + ...certificate_authorities_create_response.md | 14 + ..._certificate_authorities_delete_request.md | 11 + ...certificate_authorities_delete_response.md | 0 ...ssh_certificate_authorities_get_request.md | 11 + ...sh_certificate_authorities_get_response.md | 15 + ...sh_certificate_authorities_list_request.md | 11 + ...h_certificate_authorities_list_response.md | 20 + ..._certificate_authorities_update_request.md | 13 + ...certificate_authorities_update_response.md | 15 + .../_ssh_credentials_create_request.md | 13 + .../_ssh_credentials_create_response.md | 15 + .../_ssh_credentials_delete_request.md | 11 + .../_ssh_credentials_delete_response.md | 0 .../examples/_ssh_credentials_get_request.md | 11 + .../examples/_ssh_credentials_get_response.md | 16 + .../examples/_ssh_credentials_list_request.md | 11 + .../_ssh_credentials_list_response.md | 21 + .../_ssh_credentials_update_request.md | 13 + .../_ssh_credentials_update_response.md | 16 + .../_ssh_host_certificates_create_request.md | 13 + .../_ssh_host_certificates_create_response.md | 19 + .../_ssh_host_certificates_delete_request.md | 11 + .../_ssh_host_certificates_delete_response.md | 0 .../_ssh_host_certificates_get_request.md | 11 + .../_ssh_host_certificates_get_response.md | 20 + .../_ssh_host_certificates_list_request.md | 11 + .../_ssh_host_certificates_list_response.md | 25 + .../_ssh_host_certificates_update_request.md | 13 + .../_ssh_host_certificates_update_response.md | 20 + .../_ssh_user_certificates_create_request.md | 13 + .../_ssh_user_certificates_create_response.md | 24 + .../_ssh_user_certificates_delete_request.md | 11 + .../_ssh_user_certificates_delete_response.md | 0 .../_ssh_user_certificates_get_request.md | 11 + .../_ssh_user_certificates_get_response.md | 25 + .../_ssh_user_certificates_list_request.md | 11 + .../_ssh_user_certificates_list_response.md | 30 + .../_ssh_user_certificates_update_request.md | 13 + .../_ssh_user_certificates_update_response.md | 25 + .../_static_backends_create_request.md | 13 + .../_static_backends_create_response.md | 17 + .../_static_backends_delete_request.md | 11 + .../_static_backends_delete_response.md | 0 .../examples/_static_backends_get_request.md | 13 + .../examples/_static_backends_get_response.md | 17 + .../examples/_static_backends_list_request.md | 11 + .../_static_backends_list_response.md | 45 + .../_static_backends_update_request.md | 13 + .../_static_backends_update_response.md | 17 + ..._tcp_edge_backend_module_delete_request.md | 11 + ...tcp_edge_backend_module_delete_response.md | 0 .../_tcp_edge_backend_module_get_request.md | 11 + .../_tcp_edge_backend_module_get_response.md | 13 + ...tcp_edge_backend_module_replace_request.md | 13 + ...cp_edge_backend_module_replace_response.md | 13 + ...ge_ip_restriction_module_delete_request.md | 11 + ...e_ip_restriction_module_delete_response.md | 0 ..._edge_ip_restriction_module_get_request.md | 11 + ...edge_ip_restriction_module_get_response.md | 15 + ...e_ip_restriction_module_replace_request.md | 13 + ..._ip_restriction_module_replace_response.md | 15 + ...ge_traffic_policy_module_delete_request.md | 11 + ...e_traffic_policy_module_delete_response.md | 0 ..._edge_traffic_policy_module_get_request.md | 11 + ...edge_traffic_policy_module_get_response.md | 10 + ...e_traffic_policy_module_replace_request.md | 13 + ..._traffic_policy_module_replace_response.md | 10 + .../_tls_certificates_create_request.md | 13 + .../_tls_certificates_create_response.md | 30 + .../_tls_certificates_delete_request.md | 11 + .../_tls_certificates_delete_response.md | 0 .../examples/_tls_certificates_get_request.md | 11 + .../_tls_certificates_get_response.md | 31 + .../_tls_certificates_list_request.md | 11 + .../_tls_certificates_list_response.md | 60 + .../_tls_certificates_update_request.md | 13 + .../_tls_certificates_update_response.md | 31 + ..._tls_edge_backend_module_delete_request.md | 11 + ...tls_edge_backend_module_delete_response.md | 0 .../_tls_edge_backend_module_get_request.md | 11 + .../_tls_edge_backend_module_get_response.md | 13 + ...tls_edge_backend_module_replace_request.md | 13 + ...ls_edge_backend_module_replace_response.md | 13 + ...ge_ip_restriction_module_delete_request.md | 11 + ...e_ip_restriction_module_delete_response.md | 0 ..._edge_ip_restriction_module_get_request.md | 11 + ...edge_ip_restriction_module_get_response.md | 19 + ...e_ip_restriction_module_replace_request.md | 13 + ..._ip_restriction_module_replace_response.md | 19 + ...s_edge_mutual_tls_module_delete_request.md | 11 + ..._edge_mutual_tls_module_delete_response.md | 0 ..._tls_edge_mutual_tls_module_get_request.md | 11 + ...tls_edge_mutual_tls_module_get_response.md | 15 + ..._edge_mutual_tls_module_replace_request.md | 13 + ...edge_mutual_tls_module_replace_response.md | 15 + ...e_tls_termination_module_delete_request.md | 11 + ..._tls_termination_module_delete_response.md | 0 ...edge_tls_termination_module_get_request.md | 11 + ...dge_tls_termination_module_get_response.md | 11 + ..._tls_termination_module_replace_request.md | 13 + ...tls_termination_module_replace_response.md | 11 + ...ge_traffic_policy_module_delete_request.md | 11 + ...e_traffic_policy_module_delete_response.md | 0 ..._edge_traffic_policy_module_get_request.md | 11 + ...edge_traffic_policy_module_get_response.md | 10 + ...e_traffic_policy_module_replace_request.md | 13 + ..._traffic_policy_module_replace_response.md | 10 + .../_tunnel_group_backends_create_request.md | 13 + .../_tunnel_group_backends_create_response.md | 18 + .../_tunnel_group_backends_delete_request.md | 11 + .../_tunnel_group_backends_delete_response.md | 0 .../_tunnel_group_backends_get_request.md | 11 + .../_tunnel_group_backends_get_response.md | 18 + .../_tunnel_group_backends_list_request.md | 11 + .../_tunnel_group_backends_list_response.md | 24 + .../_tunnel_group_backends_update_request.md | 13 + .../_tunnel_group_backends_update_response.md | 18 + .../examples/_tunnel_sessions_get_request.md | 11 + .../examples/_tunnel_sessions_get_response.md | 20 + .../examples/_tunnel_sessions_list_request.md | 11 + .../_tunnel_sessions_list_response.md | 26 + .../_tunnel_sessions_restart_request.md | 13 + .../_tunnel_sessions_restart_response.md | 13 + .../examples/_tunnel_sessions_stop_request.md | 13 + .../_tunnel_sessions_stop_response.md | 13 + .../_tunnel_sessions_update_request.md | 13 + .../_tunnel_sessions_update_response.md | 13 + docs/api/examples/_tunnels_get_request.md | 11 + docs/api/examples/_tunnels_get_response.md | 22 + docs/api/examples/_tunnels_list_request.md | 11 + docs/api/examples/_tunnels_list_response.md | 42 + .../_weighted_backends_create_request.md | 13 + .../_weighted_backends_create_response.md | 17 + .../_weighted_backends_delete_request.md | 11 + .../_weighted_backends_delete_response.md | 0 .../_weighted_backends_get_request.md | 11 + .../_weighted_backends_get_response.md | 17 + .../_weighted_backends_list_request.md | 11 + .../_weighted_backends_list_response.md | 23 + .../_weighted_backends_update_request.md | 13 + .../_weighted_backends_update_response.md | 14 + docs/api/resources/endpoints.mdx | 4 + docs/errors/_err_ngrok_list.md | 174 +- docs/errors/err_ngrok_1022.mdx | 18 + docs/errors/err_ngrok_1023.mdx | 18 + docs/errors/err_ngrok_1024.mdx | 18 + docs/errors/err_ngrok_1025.mdx | 18 + docs/errors/err_ngrok_1026.mdx | 18 + docs/errors/err_ngrok_1027.mdx | 18 + docs/errors/err_ngrok_1028.mdx | 18 + docs/errors/err_ngrok_1029.mdx | 18 + docs/errors/err_ngrok_1030.mdx | 18 + docs/errors/err_ngrok_1031.mdx | 18 + docs/errors/err_ngrok_1032.mdx | 18 + docs/errors/err_ngrok_120.mdx | 2 +- docs/errors/err_ngrok_121.mdx | 2 +- docs/errors/err_ngrok_15008.mdx | 18 + docs/errors/err_ngrok_15009.mdx | 18 + docs/errors/err_ngrok_18002.mdx | 2 +- docs/errors/err_ngrok_18010.mdx | 18 + docs/errors/err_ngrok_18011.mdx | 18 + docs/errors/err_ngrok_18012.mdx | 18 + docs/errors/err_ngrok_18013.mdx | 18 + docs/errors/err_ngrok_2087.mdx | 18 + docs/errors/err_ngrok_2204.mdx | 2 +- docs/errors/err_ngrok_2236.mdx | 18 + docs/errors/err_ngrok_2237.mdx | 18 + docs/errors/err_ngrok_224.mdx | 2 +- docs/errors/err_ngrok_3501.mdx | 2 +- docs/errors/err_ngrok_446.mdx | 2 +- docs/obs/_endpoint-list.md | 2 + docs/obs/_endpoint.md | 2 + docs/obs/_event-imports.mdx | 4 + docs/obs/_event-table.mdx | 1 + docs/obs/_item-paging.md | 7 + 562 files changed, 16115 insertions(+), 366 deletions(-) create mode 100644 docs/agent/cli-api.mdx create mode 100644 docs/api/examples/_abuse_reports_create_request.md create mode 100644 docs/api/examples/_abuse_reports_create_response.md create mode 100644 docs/api/examples/_abuse_reports_get_request.md create mode 100644 docs/api/examples/_abuse_reports_get_response.md create mode 100644 docs/api/examples/_agent_ingresses_create_request.md create mode 100644 docs/api/examples/_agent_ingresses_create_response.md create mode 100644 docs/api/examples/_agent_ingresses_delete_request.md create mode 100644 docs/api/examples/_agent_ingresses_delete_response.md create mode 100644 docs/api/examples/_agent_ingresses_get_request.md create mode 100644 docs/api/examples/_agent_ingresses_get_response.md create mode 100644 docs/api/examples/_agent_ingresses_list_request.md create mode 100644 docs/api/examples/_agent_ingresses_list_response.md create mode 100644 docs/api/examples/_agent_ingresses_update_request.md create mode 100644 docs/api/examples/_agent_ingresses_update_response.md create mode 100644 docs/api/examples/_api_keys_create_request.md create mode 100644 docs/api/examples/_api_keys_create_response.md create mode 100644 docs/api/examples/_api_keys_delete_request.md create mode 100644 docs/api/examples/_api_keys_delete_response.md create mode 100644 docs/api/examples/_api_keys_get_request.md create mode 100644 docs/api/examples/_api_keys_get_response.md create mode 100644 docs/api/examples/_api_keys_list_request.md create mode 100644 docs/api/examples/_api_keys_list_response.md create mode 100644 docs/api/examples/_api_keys_update_request.md create mode 100644 docs/api/examples/_api_keys_update_response.md create mode 100644 docs/api/examples/_bot_users_create_request.md create mode 100644 docs/api/examples/_bot_users_create_response.md create mode 100644 docs/api/examples/_bot_users_delete_request.md create mode 100644 docs/api/examples/_bot_users_delete_response.md create mode 100644 docs/api/examples/_bot_users_get_request.md create mode 100644 docs/api/examples/_bot_users_get_response.md create mode 100644 docs/api/examples/_bot_users_list_request.md create mode 100644 docs/api/examples/_bot_users_list_response.md create mode 100644 docs/api/examples/_bot_users_update_request.md create mode 100644 docs/api/examples/_bot_users_update_response.md create mode 100644 docs/api/examples/_certificate_authorities_create_request.md create mode 100644 docs/api/examples/_certificate_authorities_create_response.md create mode 100644 docs/api/examples/_certificate_authorities_delete_request.md create mode 100644 docs/api/examples/_certificate_authorities_delete_response.md create mode 100644 docs/api/examples/_certificate_authorities_get_request.md create mode 100644 docs/api/examples/_certificate_authorities_get_response.md create mode 100644 docs/api/examples/_certificate_authorities_list_request.md create mode 100644 docs/api/examples/_certificate_authorities_list_response.md create mode 100644 docs/api/examples/_certificate_authorities_update_request.md create mode 100644 docs/api/examples/_certificate_authorities_update_response.md create mode 100644 docs/api/examples/_credentials_create_request.md create mode 100644 docs/api/examples/_credentials_create_response.md create mode 100644 docs/api/examples/_credentials_delete_request.md create mode 100644 docs/api/examples/_credentials_delete_response.md create mode 100644 docs/api/examples/_credentials_get_request.md create mode 100644 docs/api/examples/_credentials_get_response.md create mode 100644 docs/api/examples/_credentials_list_request.md create mode 100644 docs/api/examples/_credentials_list_response.md create mode 100644 docs/api/examples/_credentials_update_request.md create mode 100644 docs/api/examples/_credentials_update_response.md create mode 100644 docs/api/examples/_edge_route_backend_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_backend_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_backend_module_get_request.md create mode 100644 docs/api/examples/_edge_route_backend_module_get_response.md create mode 100644 docs/api/examples/_edge_route_backend_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_backend_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_circuit_breaker_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_circuit_breaker_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_circuit_breaker_module_get_request.md create mode 100644 docs/api/examples/_edge_route_circuit_breaker_module_get_response.md create mode 100644 docs/api/examples/_edge_route_circuit_breaker_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_circuit_breaker_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_compression_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_compression_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_compression_module_get_request.md create mode 100644 docs/api/examples/_edge_route_compression_module_get_response.md create mode 100644 docs/api/examples/_edge_route_compression_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_compression_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_ip_restriction_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_ip_restriction_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_ip_restriction_module_get_request.md create mode 100644 docs/api/examples/_edge_route_ip_restriction_module_get_response.md create mode 100644 docs/api/examples/_edge_route_ip_restriction_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_ip_restriction_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_o_auth_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_o_auth_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_o_auth_module_get_request.md create mode 100644 docs/api/examples/_edge_route_o_auth_module_get_response.md create mode 100644 docs/api/examples/_edge_route_o_auth_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_o_auth_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_oidc_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_oidc_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_oidc_module_get_request.md create mode 100644 docs/api/examples/_edge_route_oidc_module_get_response.md create mode 100644 docs/api/examples/_edge_route_oidc_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_oidc_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_request_headers_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_request_headers_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_request_headers_module_get_request.md create mode 100644 docs/api/examples/_edge_route_request_headers_module_get_response.md create mode 100644 docs/api/examples/_edge_route_request_headers_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_request_headers_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_response_headers_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_response_headers_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_response_headers_module_get_request.md create mode 100644 docs/api/examples/_edge_route_response_headers_module_get_response.md create mode 100644 docs/api/examples/_edge_route_response_headers_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_response_headers_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_saml_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_saml_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_saml_module_get_request.md create mode 100644 docs/api/examples/_edge_route_saml_module_get_response.md create mode 100644 docs/api/examples/_edge_route_saml_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_saml_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_traffic_policy_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_traffic_policy_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_traffic_policy_module_get_request.md create mode 100644 docs/api/examples/_edge_route_traffic_policy_module_get_response.md create mode 100644 docs/api/examples/_edge_route_traffic_policy_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_traffic_policy_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_user_agent_filter_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_user_agent_filter_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_user_agent_filter_module_get_request.md create mode 100644 docs/api/examples/_edge_route_user_agent_filter_module_get_response.md create mode 100644 docs/api/examples/_edge_route_user_agent_filter_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_user_agent_filter_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_webhook_verification_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_webhook_verification_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_webhook_verification_module_get_request.md create mode 100644 docs/api/examples/_edge_route_webhook_verification_module_get_response.md create mode 100644 docs/api/examples/_edge_route_webhook_verification_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_webhook_verification_module_replace_response.md create mode 100644 docs/api/examples/_edge_route_websocket_tcp_converter_module_delete_request.md create mode 100644 docs/api/examples/_edge_route_websocket_tcp_converter_module_delete_response.md create mode 100644 docs/api/examples/_edge_route_websocket_tcp_converter_module_get_request.md create mode 100644 docs/api/examples/_edge_route_websocket_tcp_converter_module_get_response.md create mode 100644 docs/api/examples/_edge_route_websocket_tcp_converter_module_replace_request.md create mode 100644 docs/api/examples/_edge_route_websocket_tcp_converter_module_replace_response.md create mode 100644 docs/api/examples/_edges_https_create_request.md create mode 100644 docs/api/examples/_edges_https_create_response.md create mode 100644 docs/api/examples/_edges_https_delete_request.md create mode 100644 docs/api/examples/_edges_https_delete_response.md create mode 100644 docs/api/examples/_edges_https_get_request.md create mode 100644 docs/api/examples/_edges_https_get_response.md create mode 100644 docs/api/examples/_edges_https_list_request.md create mode 100644 docs/api/examples/_edges_https_list_response.md create mode 100644 docs/api/examples/_edges_https_routes_create_request.md create mode 100644 docs/api/examples/_edges_https_routes_create_response.md create mode 100644 docs/api/examples/_edges_https_routes_delete_request.md create mode 100644 docs/api/examples/_edges_https_routes_delete_response.md create mode 100644 docs/api/examples/_edges_https_routes_get_request.md create mode 100644 docs/api/examples/_edges_https_routes_get_response.md create mode 100644 docs/api/examples/_edges_https_routes_update_request.md create mode 100644 docs/api/examples/_edges_https_routes_update_response.md create mode 100644 docs/api/examples/_edges_https_update_request.md create mode 100644 docs/api/examples/_edges_https_update_response.md create mode 100644 docs/api/examples/_edges_tcp_create_request.md create mode 100644 docs/api/examples/_edges_tcp_create_response.md create mode 100644 docs/api/examples/_edges_tcp_delete_request.md create mode 100644 docs/api/examples/_edges_tcp_delete_response.md create mode 100644 docs/api/examples/_edges_tcp_get_request.md create mode 100644 docs/api/examples/_edges_tcp_get_response.md create mode 100644 docs/api/examples/_edges_tcp_list_request.md create mode 100644 docs/api/examples/_edges_tcp_list_response.md create mode 100644 docs/api/examples/_edges_tcp_update_request.md create mode 100644 docs/api/examples/_edges_tcp_update_response.md create mode 100644 docs/api/examples/_edges_tls_create_request.md create mode 100644 docs/api/examples/_edges_tls_create_response.md create mode 100644 docs/api/examples/_edges_tls_delete_request.md create mode 100644 docs/api/examples/_edges_tls_delete_response.md create mode 100644 docs/api/examples/_edges_tls_get_request.md create mode 100644 docs/api/examples/_edges_tls_get_response.md create mode 100644 docs/api/examples/_edges_tls_list_request.md create mode 100644 docs/api/examples/_edges_tls_list_response.md create mode 100644 docs/api/examples/_edges_tls_update_request.md create mode 100644 docs/api/examples/_edges_tls_update_response.md create mode 100644 docs/api/examples/_endpoint_basic_auth_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_basic_auth_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_basic_auth_module_get_request.md create mode 100644 docs/api/examples/_endpoint_basic_auth_module_get_response.md create mode 100644 docs/api/examples/_endpoint_basic_auth_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_basic_auth_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_circuit_breaker_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_circuit_breaker_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_circuit_breaker_module_get_request.md create mode 100644 docs/api/examples/_endpoint_circuit_breaker_module_get_response.md create mode 100644 docs/api/examples/_endpoint_circuit_breaker_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_circuit_breaker_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_compression_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_compression_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_compression_module_get_request.md create mode 100644 docs/api/examples/_endpoint_compression_module_get_response.md create mode 100644 docs/api/examples/_endpoint_compression_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_compression_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_configurations_create_request.md create mode 100644 docs/api/examples/_endpoint_configurations_create_response.md create mode 100644 docs/api/examples/_endpoint_configurations_delete_request.md create mode 100644 docs/api/examples/_endpoint_configurations_delete_response.md create mode 100644 docs/api/examples/_endpoint_configurations_get_request.md create mode 100644 docs/api/examples/_endpoint_configurations_get_response.md create mode 100644 docs/api/examples/_endpoint_configurations_list_request.md create mode 100644 docs/api/examples/_endpoint_configurations_list_response.md create mode 100644 docs/api/examples/_endpoint_configurations_update_request.md create mode 100644 docs/api/examples/_endpoint_configurations_update_response.md create mode 100644 docs/api/examples/_endpoint_ip_policy_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_ip_policy_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_ip_policy_module_get_request.md create mode 100644 docs/api/examples/_endpoint_ip_policy_module_get_response.md create mode 100644 docs/api/examples/_endpoint_ip_policy_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_ip_policy_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_mutual_tls_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_mutual_tls_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_mutual_tls_module_get_request.md create mode 100644 docs/api/examples/_endpoint_mutual_tls_module_get_response.md create mode 100644 docs/api/examples/_endpoint_mutual_tls_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_mutual_tls_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_o_auth_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_o_auth_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_o_auth_module_get_request.md create mode 100644 docs/api/examples/_endpoint_o_auth_module_get_response.md create mode 100644 docs/api/examples/_endpoint_o_auth_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_o_auth_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_oidc_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_oidc_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_oidc_module_get_request.md create mode 100644 docs/api/examples/_endpoint_oidc_module_get_response.md create mode 100644 docs/api/examples/_endpoint_oidc_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_oidc_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_request_headers_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_request_headers_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_request_headers_module_get_request.md create mode 100644 docs/api/examples/_endpoint_request_headers_module_get_response.md create mode 100644 docs/api/examples/_endpoint_request_headers_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_request_headers_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_response_headers_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_response_headers_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_response_headers_module_get_request.md create mode 100644 docs/api/examples/_endpoint_response_headers_module_get_response.md create mode 100644 docs/api/examples/_endpoint_response_headers_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_response_headers_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_saml_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_saml_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_saml_module_get_request.md create mode 100644 docs/api/examples/_endpoint_saml_module_get_response.md create mode 100644 docs/api/examples/_endpoint_saml_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_saml_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_tls_termination_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_tls_termination_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_tls_termination_module_get_request.md create mode 100644 docs/api/examples/_endpoint_tls_termination_module_get_response.md create mode 100644 docs/api/examples/_endpoint_tls_termination_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_tls_termination_module_replace_response.md create mode 100644 docs/api/examples/_endpoint_webhook_validation_module_delete_request.md create mode 100644 docs/api/examples/_endpoint_webhook_validation_module_delete_response.md create mode 100644 docs/api/examples/_endpoint_webhook_validation_module_get_request.md create mode 100644 docs/api/examples/_endpoint_webhook_validation_module_get_response.md create mode 100644 docs/api/examples/_endpoint_webhook_validation_module_replace_request.md create mode 100644 docs/api/examples/_endpoint_webhook_validation_module_replace_response.md create mode 100644 docs/api/examples/_endpoints_create_request.md create mode 100644 docs/api/examples/_endpoints_create_response.md create mode 100644 docs/api/examples/_endpoints_delete_request.md create mode 100644 docs/api/examples/_endpoints_delete_response.md create mode 100644 docs/api/examples/_endpoints_get_request.md create mode 100644 docs/api/examples/_endpoints_get_response.md create mode 100644 docs/api/examples/_endpoints_list_request.md create mode 100644 docs/api/examples/_endpoints_list_response.md create mode 100644 docs/api/examples/_endpoints_update_request.md create mode 100644 docs/api/examples/_endpoints_update_response.md create mode 100644 docs/api/examples/_event_destinations_create_request.md create mode 100644 docs/api/examples/_event_destinations_create_response.md create mode 100644 docs/api/examples/_event_destinations_delete_request.md create mode 100644 docs/api/examples/_event_destinations_delete_response.md create mode 100644 docs/api/examples/_event_destinations_get_request.md create mode 100644 docs/api/examples/_event_destinations_get_response.md create mode 100644 docs/api/examples/_event_destinations_list_request.md create mode 100644 docs/api/examples/_event_destinations_list_response.md create mode 100644 docs/api/examples/_event_destinations_update_request.md create mode 100644 docs/api/examples/_event_destinations_update_response.md create mode 100644 docs/api/examples/_event_sources_create_request.md create mode 100644 docs/api/examples/_event_sources_create_response.md create mode 100644 docs/api/examples/_event_sources_delete_request.md create mode 100644 docs/api/examples/_event_sources_delete_response.md create mode 100644 docs/api/examples/_event_sources_get_request.md create mode 100644 docs/api/examples/_event_sources_get_response.md create mode 100644 docs/api/examples/_event_sources_list_request.md create mode 100644 docs/api/examples/_event_sources_list_response.md create mode 100644 docs/api/examples/_event_sources_update_request.md create mode 100644 docs/api/examples/_event_sources_update_response.md create mode 100644 docs/api/examples/_event_subscriptions_create_request.md create mode 100644 docs/api/examples/_event_subscriptions_create_response.md create mode 100644 docs/api/examples/_event_subscriptions_delete_request.md create mode 100644 docs/api/examples/_event_subscriptions_delete_response.md create mode 100644 docs/api/examples/_event_subscriptions_get_request.md create mode 100644 docs/api/examples/_event_subscriptions_get_response.md create mode 100644 docs/api/examples/_event_subscriptions_list_request.md create mode 100644 docs/api/examples/_event_subscriptions_list_response.md create mode 100644 docs/api/examples/_event_subscriptions_update_request.md create mode 100644 docs/api/examples/_event_subscriptions_update_response.md create mode 100644 docs/api/examples/_failover_backends_create_request.md create mode 100644 docs/api/examples/_failover_backends_create_response.md create mode 100644 docs/api/examples/_failover_backends_delete_request.md create mode 100644 docs/api/examples/_failover_backends_delete_response.md create mode 100644 docs/api/examples/_failover_backends_get_request.md create mode 100644 docs/api/examples/_failover_backends_get_response.md create mode 100644 docs/api/examples/_failover_backends_list_request.md create mode 100644 docs/api/examples/_failover_backends_list_response.md create mode 100644 docs/api/examples/_failover_backends_update_request.md create mode 100644 docs/api/examples/_failover_backends_update_response.md create mode 100644 docs/api/examples/_http_response_backends_create_request.md create mode 100644 docs/api/examples/_http_response_backends_create_response.md create mode 100644 docs/api/examples/_http_response_backends_delete_request.md create mode 100644 docs/api/examples/_http_response_backends_delete_response.md create mode 100644 docs/api/examples/_http_response_backends_get_request.md create mode 100644 docs/api/examples/_http_response_backends_get_response.md create mode 100644 docs/api/examples/_http_response_backends_list_request.md create mode 100644 docs/api/examples/_http_response_backends_list_response.md create mode 100644 docs/api/examples/_http_response_backends_update_request.md create mode 100644 docs/api/examples/_http_response_backends_update_response.md create mode 100644 docs/api/examples/_https_edge_mutual_tls_module_delete_request.md create mode 100644 docs/api/examples/_https_edge_mutual_tls_module_delete_response.md create mode 100644 docs/api/examples/_https_edge_mutual_tls_module_get_request.md create mode 100644 docs/api/examples/_https_edge_mutual_tls_module_get_response.md create mode 100644 docs/api/examples/_https_edge_mutual_tls_module_replace_request.md create mode 100644 docs/api/examples/_https_edge_mutual_tls_module_replace_response.md create mode 100644 docs/api/examples/_https_edge_tls_termination_module_delete_request.md create mode 100644 docs/api/examples/_https_edge_tls_termination_module_delete_response.md create mode 100644 docs/api/examples/_https_edge_tls_termination_module_get_request.md create mode 100644 docs/api/examples/_https_edge_tls_termination_module_get_response.md create mode 100644 docs/api/examples/_https_edge_tls_termination_module_replace_request.md create mode 100644 docs/api/examples/_https_edge_tls_termination_module_replace_response.md create mode 100644 docs/api/examples/_ip_policies_create_request.md create mode 100644 docs/api/examples/_ip_policies_create_response.md create mode 100644 docs/api/examples/_ip_policies_delete_request.md create mode 100644 docs/api/examples/_ip_policies_delete_response.md create mode 100644 docs/api/examples/_ip_policies_get_request.md create mode 100644 docs/api/examples/_ip_policies_get_response.md create mode 100644 docs/api/examples/_ip_policies_list_request.md create mode 100644 docs/api/examples/_ip_policies_list_response.md create mode 100644 docs/api/examples/_ip_policies_update_request.md create mode 100644 docs/api/examples/_ip_policies_update_response.md create mode 100644 docs/api/examples/_ip_policy_rules_create_request.md create mode 100644 docs/api/examples/_ip_policy_rules_create_response.md create mode 100644 docs/api/examples/_ip_policy_rules_delete_request.md create mode 100644 docs/api/examples/_ip_policy_rules_delete_response.md create mode 100644 docs/api/examples/_ip_policy_rules_get_request.md create mode 100644 docs/api/examples/_ip_policy_rules_get_response.md create mode 100644 docs/api/examples/_ip_policy_rules_list_request.md create mode 100644 docs/api/examples/_ip_policy_rules_list_response.md create mode 100644 docs/api/examples/_ip_policy_rules_update_request.md create mode 100644 docs/api/examples/_ip_policy_rules_update_response.md create mode 100644 docs/api/examples/_ip_restrictions_create_request.md create mode 100644 docs/api/examples/_ip_restrictions_create_response.md create mode 100644 docs/api/examples/_ip_restrictions_delete_request.md create mode 100644 docs/api/examples/_ip_restrictions_delete_response.md create mode 100644 docs/api/examples/_ip_restrictions_get_request.md create mode 100644 docs/api/examples/_ip_restrictions_get_response.md create mode 100644 docs/api/examples/_ip_restrictions_list_request.md create mode 100644 docs/api/examples/_ip_restrictions_list_response.md create mode 100644 docs/api/examples/_ip_restrictions_update_request.md create mode 100644 docs/api/examples/_ip_restrictions_update_response.md create mode 100644 docs/api/examples/_reserved_addrs_create_request.md create mode 100644 docs/api/examples/_reserved_addrs_create_response.md create mode 100644 docs/api/examples/_reserved_addrs_delete_endpoint_config_request.md create mode 100644 docs/api/examples/_reserved_addrs_delete_endpoint_config_response.md create mode 100644 docs/api/examples/_reserved_addrs_delete_request.md create mode 100644 docs/api/examples/_reserved_addrs_delete_response.md create mode 100644 docs/api/examples/_reserved_addrs_get_request.md create mode 100644 docs/api/examples/_reserved_addrs_get_response.md create mode 100644 docs/api/examples/_reserved_addrs_list_request.md create mode 100644 docs/api/examples/_reserved_addrs_list_response.md create mode 100644 docs/api/examples/_reserved_addrs_update_request.md create mode 100644 docs/api/examples/_reserved_addrs_update_response.md create mode 100644 docs/api/examples/_reserved_domains_create_request.md create mode 100644 docs/api/examples/_reserved_domains_create_response.md create mode 100644 docs/api/examples/_reserved_domains_delete_certificate_management_policy_request.md create mode 100644 docs/api/examples/_reserved_domains_delete_certificate_management_policy_response.md create mode 100644 docs/api/examples/_reserved_domains_delete_certificate_request.md create mode 100644 docs/api/examples/_reserved_domains_delete_certificate_response.md create mode 100644 docs/api/examples/_reserved_domains_delete_http_endpoint_config_request.md create mode 100644 docs/api/examples/_reserved_domains_delete_http_endpoint_config_response.md create mode 100644 docs/api/examples/_reserved_domains_delete_https_endpoint_config_request.md create mode 100644 docs/api/examples/_reserved_domains_delete_https_endpoint_config_response.md create mode 100644 docs/api/examples/_reserved_domains_delete_request.md create mode 100644 docs/api/examples/_reserved_domains_delete_response.md create mode 100644 docs/api/examples/_reserved_domains_get_request.md create mode 100644 docs/api/examples/_reserved_domains_get_response.md create mode 100644 docs/api/examples/_reserved_domains_list_request.md create mode 100644 docs/api/examples/_reserved_domains_list_response.md create mode 100644 docs/api/examples/_reserved_domains_update_request.md create mode 100644 docs/api/examples/_reserved_domains_update_response.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_create_request.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_create_response.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_delete_request.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_delete_response.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_get_request.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_get_response.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_list_request.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_list_response.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_update_request.md create mode 100644 docs/api/examples/_ssh_certificate_authorities_update_response.md create mode 100644 docs/api/examples/_ssh_credentials_create_request.md create mode 100644 docs/api/examples/_ssh_credentials_create_response.md create mode 100644 docs/api/examples/_ssh_credentials_delete_request.md create mode 100644 docs/api/examples/_ssh_credentials_delete_response.md create mode 100644 docs/api/examples/_ssh_credentials_get_request.md create mode 100644 docs/api/examples/_ssh_credentials_get_response.md create mode 100644 docs/api/examples/_ssh_credentials_list_request.md create mode 100644 docs/api/examples/_ssh_credentials_list_response.md create mode 100644 docs/api/examples/_ssh_credentials_update_request.md create mode 100644 docs/api/examples/_ssh_credentials_update_response.md create mode 100644 docs/api/examples/_ssh_host_certificates_create_request.md create mode 100644 docs/api/examples/_ssh_host_certificates_create_response.md create mode 100644 docs/api/examples/_ssh_host_certificates_delete_request.md create mode 100644 docs/api/examples/_ssh_host_certificates_delete_response.md create mode 100644 docs/api/examples/_ssh_host_certificates_get_request.md create mode 100644 docs/api/examples/_ssh_host_certificates_get_response.md create mode 100644 docs/api/examples/_ssh_host_certificates_list_request.md create mode 100644 docs/api/examples/_ssh_host_certificates_list_response.md create mode 100644 docs/api/examples/_ssh_host_certificates_update_request.md create mode 100644 docs/api/examples/_ssh_host_certificates_update_response.md create mode 100644 docs/api/examples/_ssh_user_certificates_create_request.md create mode 100644 docs/api/examples/_ssh_user_certificates_create_response.md create mode 100644 docs/api/examples/_ssh_user_certificates_delete_request.md create mode 100644 docs/api/examples/_ssh_user_certificates_delete_response.md create mode 100644 docs/api/examples/_ssh_user_certificates_get_request.md create mode 100644 docs/api/examples/_ssh_user_certificates_get_response.md create mode 100644 docs/api/examples/_ssh_user_certificates_list_request.md create mode 100644 docs/api/examples/_ssh_user_certificates_list_response.md create mode 100644 docs/api/examples/_ssh_user_certificates_update_request.md create mode 100644 docs/api/examples/_ssh_user_certificates_update_response.md create mode 100644 docs/api/examples/_static_backends_create_request.md create mode 100644 docs/api/examples/_static_backends_create_response.md create mode 100644 docs/api/examples/_static_backends_delete_request.md create mode 100644 docs/api/examples/_static_backends_delete_response.md create mode 100644 docs/api/examples/_static_backends_get_request.md create mode 100644 docs/api/examples/_static_backends_get_response.md create mode 100644 docs/api/examples/_static_backends_list_request.md create mode 100644 docs/api/examples/_static_backends_list_response.md create mode 100644 docs/api/examples/_static_backends_update_request.md create mode 100644 docs/api/examples/_static_backends_update_response.md create mode 100644 docs/api/examples/_tcp_edge_backend_module_delete_request.md create mode 100644 docs/api/examples/_tcp_edge_backend_module_delete_response.md create mode 100644 docs/api/examples/_tcp_edge_backend_module_get_request.md create mode 100644 docs/api/examples/_tcp_edge_backend_module_get_response.md create mode 100644 docs/api/examples/_tcp_edge_backend_module_replace_request.md create mode 100644 docs/api/examples/_tcp_edge_backend_module_replace_response.md create mode 100644 docs/api/examples/_tcp_edge_ip_restriction_module_delete_request.md create mode 100644 docs/api/examples/_tcp_edge_ip_restriction_module_delete_response.md create mode 100644 docs/api/examples/_tcp_edge_ip_restriction_module_get_request.md create mode 100644 docs/api/examples/_tcp_edge_ip_restriction_module_get_response.md create mode 100644 docs/api/examples/_tcp_edge_ip_restriction_module_replace_request.md create mode 100644 docs/api/examples/_tcp_edge_ip_restriction_module_replace_response.md create mode 100644 docs/api/examples/_tcp_edge_traffic_policy_module_delete_request.md create mode 100644 docs/api/examples/_tcp_edge_traffic_policy_module_delete_response.md create mode 100644 docs/api/examples/_tcp_edge_traffic_policy_module_get_request.md create mode 100644 docs/api/examples/_tcp_edge_traffic_policy_module_get_response.md create mode 100644 docs/api/examples/_tcp_edge_traffic_policy_module_replace_request.md create mode 100644 docs/api/examples/_tcp_edge_traffic_policy_module_replace_response.md create mode 100644 docs/api/examples/_tls_certificates_create_request.md create mode 100644 docs/api/examples/_tls_certificates_create_response.md create mode 100644 docs/api/examples/_tls_certificates_delete_request.md create mode 100644 docs/api/examples/_tls_certificates_delete_response.md create mode 100644 docs/api/examples/_tls_certificates_get_request.md create mode 100644 docs/api/examples/_tls_certificates_get_response.md create mode 100644 docs/api/examples/_tls_certificates_list_request.md create mode 100644 docs/api/examples/_tls_certificates_list_response.md create mode 100644 docs/api/examples/_tls_certificates_update_request.md create mode 100644 docs/api/examples/_tls_certificates_update_response.md create mode 100644 docs/api/examples/_tls_edge_backend_module_delete_request.md create mode 100644 docs/api/examples/_tls_edge_backend_module_delete_response.md create mode 100644 docs/api/examples/_tls_edge_backend_module_get_request.md create mode 100644 docs/api/examples/_tls_edge_backend_module_get_response.md create mode 100644 docs/api/examples/_tls_edge_backend_module_replace_request.md create mode 100644 docs/api/examples/_tls_edge_backend_module_replace_response.md create mode 100644 docs/api/examples/_tls_edge_ip_restriction_module_delete_request.md create mode 100644 docs/api/examples/_tls_edge_ip_restriction_module_delete_response.md create mode 100644 docs/api/examples/_tls_edge_ip_restriction_module_get_request.md create mode 100644 docs/api/examples/_tls_edge_ip_restriction_module_get_response.md create mode 100644 docs/api/examples/_tls_edge_ip_restriction_module_replace_request.md create mode 100644 docs/api/examples/_tls_edge_ip_restriction_module_replace_response.md create mode 100644 docs/api/examples/_tls_edge_mutual_tls_module_delete_request.md create mode 100644 docs/api/examples/_tls_edge_mutual_tls_module_delete_response.md create mode 100644 docs/api/examples/_tls_edge_mutual_tls_module_get_request.md create mode 100644 docs/api/examples/_tls_edge_mutual_tls_module_get_response.md create mode 100644 docs/api/examples/_tls_edge_mutual_tls_module_replace_request.md create mode 100644 docs/api/examples/_tls_edge_mutual_tls_module_replace_response.md create mode 100644 docs/api/examples/_tls_edge_tls_termination_module_delete_request.md create mode 100644 docs/api/examples/_tls_edge_tls_termination_module_delete_response.md create mode 100644 docs/api/examples/_tls_edge_tls_termination_module_get_request.md create mode 100644 docs/api/examples/_tls_edge_tls_termination_module_get_response.md create mode 100644 docs/api/examples/_tls_edge_tls_termination_module_replace_request.md create mode 100644 docs/api/examples/_tls_edge_tls_termination_module_replace_response.md create mode 100644 docs/api/examples/_tls_edge_traffic_policy_module_delete_request.md create mode 100644 docs/api/examples/_tls_edge_traffic_policy_module_delete_response.md create mode 100644 docs/api/examples/_tls_edge_traffic_policy_module_get_request.md create mode 100644 docs/api/examples/_tls_edge_traffic_policy_module_get_response.md create mode 100644 docs/api/examples/_tls_edge_traffic_policy_module_replace_request.md create mode 100644 docs/api/examples/_tls_edge_traffic_policy_module_replace_response.md create mode 100644 docs/api/examples/_tunnel_group_backends_create_request.md create mode 100644 docs/api/examples/_tunnel_group_backends_create_response.md create mode 100644 docs/api/examples/_tunnel_group_backends_delete_request.md create mode 100644 docs/api/examples/_tunnel_group_backends_delete_response.md create mode 100644 docs/api/examples/_tunnel_group_backends_get_request.md create mode 100644 docs/api/examples/_tunnel_group_backends_get_response.md create mode 100644 docs/api/examples/_tunnel_group_backends_list_request.md create mode 100644 docs/api/examples/_tunnel_group_backends_list_response.md create mode 100644 docs/api/examples/_tunnel_group_backends_update_request.md create mode 100644 docs/api/examples/_tunnel_group_backends_update_response.md create mode 100644 docs/api/examples/_tunnel_sessions_get_request.md create mode 100644 docs/api/examples/_tunnel_sessions_get_response.md create mode 100644 docs/api/examples/_tunnel_sessions_list_request.md create mode 100644 docs/api/examples/_tunnel_sessions_list_response.md create mode 100644 docs/api/examples/_tunnel_sessions_restart_request.md create mode 100644 docs/api/examples/_tunnel_sessions_restart_response.md create mode 100644 docs/api/examples/_tunnel_sessions_stop_request.md create mode 100644 docs/api/examples/_tunnel_sessions_stop_response.md create mode 100644 docs/api/examples/_tunnel_sessions_update_request.md create mode 100644 docs/api/examples/_tunnel_sessions_update_response.md create mode 100644 docs/api/examples/_tunnels_get_request.md create mode 100644 docs/api/examples/_tunnels_get_response.md create mode 100644 docs/api/examples/_tunnels_list_request.md create mode 100644 docs/api/examples/_tunnels_list_response.md create mode 100644 docs/api/examples/_weighted_backends_create_request.md create mode 100644 docs/api/examples/_weighted_backends_create_response.md create mode 100644 docs/api/examples/_weighted_backends_delete_request.md create mode 100644 docs/api/examples/_weighted_backends_delete_response.md create mode 100644 docs/api/examples/_weighted_backends_get_request.md create mode 100644 docs/api/examples/_weighted_backends_get_response.md create mode 100644 docs/api/examples/_weighted_backends_list_request.md create mode 100644 docs/api/examples/_weighted_backends_list_response.md create mode 100644 docs/api/examples/_weighted_backends_update_request.md create mode 100644 docs/api/examples/_weighted_backends_update_response.md create mode 100644 docs/errors/err_ngrok_1022.mdx create mode 100644 docs/errors/err_ngrok_1023.mdx create mode 100644 docs/errors/err_ngrok_1024.mdx create mode 100644 docs/errors/err_ngrok_1025.mdx create mode 100644 docs/errors/err_ngrok_1026.mdx create mode 100644 docs/errors/err_ngrok_1027.mdx create mode 100644 docs/errors/err_ngrok_1028.mdx create mode 100644 docs/errors/err_ngrok_1029.mdx create mode 100644 docs/errors/err_ngrok_1030.mdx create mode 100644 docs/errors/err_ngrok_1031.mdx create mode 100644 docs/errors/err_ngrok_1032.mdx create mode 100644 docs/errors/err_ngrok_15008.mdx create mode 100644 docs/errors/err_ngrok_15009.mdx create mode 100644 docs/errors/err_ngrok_18010.mdx create mode 100644 docs/errors/err_ngrok_18011.mdx create mode 100644 docs/errors/err_ngrok_18012.mdx create mode 100644 docs/errors/err_ngrok_18013.mdx create mode 100644 docs/errors/err_ngrok_2087.mdx create mode 100644 docs/errors/err_ngrok_2236.mdx create mode 100644 docs/errors/err_ngrok_2237.mdx create mode 100644 docs/obs/_item-paging.md diff --git a/docs/agent/cli-api.mdx b/docs/agent/cli-api.mdx new file mode 100644 index 000000000..224792746 --- /dev/null +++ b/docs/agent/cli-api.mdx @@ -0,0 +1,8160 @@ +--- +title: CLI API Commands +toc_max_heading_level: 2 +--- + +{/* This file is generated. Do not edit it directly. The templates can be edited in the ngrok-private repo */} + +# ngrok Agent CLI API Commands + +With the ngrok agent CLI, you can use built-in commands to interact with the ngrok API. +For more information about the ngrok API and interfacing with it directly, see see [the ngrok api page](../api). + +:::tip + +If you want to programmatically control the ngrok agent, the [Agent +SDKs](/agent-sdks/) are usually a more flexible and powerful choice. + +::: + +## ngrok api + +The api command provides access to ngrok's API. You can use the API through +one of the api subcommmands. + +All api subcommands require an API key. You can configure it either through +a command flag (--api-key) or add it in ngrok's configuration file (api_key). + +You can get get the initial API key at https://dashboard.ngrok.com/api. +Additional keys can be created through 'ngrok api api-key create' subcommand. + +### SubCommands + +| Command | Description | +| --------------------------------------------------------------------- | ---------------------------------------------------------------------- | +| [abuse-reports](#ngrok-api-abuse-reports) | Abuse Reports allow you to submit take-down requests for URLs hoste... | +| [agent-ingresses](#ngrok-api-agent-ingresses) | | +| [api-keys](#ngrok-api-api-keys) | API Keys are used to authenticate to the ngrok | +| API (https://ngrok.... | +| [application-sessions](#ngrok-api-application-sessions) | | +| [application-users](#ngrok-api-application-users) | | +| [backends](#ngrok-api-backends) | | +| [bot-users](#ngrok-api-bot-users) | | +| [certificate-authorities](#ngrok-api-certificate-authorities) | Certificate Authorities are x509 certificates that are used to sign... | +| [credentials](#ngrok-api-credentials) | Tunnel Credentials are ngrok agent authtokens. They authorize the n... | +| [edge-modules](#ngrok-api-edge-modules) | | +| [edges](#ngrok-api-edges) | | +| [endpoint-configurations](#ngrok-api-endpoint-configurations) | Endpoint Configurations are a reusable group of modules that encaps... | +| [endpoints](#ngrok-api-endpoints) | Endpoints provides an API for querying the endpoint objects | +| which ... | +| [event-destinations](#ngrok-api-event-destinations) | | +| [event-sources](#ngrok-api-event-sources) | | +| [event-subscriptions](#ngrok-api-event-subscriptions) | | +| [ip-policies](#ngrok-api-ip-policies) | IP Policies are reusable groups of CIDR ranges with an allow or den... | +| [ip-policy-rules](#ngrok-api-ip-policy-rules) | IP Policy Rules are the IPv4 or IPv6 CIDRs entries that | +| make up an... | +| [ip-restrictions](#ngrok-api-ip-restrictions) | An IP restriction is a restriction placed on the CIDRs that are all... | +| [kubernetes-operators](#ngrok-api-kubernetes-operators) | KubernetesOperators is used by the Kubernetes Operator to register ... | +| [pointcfg-module](#ngrok-api-pointcfg-module) | | +| [reserved-addrs](#ngrok-api-reserved-addrs) | Reserved Addresses are TCP addresses that can be used to listen for... | +| [reserved-domains](#ngrok-api-reserved-domains) | Reserved Domains are hostnames that you can listen for traffic on. ... | +| [root](#ngrok-api-root) | | +| [ssh-certificate-authorities](#ngrok-api-ssh-certificate-authorities) | An SSH Certificate Authority is a pair of an SSH Certificate and it... | +| [ssh-credentials](#ngrok-api-ssh-credentials) | SSH Credentials are SSH public keys that can be used to start SSH t... | +| [ssh-host-certificates](#ngrok-api-ssh-host-certificates) | SSH Host Certificates along with the corresponding private key allo... | +| [ssh-user-certificates](#ngrok-api-ssh-user-certificates) | SSH User Certificates are presented by SSH clients when connecting ... | +| [tls-certificates](#ngrok-api-tls-certificates) | TLS Certificates are pairs of x509 certificates and their matching ... | +| [tunnel-sessions](#ngrok-api-tunnel-sessions) | Tunnel Sessions represent instances of ngrok agents or SSH reverse ... | +| [tunnels](#ngrok-api-tunnels) | Tunnels provide endpoints to access services exposed by a running n... | + +### Flags + +| Flag | Description | +| ---------- | ------------------------------------------------- | +| `--config` | path to config files; they are merged if multiple | + +## ngrok api abuse-reports + +Abuse Reports allow you to submit take-down requests for URLs hosted by +ngrok that violate ngrok's terms of service. + +### SubCommands + +| Command | Description | +| ----------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-abuse-reports-create) | Creates a new abuse report which will be review... | +| [get](#ngrok-api-abuse-reports-get) | Get the detailed status of abuse report by ID. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api abuse-reports create + +Creates a new abuse report which will be reviewed by our system and abuse response team. This API is only available to authorized accounts. Contact abuse@ngrok.com to request access + +### Usage + +```sh +ngrok api abuse-reports create [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------------------------------ | +| `--metadata` | arbitrary user-defined data about this abuse report. Optional, max 4096 bytes. | +| `--urls` | a list of URLs containing suspected abusive content | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api abuse-reports get + +Get the detailed status of abuse report by ID. + +### Usage + +```sh +ngrok api abuse-reports get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api agent-ingresses + +### SubCommands + +| Command | Description | +| ------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-agent-ingresses-create) | Create a new Agent Ingress. The ngrok agent can... | +| [delete](#ngrok-api-agent-ingresses-delete) | Delete an Agent Ingress by ID | +| [get](#ngrok-api-agent-ingresses-get) | Get the details of an Agent Ingress by ID. | +| [list](#ngrok-api-agent-ingresses-list) | List all Agent Ingresses owned by this account | +| [update](#ngrok-api-agent-ingresses-update) | Update attributes of an Agent Ingress by ID. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api agent-ingresses create + +Create a new Agent Ingress. The ngrok agent can be configured to connect to ngrok via the new set of addresses on the returned Agent Ingress. + +### Usage + +```sh +ngrok api agent-ingresses create [flags] +``` + +### Flags + +| Flag | Description | +| -------------------------------------------------- | ------------------------------------------------------------------------------------------------------ | +| `--certificate-management-policy.authority` | certificate authority to request certificates from. The only supported value is letsencrypt. | +| `--certificate-management-policy.private-key-type` | type of private key to use when requesting certificates. Defaults to rsa, can be either rsa or ecdsa. | +| `--description` | human-readable description of the use of this Agent Ingress. optional, max 255 bytes. | +| `--domain` | the domain that you own to be used as the base domain name to generate regional agent ingress domains. | +| `--metadata` | arbitrary user-defined machine-readable data of this Agent Ingress. optional, max 4096 bytes | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api agent-ingresses delete + +Delete an Agent Ingress by ID + +### Usage + +```sh +ngrok api agent-ingresses delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api agent-ingresses get + +Get the details of an Agent Ingress by ID. + +### Usage + +```sh +ngrok api agent-ingresses get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api agent-ingresses list + +List all Agent Ingresses owned by this account + +### Usage + +```sh +ngrok api agent-ingresses list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api agent-ingresses update + +Update attributes of an Agent Ingress by ID. + +### Usage + +```sh +ngrok api agent-ingresses update [flags] +``` + +### Flags + +| Flag | Description | +| -------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | +| `--certificate-management-policy.authority` | certificate authority to request certificates from. The only supported value is letsencrypt. | +| `--certificate-management-policy.private-key-type` | type of private key to use when requesting certificates. Defaults to rsa, can be either rsa or ecdsa. | +| `--description` | human-readable description of the use of this Agent Ingress. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this Agent Ingress. optional, max 4096 bytes | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api api-keys + +API Keys are used to authenticate to the ngrok +API (https://ngrok.com/docs/api#authentication). You may use the API itself +to provision and manage API Keys but you'll need to provision your first API +key from the API Keys page (https://dashboard.ngrok.com/api/keys) on your +ngrok.com dashboard. + +### SubCommands + +| Command | Description | +| ------------------------------------ | -------------------------------------------------- | +| [create](#ngrok-api-api-keys-create) | Create a new API key. The generated API key can... | +| [delete](#ngrok-api-api-keys-delete) | Delete an API key by ID | +| [get](#ngrok-api-api-keys-get) | Get the details of an API key by ID. | +| [list](#ngrok-api-api-keys-list) | List all API keys owned by this account | +| [update](#ngrok-api-api-keys-update) | Update attributes of an API key by ID. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api api-keys create + +Create a new API key. The generated API key can be used to authenticate to the ngrok API. + +### Usage + +```sh +ngrok api api-keys create [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of what uses the API key to authenticate. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined data of this API key. optional, max 4096 bytes | +| `--owner-email` | If supplied at credential creation, ownership will be assigned to the specified User. Only admins may specify an owner other than themselves. Both owner_id and owner_email may not be specified. | +| `--owner-id` | If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api api-keys delete + +Delete an API key by ID + +### Usage + +```sh +ngrok api api-keys delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api api-keys get + +Get the details of an API key by ID. + +### Usage + +```sh +ngrok api api-keys get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api api-keys list + +List all API keys owned by this account + +### Usage + +```sh +ngrok api api-keys list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api api-keys update + +Update attributes of an API key by ID. + +### Usage + +```sh +ngrok api api-keys update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | --------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of what uses the API key to authenticate. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined data of this API key. optional, max 4096 bytes | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api application-sessions + +### SubCommands + +| Command | Description | +| ------------------------------------------------ | ----------------------------------------------- | +| [delete](#ngrok-api-application-sessions-delete) | Delete an application session by ID. | +| [get](#ngrok-api-application-sessions-get) | Get an application session by ID. | +| [list](#ngrok-api-application-sessions-list) | List all application sessions for this account. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api application-sessions delete + +Delete an application session by ID. + +### Usage + +```sh +ngrok api application-sessions delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api application-sessions get + +Get an application session by ID. + +### Usage + +```sh +ngrok api application-sessions get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api application-sessions list + +List all application sessions for this account. + +### Usage + +```sh +ngrok api application-sessions list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api application-users + +### SubCommands + +| Command | Description | +| --------------------------------------------- | -------------------------------------------- | +| [delete](#ngrok-api-application-users-delete) | Delete an application user by ID. | +| [get](#ngrok-api-application-users-get) | Get an application user by ID. | +| [list](#ngrok-api-application-users-list) | List all application users for this account. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api application-users delete + +Delete an application user by ID. + +### Usage + +```sh +ngrok api application-users delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api application-users get + +Get an application user by ID. + +### Usage + +```sh +ngrok api application-users get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api application-users list + +List all application users for this account. + +### Usage + +```sh +ngrok api application-users list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends + +### SubCommands + +| Command | Description | +| ---------------------------------------------------- | ---------------------------------------------------------------------- | +| [failover](#ngrok-api-backends-failover) | A Failover backend defines failover behavior within a list of refer... | +| [http-response](#ngrok-api-backends-http-response) | | +| [static-address](#ngrok-api-backends-static-address) | A static backend sends traffic to a TCP address (hostname and port)... | +| [tunnel-group](#ngrok-api-backends-tunnel-group) | A Tunnel Group Backend balances traffic among all online tunnels th... | +| [weighted](#ngrok-api-backends-weighted) | A Weighted Backend balances traffic among the referenced backends. ... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends failover + +A Failover backend defines failover behavior within a list of referenced +backends. Traffic is sent to the first backend in the list. If that backend +is offline or no connection can be established, ngrok attempts to connect to +the next backend in the list until one is successful. + +### SubCommands + +| Command | Description | +| --------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-backends-failover-create) | Create a new Failover backend | +| [delete](#ngrok-api-backends-failover-delete) | Delete a Failover backend by ID. | +| [get](#ngrok-api-backends-failover-get) | Get detailed information about a Failover backe... | +| [list](#ngrok-api-backends-failover-list) | List all Failover backends on this account | +| [update](#ngrok-api-backends-failover-update) | Update Failover backend by ID | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends failover create + +Create a new Failover backend + +### Usage + +```sh +ngrok api backends failover create [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--backends` | the ids of the child backends in order | +| `--description` | human-readable description of this backend. Optional | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends failover delete + +Delete a Failover backend by ID. + +### Usage + +```sh +ngrok api backends failover delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends failover get + +Get detailed information about a Failover backend by ID + +### Usage + +```sh +ngrok api backends failover get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends failover list + +List all Failover backends on this account + +### Usage + +```sh +ngrok api backends failover list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends failover update + +Update Failover backend by ID + +### Usage + +```sh +ngrok api backends failover update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--backends` | the ids of the child backends in order | +| `--description` | human-readable description of this backend. Optional | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends http-response + +### SubCommands + +| Command | Description | +| -------------------------------------------------- | ----------- | +| [create](#ngrok-api-backends-http-response-create) | | +| [delete](#ngrok-api-backends-http-response-delete) | | +| [get](#ngrok-api-backends-http-response-get) | | +| [list](#ngrok-api-backends-http-response-list) | | +| [update](#ngrok-api-backends-http-response-update) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends http-response create + +### Usage + +```sh +ngrok api backends http-response create [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--body` | body to return as fixed content | +| `--description` | human-readable description of this backend. Optional | +| `--headers` | headers to return | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--status-code` | status code to return | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends http-response delete + +### Usage + +```sh +ngrok api backends http-response delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends http-response get + +### Usage + +```sh +ngrok api backends http-response get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends http-response list + +### Usage + +```sh +ngrok api backends http-response list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends http-response update + +### Usage + +```sh +ngrok api backends http-response update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--body` | body to return as fixed content | +| `--description` | human-readable description of this backend. Optional | +| `--headers` | headers to return | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--status-code` | status code to return | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends static-address + +A static backend sends traffic to a TCP address (hostname and port) that +is reachable on the public internet. + +### SubCommands + +| Command | Description | +| --------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-backends-static-address-create) | Create a new static backend | +| [delete](#ngrok-api-backends-static-address-delete) | Delete a static backend by ID. | +| [get](#ngrok-api-backends-static-address-get) | Get detailed information about a static backend... | +| [list](#ngrok-api-backends-static-address-list) | List all static backends on this account | +| [update](#ngrok-api-backends-static-address-update) | Update static backend by ID | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends static-address create + +Create a new static backend + +### Usage + +```sh +ngrok api backends static-address create [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--address` | the address to forward to | +| `--description` | human-readable description of this backend. Optional | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--tls.enabled` | if TLS is checked | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends static-address delete + +Delete a static backend by ID. + +### Usage + +```sh +ngrok api backends static-address delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends static-address get + +Get detailed information about a static backend by ID + +### Usage + +```sh +ngrok api backends static-address get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends static-address list + +List all static backends on this account + +### Usage + +```sh +ngrok api backends static-address list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends static-address update + +Update static backend by ID + +### Usage + +```sh +ngrok api backends static-address update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--address` | the address to forward to | +| `--description` | human-readable description of this backend. Optional | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--tls.enabled` | if TLS is checked | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends tunnel-group + +A Tunnel Group Backend balances traffic among all online tunnels that match +a label selector. + +### SubCommands + +| Command | Description | +| ------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-backends-tunnel-group-create) | Create a new TunnelGroup backend | +| [delete](#ngrok-api-backends-tunnel-group-delete) | Delete a TunnelGroup backend by ID. | +| [get](#ngrok-api-backends-tunnel-group-get) | Get detailed information about a TunnelGroup ba... | +| [list](#ngrok-api-backends-tunnel-group-list) | List all TunnelGroup backends on this account | +| [update](#ngrok-api-backends-tunnel-group-update) | Update TunnelGroup backend by ID | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends tunnel-group create + +Create a new TunnelGroup backend + +### Usage + +```sh +ngrok api backends tunnel-group create [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--description` | human-readable description of this backend. Optional | +| `--labels` | labels to watch for tunnels on, e.g. app->foo, dc->bar | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends tunnel-group delete + +Delete a TunnelGroup backend by ID. + +### Usage + +```sh +ngrok api backends tunnel-group delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends tunnel-group get + +Get detailed information about a TunnelGroup backend by ID + +### Usage + +```sh +ngrok api backends tunnel-group get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends tunnel-group list + +List all TunnelGroup backends on this account + +### Usage + +```sh +ngrok api backends tunnel-group list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends tunnel-group update + +Update TunnelGroup backend by ID + +### Usage + +```sh +ngrok api backends tunnel-group update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--description` | human-readable description of this backend. Optional | +| `--labels` | labels to watch for tunnels on, e.g. app->foo, dc->bar | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends weighted + +A Weighted Backend balances traffic among the referenced backends. Traffic +is assigned proportionally to each based on its weight. The percentage of +traffic is calculated by dividing a backend's weight by the sum of all +weights. + +### SubCommands + +| Command | Description | +| --------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-backends-weighted-create) | Create a new Weighted backend | +| [delete](#ngrok-api-backends-weighted-delete) | Delete a Weighted backend by ID. | +| [get](#ngrok-api-backends-weighted-get) | Get detailed information about a Weighted backe... | +| [list](#ngrok-api-backends-weighted-list) | List all Weighted backends on this account | +| [update](#ngrok-api-backends-weighted-update) | Update Weighted backend by ID | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends weighted create + +Create a new Weighted backend + +### Usage + +```sh +ngrok api backends weighted create [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--backends` | the ids of the child backends to their weights [0-10000] | +| `--description` | human-readable description of this backend. Optional | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends weighted delete + +Delete a Weighted backend by ID. + +### Usage + +```sh +ngrok api backends weighted delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends weighted get + +Get detailed information about a Weighted backend by ID + +### Usage + +```sh +ngrok api backends weighted get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends weighted list + +List all Weighted backends on this account + +### Usage + +```sh +ngrok api backends weighted list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api backends weighted update + +Update Weighted backend by ID + +### Usage + +```sh +ngrok api backends weighted update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------- | +| `--backends` | the ids of the child backends to their weights [0-10000] | +| `--description` | human-readable description of this backend. Optional | +| `--metadata` | arbitrary user-defined machine-readable data of this backend. Optional | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api bot-users + +### SubCommands + +| Command | Description | +| ------------------------------------- | -------------------------------------- | +| [create](#ngrok-api-bot-users-create) | Create a new bot user | +| [delete](#ngrok-api-bot-users-delete) | Delete a bot user by ID | +| [get](#ngrok-api-bot-users-get) | Get the details of a Bot User by ID. | +| [list](#ngrok-api-bot-users-list) | List all bot users in this account. | +| [update](#ngrok-api-bot-users-update) | Update attributes of a bot user by ID. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api bot-users create + +Create a new bot user + +### Usage + +```sh +ngrok api bot-users create [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--active` | whether or not the bot is active | +| `--name` | human-readable name used to identify the bot | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api bot-users delete + +Delete a bot user by ID + +### Usage + +```sh +ngrok api bot-users delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api bot-users get + +Get the details of a Bot User by ID. + +### Usage + +```sh +ngrok api bot-users get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api bot-users list + +List all bot users in this account. + +### Usage + +```sh +ngrok api bot-users list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api bot-users update + +Update attributes of a bot user by ID. + +### Usage + +```sh +ngrok api bot-users update [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--active` | whether or not the bot is active | +| `--name` | human-readable name used to identify the bot | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api certificate-authorities + +Certificate Authorities are x509 certificates that are used to sign other +x509 certificates. Attach a Certificate Authority to the Mutual TLS module +to verify that the TLS certificate presented by a client has been signed by +this CA. Certificate Authorities are used only for mTLS validation only and +thus a private key is not included in the resource. + +### SubCommands + +| Command | Description | +| --------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-certificate-authorities-create) | Upload a new Certificate Authority | +| [delete](#ngrok-api-certificate-authorities-delete) | Delete a Certificate Authority | +| [get](#ngrok-api-certificate-authorities-get) | Get detailed information about a certficate aut... | +| [list](#ngrok-api-certificate-authorities-list) | List all Certificate Authority on this account | +| [update](#ngrok-api-certificate-authorities-update) | Update attributes of a Certificate Authority by... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api certificate-authorities create + +Upload a new Certificate Authority + +### Usage + +```sh +ngrok api certificate-authorities create [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ----------------------------------------------------------------------------------------------------- | +| `--ca-pem` | raw PEM of the Certificate Authority | +| `--description` | human-readable description of this Certificate Authority. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this Certificate Authority. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api certificate-authorities delete + +Delete a Certificate Authority + +### Usage + +```sh +ngrok api certificate-authorities delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api certificate-authorities get + +Get detailed information about a certficate authority + +### Usage + +```sh +ngrok api certificate-authorities get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api certificate-authorities list + +List all Certificate Authority on this account + +### Usage + +```sh +ngrok api certificate-authorities list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api certificate-authorities update + +Update attributes of a Certificate Authority by ID + +### Usage + +```sh +ngrok api certificate-authorities update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ----------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of this Certificate Authority. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this Certificate Authority. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api credentials + +Tunnel Credentials are ngrok agent authtokens. They authorize the ngrok +agent to connect the ngrok service as your account. They are installed with +the ngrok config add-authtoken command or by specifying it in the ngrok.yml +configuration file with the authtoken property. + +### SubCommands + +| Command | Description | +| --------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-credentials-create) | Create a new tunnel authtoken credential. This ... | +| [delete](#ngrok-api-credentials-delete) | Delete a tunnel authtoken credential by ID | +| [get](#ngrok-api-credentials-get) | Get detailed information about a tunnel authtok... | +| [list](#ngrok-api-credentials-list) | List all tunnel authtoken credentials on this a... | +| [update](#ngrok-api-credentials-update) | Update attributes of an tunnel authtoken creden... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api credentials create + +Create a new tunnel authtoken credential. This authtoken credential can be used to start a new tunnel session. The response to this API call is the only time the generated token is available. If you need it for future use, you must save it securely yourself. + +### Usage + +```sh +ngrok api credentials create [flags] +``` + +### Flags + +| Flag | Description | +| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--acl` | optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the bind rule. The bind rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule bind:example.ngrok.io. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of bind:_.example.com which will allow x.example.com, y.example.com, _.example.com, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of bind:_=example which will allow x=example, y=example, etc. A rule of '_' is equivalent to no acl at all and will explicitly permit all actions. | +| `--description` | human-readable description of who or what will use the credential to authenticate. Optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this credential. Optional, max 4096 bytes. | +| `--owner-email` | If supplied at credential creation, ownership will be assigned to the specified User. Only admins may specify an owner other than themselves. Both owner_id and owner_email may not be specified. | +| `--owner-id` | If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot. | +| `--precomputed-token` | Only authorized accounts may supply a pre-computed token that will be associated with the created credentials. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api credentials delete + +Delete a tunnel authtoken credential by ID + +### Usage + +```sh +ngrok api credentials delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api credentials get + +Get detailed information about a tunnel authtoken credential + +### Usage + +```sh +ngrok api credentials get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api credentials list + +List all tunnel authtoken credentials on this account + +### Usage + +```sh +ngrok api credentials list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api credentials update + +Update attributes of an tunnel authtoken credential by ID + +### Usage + +```sh +ngrok api credentials update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--acl` | optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the bind rule. The bind rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule bind:example.ngrok.io. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of bind:_.example.com which will allow x.example.com, y.example.com, _.example.com, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of bind:_=example which will allow x=example, y=example, etc. A rule of '_' is equivalent to no acl at all and will explicitly permit all actions. | +| `--description` | human-readable description of who or what will use the credential to authenticate. Optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this credential. Optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------------------------------------------------------ | ----------- | +| [https-edge-mutual-tls](#ngrok-api-edge-modules-https-edge-mutual-tls) | | +| [https-edge-route-backend](#ngrok-api-edge-modules-https-edge-route-backend) | | +| [https-edge-route-circuit-breaker](#ngrok-api-edge-modules-https-edge-route-circuit-breaker) | | +| [https-edge-route-compression](#ngrok-api-edge-modules-https-edge-route-compression) | | +| [https-edge-route-ip-restriction](#ngrok-api-edge-modules-https-edge-route-ip-restriction) | | +| [https-edge-route-oauth](#ngrok-api-edge-modules-https-edge-route-oauth) | | +| [https-edge-route-oidc](#ngrok-api-edge-modules-https-edge-route-oidc) | | +| [https-edge-route-request-headers](#ngrok-api-edge-modules-https-edge-route-request-headers) | | +| [https-edge-route-response-headers](#ngrok-api-edge-modules-https-edge-route-response-headers) | | +| [https-edge-route-saml](#ngrok-api-edge-modules-https-edge-route-saml) | | +| [https-edge-route-traffic-policy](#ngrok-api-edge-modules-https-edge-route-traffic-policy) | | +| [https-edge-route-user-agent-filter](#ngrok-api-edge-modules-https-edge-route-user-agent-filter) | | +| [https-edge-route-webhook-verification](#ngrok-api-edge-modules-https-edge-route-webhook-verification) | | +| [https-edge-route-websocket-tcp-converter](#ngrok-api-edge-modules-https-edge-route-websocket-tcp-converter) | | +| [https-edge-tls-termination](#ngrok-api-edge-modules-https-edge-tls-termination) | | +| [tcp-edge-backend](#ngrok-api-edge-modules-tcp-edge-backend) | | +| [tcp-edge-ip-restriction](#ngrok-api-edge-modules-tcp-edge-ip-restriction) | | +| [tcp-edge-traffic-policy](#ngrok-api-edge-modules-tcp-edge-traffic-policy) | | +| [tls-edge-backend](#ngrok-api-edge-modules-tls-edge-backend) | | +| [tls-edge-ip-restriction](#ngrok-api-edge-modules-tls-edge-ip-restriction) | | +| [tls-edge-mutual-tls](#ngrok-api-edge-modules-tls-edge-mutual-tls) | | +| [tls-edge-tls-termination](#ngrok-api-edge-modules-tls-edge-tls-termination) | | +| [tls-edge-traffic-policy](#ngrok-api-edge-modules-tls-edge-traffic-policy) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-mutual-tls + +### SubCommands + +| Command | Description | +| ---------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-mutual-tls-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-mutual-tls-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-mutual-tls-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-mutual-tls delete + +### Usage + +```sh +ngrok api edge-modules https-edge-mutual-tls delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-mutual-tls get + +### Usage + +```sh +ngrok api edge-modules https-edge-mutual-tls get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-mutual-tls replace + +### Usage + +```sh +ngrok api edge-modules https-edge-mutual-tls replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.certificate-authority-ids` | list of certificate authorities that will be used to validate the TLS client certificate presented by the initiator of the TLS connection | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-backend + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-backend-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-backend-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-backend-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-backend delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-backend delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-backend get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-backend get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-backend replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-backend replace [flags] +``` + +### Flags + +| Flag | Description | +| --------------------- | -------------------------------------------------------------------------------------------- | +| `--module.backend-id` | backend to be used to back this endpoint | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-circuit-breaker + +### SubCommands + +| Command | Description | +| --------------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-circuit-breaker-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-circuit-breaker-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-circuit-breaker-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-circuit-breaker delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-circuit-breaker delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-circuit-breaker get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-circuit-breaker get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-circuit-breaker replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-circuit-breaker replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------------------- | ------------------------------------------------------------------------------------------------------------ | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.error-threshold-percentage` | Error threshold percentage should be between 0 - 1.0, not 0-100.0 | +| `--module.num-buckets` | Integer number of buckets into which metrics are retained. Max 128. | +| `--module.rolling-window` | Integer number of seconds in the statistical rolling window that metrics are retained for. | +| `--module.tripped-duration` | Integer number of seconds after which the circuit is tripped to wait before re-evaluating upstream health | +| `--module.volume-threshold` | Integer number of requests in a rolling window that will trip the circuit. Helpful if traffic volume is low. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-compression + +### SubCommands + +| Command | Description | +| ----------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-compression-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-compression-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-compression-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-compression delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-compression delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-compression get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-compression get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-compression replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-compression replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | -------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-ip-restriction + +### SubCommands + +| Command | Description | +| -------------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-ip-restriction-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-ip-restriction-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-ip-restriction-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-ip-restriction delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-ip-restriction delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-ip-restriction get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-ip-restriction get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-ip-restriction replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-ip-restriction replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------ | --------------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-oauth + +### SubCommands + +| Command | Description | +| ----------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-oauth-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-oauth-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-oauth-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-oauth delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-oauth delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-oauth get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-oauth get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-oauth replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-oauth replace [flags] +``` + +### Flags + +| Flag | Description | +| --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.auth-check-interval` | Integer number of seconds after which ngrok guarantees it will refresh user state from the identity provider and recheck whether the user is still authorized to access the endpoint. This is the preferred tunable to use to enforce a minimum amount of time after which a revoked user will no longer be able to access the resource. | +| `--module.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--module.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--module.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--module.provider.amazon.client-id` | | +| `--module.provider.amazon.client-secret` | | +| `--module.provider.amazon.email-addresses` | | +| `--module.provider.amazon.email-domains` | | +| `--module.provider.amazon.scopes` | | +| `--module.provider.facebook.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--module.provider.facebook.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--module.provider.facebook.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.facebook.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.facebook.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--module.provider.github.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--module.provider.github.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--module.provider.github.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.github.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.github.organizations` | a list of github org identifiers. users who are members of any of the listed organizations will be allowed access. identifiers should be the organization's 'slug' | +| `--module.provider.github.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--module.provider.github.teams` | a list of github teams identifiers. users will be allowed access to the endpoint if they are a member of any of these teams. identifiers should be in the 'slug' format qualified with the org name, e.g. org-name/team-name | +| `--module.provider.gitlab.client-id` | | +| `--module.provider.gitlab.client-secret` | | +| `--module.provider.gitlab.email-addresses` | | +| `--module.provider.gitlab.email-domains` | | +| `--module.provider.gitlab.scopes` | | +| `--module.provider.google.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--module.provider.google.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--module.provider.google.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.google.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.google.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--module.provider.linkedin.client-id` | | +| `--module.provider.linkedin.client-secret` | | +| `--module.provider.linkedin.email-addresses` | | +| `--module.provider.linkedin.email-domains` | | +| `--module.provider.linkedin.scopes` | | +| `--module.provider.microsoft.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--module.provider.microsoft.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--module.provider.microsoft.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.microsoft.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.microsoft.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--module.provider.twitch.client-id` | | +| `--module.provider.twitch.client-secret` | | +| `--module.provider.twitch.email-addresses` | | +| `--module.provider.twitch.email-domains` | | +| `--module.provider.twitch.scopes` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-oidc + +### SubCommands + +| Command | Description | +| ---------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-oidc-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-oidc-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-oidc-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-oidc delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-oidc delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-oidc get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-oidc get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-oidc replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-oidc replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.client-id` | The OIDC app's client ID and OIDC audience. | +| `--module.client-secret` | The OIDC app's client secret. | +| `--module.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--module.issuer` | URL of the OIDC "OpenID provider". This is the base URL used for discovery. | +| `--module.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--module.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--module.scopes` | The set of scopes to request from the OIDC identity provider. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-request-headers + +### SubCommands + +| Command | Description | +| --------------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-request-headers-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-request-headers-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-request-headers-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-request-headers delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-request-headers delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-request-headers get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-request-headers get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-request-headers replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-request-headers replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | +| `--module.add` | a map of header key to header value that will be injected into the HTTP Request before being sent to the upstream application server | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.remove` | a list of header names that will be removed from the HTTP Request before being sent to the upstream application server | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-response-headers + +### SubCommands + +| Command | Description | +| ---------------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-response-headers-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-response-headers-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-response-headers-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-response-headers delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-response-headers delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-response-headers get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-response-headers get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-response-headers replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-response-headers replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | ------------------------------------------------------------------------------------------------------------ | +| `--module.add` | a map of header key to header value that will be injected into the HTTP Response returned to the HTTP client | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.remove` | a list of header names that will be removed from the HTTP Response returned to the HTTP client | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-saml + +### SubCommands + +| Command | Description | +| ---------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-saml-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-saml-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-saml-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-saml delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-saml delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-saml get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-saml get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-saml replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-saml replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.allow-idp-initiated` | If true, the IdP may initiate a login directly (e.g. the user does not need to visit the endpoint first and then be redirected). The IdP should set the RelayState parameter to the target URL of the resource they want the user to be redirected to after the SAML login assertion has been processed. | +| `--module.authorized-groups` | If present, only users who are a member of one of the listed groups may access the target endpoint. | +| `--module.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.force-authn` | If true, indicates that whenever we redirect a user to the IdP for authentication that the IdP must prompt the user for authentication credentials even if the user already has a valid session with the IdP. | +| `--module.idp-metadata` | The full XML IdP EntityDescriptor. Your IdP may provide this to you as a a file to download or as a URL. | +| `--module.idp-metadata-url` | The IdP's metadata URL which returns the XML IdP EntityDescriptor. The IdP's metadata URL specifies how to connect to the IdP as well as its public key which is then used to validate the signature on incoming SAML assertions to the ACS endpoint. | +| `--module.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--module.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--module.nameid-format` | Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value of urn:oasis:names:tc:SAML:2.0:nameid-format:persistent will be used. A subset of the allowed values enumerated by the SAML specification are supported. | +| `--module.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-traffic-policy + +### SubCommands + +| Command | Description | +| -------------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-traffic-policy-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-traffic-policy-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-traffic-policy-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-traffic-policy delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-traffic-policy delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-traffic-policy get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-traffic-policy get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-traffic-policy replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-traffic-policy replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | -------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.value` | the traffic policy that should be applied to the traffic on your endpoint. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-user-agent-filter + +### SubCommands + +| Command | Description | +| ----------------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-user-agent-filter-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-user-agent-filter-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-user-agent-filter-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-user-agent-filter delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-user-agent-filter delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-user-agent-filter get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-user-agent-filter get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-user-agent-filter replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-user-agent-filter replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | ------------------------------------------------------- | +| `--module.allow` | | +| `--module.deny` | | +| `--module.enabled` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-webhook-verification + +### SubCommands + +| Command | Description | +| -------------------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-webhook-verification-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-webhook-verification-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-webhook-verification-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-webhook-verification delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-webhook-verification delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-webhook-verification get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-webhook-verification get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-webhook-verification replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-webhook-verification replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.provider` | a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers defined at https://ngrok.com/docs/cloud-edge/modules/webhook-verification (https://ngrok.com/docs/cloud-edge/modules/webhook-verification) | +| `--module.secret` | a string secret used to validate requests from the given provider. All providers except AWS SNS require a secret | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-websocket-tcp-converter + +### SubCommands + +| Command | Description | +| ----------------------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-route-websocket-tcp-converter-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-route-websocket-tcp-converter-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-route-websocket-tcp-converter-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-websocket-tcp-converter delete + +### Usage + +```sh +ngrok api edge-modules https-edge-route-websocket-tcp-converter delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-websocket-tcp-converter get + +### Usage + +```sh +ngrok api edge-modules https-edge-route-websocket-tcp-converter get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-route-websocket-tcp-converter replace + +### Usage + +```sh +ngrok api edge-modules https-edge-route-websocket-tcp-converter replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | -------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-tls-termination + +### SubCommands + +| Command | Description | +| --------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-https-edge-tls-termination-delete) | | +| [get](#ngrok-api-edge-modules-https-edge-tls-termination-get) | | +| [replace](#ngrok-api-edge-modules-https-edge-tls-termination-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-tls-termination delete + +### Usage + +```sh +ngrok api edge-modules https-edge-tls-termination delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-tls-termination get + +### Usage + +```sh +ngrok api edge-modules https-edge-tls-termination get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules https-edge-tls-termination replace + +### Usage + +```sh +ngrok api edge-modules https-edge-tls-termination replace [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.min-version` | The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if terminate_at is set to upstream. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-backend + +### SubCommands + +| Command | Description | +| ----------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-tcp-edge-backend-delete) | | +| [get](#ngrok-api-edge-modules-tcp-edge-backend-get) | | +| [replace](#ngrok-api-edge-modules-tcp-edge-backend-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-backend delete + +### Usage + +```sh +ngrok api edge-modules tcp-edge-backend delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-backend get + +### Usage + +```sh +ngrok api edge-modules tcp-edge-backend get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-backend replace + +### Usage + +```sh +ngrok api edge-modules tcp-edge-backend replace [flags] +``` + +### Flags + +| Flag | Description | +| --------------------- | -------------------------------------------------------------------------------------------- | +| `--module.backend-id` | backend to be used to back this endpoint | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-ip-restriction + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------------ | ----------- | +| [delete](#ngrok-api-edge-modules-tcp-edge-ip-restriction-delete) | | +| [get](#ngrok-api-edge-modules-tcp-edge-ip-restriction-get) | | +| [replace](#ngrok-api-edge-modules-tcp-edge-ip-restriction-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-ip-restriction delete + +### Usage + +```sh +ngrok api edge-modules tcp-edge-ip-restriction delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-ip-restriction get + +### Usage + +```sh +ngrok api edge-modules tcp-edge-ip-restriction get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-ip-restriction replace + +### Usage + +```sh +ngrok api edge-modules tcp-edge-ip-restriction replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------ | --------------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-traffic-policy + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------------ | ----------- | +| [delete](#ngrok-api-edge-modules-tcp-edge-traffic-policy-delete) | | +| [get](#ngrok-api-edge-modules-tcp-edge-traffic-policy-get) | | +| [replace](#ngrok-api-edge-modules-tcp-edge-traffic-policy-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-traffic-policy delete + +### Usage + +```sh +ngrok api edge-modules tcp-edge-traffic-policy delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-traffic-policy get + +### Usage + +```sh +ngrok api edge-modules tcp-edge-traffic-policy get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tcp-edge-traffic-policy replace + +### Usage + +```sh +ngrok api edge-modules tcp-edge-traffic-policy replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | -------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.value` | the traffic policy that should be applied to the traffic on your endpoint. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-backend + +### SubCommands + +| Command | Description | +| ----------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-tls-edge-backend-delete) | | +| [get](#ngrok-api-edge-modules-tls-edge-backend-get) | | +| [replace](#ngrok-api-edge-modules-tls-edge-backend-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-backend delete + +### Usage + +```sh +ngrok api edge-modules tls-edge-backend delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-backend get + +### Usage + +```sh +ngrok api edge-modules tls-edge-backend get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-backend replace + +### Usage + +```sh +ngrok api edge-modules tls-edge-backend replace [flags] +``` + +### Flags + +| Flag | Description | +| --------------------- | -------------------------------------------------------------------------------------------- | +| `--module.backend-id` | backend to be used to back this endpoint | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-ip-restriction + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------------ | ----------- | +| [delete](#ngrok-api-edge-modules-tls-edge-ip-restriction-delete) | | +| [get](#ngrok-api-edge-modules-tls-edge-ip-restriction-get) | | +| [replace](#ngrok-api-edge-modules-tls-edge-ip-restriction-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-ip-restriction delete + +### Usage + +```sh +ngrok api edge-modules tls-edge-ip-restriction delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-ip-restriction get + +### Usage + +```sh +ngrok api edge-modules tls-edge-ip-restriction get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-ip-restriction replace + +### Usage + +```sh +ngrok api edge-modules tls-edge-ip-restriction replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------ | --------------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-mutual-tls + +### SubCommands + +| Command | Description | +| -------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-tls-edge-mutual-tls-delete) | | +| [get](#ngrok-api-edge-modules-tls-edge-mutual-tls-get) | | +| [replace](#ngrok-api-edge-modules-tls-edge-mutual-tls-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-mutual-tls delete + +### Usage + +```sh +ngrok api edge-modules tls-edge-mutual-tls delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-mutual-tls get + +### Usage + +```sh +ngrok api edge-modules tls-edge-mutual-tls get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-mutual-tls replace + +### Usage + +```sh +ngrok api edge-modules tls-edge-mutual-tls replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.certificate-authority-ids` | list of certificate authorities that will be used to validate the TLS client certificate presented by the initiator of the TLS connection | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-tls-termination + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-edge-modules-tls-edge-tls-termination-delete) | | +| [get](#ngrok-api-edge-modules-tls-edge-tls-termination-get) | | +| [replace](#ngrok-api-edge-modules-tls-edge-tls-termination-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-tls-termination delete + +### Usage + +```sh +ngrok api edge-modules tls-edge-tls-termination delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-tls-termination get + +### Usage + +```sh +ngrok api edge-modules tls-edge-tls-termination get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-tls-termination replace + +### Usage + +```sh +ngrok api edge-modules tls-edge-tls-termination replace [flags] +``` + +### Flags + +| Flag | Description | +| ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.min-version` | The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if terminate_at is set to upstream. | +| `--module.terminate-at` | edge if the ngrok edge should terminate TLS traffic, upstream if TLS traffic should be passed through to the upstream ngrok agent / application server for termination. if upstream is chosen, most other modules will be disallowed because they rely on the ngrok edge being able to access the underlying traffic. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-traffic-policy + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------------ | ----------- | +| [delete](#ngrok-api-edge-modules-tls-edge-traffic-policy-delete) | | +| [get](#ngrok-api-edge-modules-tls-edge-traffic-policy-get) | | +| [replace](#ngrok-api-edge-modules-tls-edge-traffic-policy-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-traffic-policy delete + +### Usage + +```sh +ngrok api edge-modules tls-edge-traffic-policy delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-traffic-policy get + +### Usage + +```sh +ngrok api edge-modules tls-edge-traffic-policy get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edge-modules tls-edge-traffic-policy replace + +### Usage + +```sh +ngrok api edge-modules tls-edge-traffic-policy replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | -------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.value` | the traffic policy that should be applied to the traffic on your endpoint. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges + +### SubCommands + +| Command | Description | +| --------------------------------------------- | ----------- | +| [https](#ngrok-api-edges-https) | | +| [https-routes](#ngrok-api-edges-https-routes) | | +| [tcp](#ngrok-api-edges-tcp) | | +| [tls](#ngrok-api-edges-tls) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https + +### SubCommands + +| Command | Description | +| --------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-edges-https-create) | Create an HTTPS Edge | +| [delete](#ngrok-api-edges-https-delete) | Delete an HTTPS Edge by ID | +| [get](#ngrok-api-edges-https-get) | Get an HTTPS Edge by ID | +| [list](#ngrok-api-edges-https-list) | Returns a list of all HTTPS Edges on this account | +| [update](#ngrok-api-edges-https-update) | Updates an HTTPS Edge by ID. If a module is not... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https create + +Create an HTTPS Edge + +### Usage + +```sh +ngrok api edges https create [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of what this edge will be used for; optional, max 255 bytes. | +| `--hostports` | hostports served by this edge | +| `--metadata` | arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes. | +| `--mutual-tls.certificate-authority-ids` | list of certificate authorities that will be used to validate the TLS client certificate presented by the initiator of the TLS connection | +| `--mutual-tls.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.min-version` | The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if terminate_at is set to upstream. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https delete + +Delete an HTTPS Edge by ID + +### Usage + +```sh +ngrok api edges https delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https get + +Get an HTTPS Edge by ID + +### Usage + +```sh +ngrok api edges https get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https list + +Returns a list of all HTTPS Edges on this account + +### Usage + +```sh +ngrok api edges https list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https update + +Updates an HTTPS Edge by ID. If a module is not specified in the update, it will not be modified. However, each module configuration that is specified will completely replace the existing value. There is no way to delete an existing module via this API, instead use the delete module API. + +### Usage + +```sh +ngrok api edges https update [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of what this edge will be used for; optional, max 255 bytes. | +| `--hostports` | hostports served by this edge | +| `--metadata` | arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes. | +| `--mutual-tls.certificate-authority-ids` | list of certificate authorities that will be used to validate the TLS client certificate presented by the initiator of the TLS connection | +| `--mutual-tls.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.min-version` | The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if terminate_at is set to upstream. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https-routes + +### SubCommands + +| Command | Description | +| ---------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-edges-https-routes-create) | Create an HTTPS Edge Route | +| [delete](#ngrok-api-edges-https-routes-delete) | Delete an HTTPS Edge Route by ID | +| [get](#ngrok-api-edges-https-routes-get) | Get an HTTPS Edge Route by ID | +| [update](#ngrok-api-edges-https-routes-update) | Updates an HTTPS Edge Route by ID. If a module ... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https-routes create + +Create an HTTPS Edge Route + +### Usage + +```sh +ngrok api edges https-routes create [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--backend.backend-id` | backend to be used to back this endpoint | +| `--backend.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--circuit-breaker.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--circuit-breaker.error-threshold-percentage` | Error threshold percentage should be between 0 - 1.0, not 0-100.0 | +| `--circuit-breaker.num-buckets` | Integer number of buckets into which metrics are retained. Max 128. | +| `--circuit-breaker.rolling-window` | Integer number of seconds in the statistical rolling window that metrics are retained for. | +| `--circuit-breaker.tripped-duration` | Integer number of seconds after which the circuit is tripped to wait before re-evaluating upstream health | +| `--circuit-breaker.volume-threshold` | Integer number of requests in a rolling window that will trip the circuit. Helpful if traffic volume is low. | +| `--compression.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--description` | human-readable description of what this edge will be used for; optional, max 255 bytes. | +| `--ip-restriction.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--ip-restriction.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--match` | Route selector: "/blog" or "example.com" or "example.com/blog" | +| `--match-type` | Type of match to use for this route. Valid values are "exact_path" and "path_prefix". | +| `--metadata` | arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. | +| `--oauth.auth-check-interval` | Integer number of seconds after which ngrok guarantees it will refresh user state from the identity provider and recheck whether the user is still authorized to access the endpoint. This is the preferred tunable to use to enforce a minimum amount of time after which a revoked user will no longer be able to access the resource. | +| `--oauth.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--oauth.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oauth.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--oauth.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--oauth.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--oauth.provider.amazon.client-id` | | +| `--oauth.provider.amazon.client-secret` | | +| `--oauth.provider.amazon.email-addresses` | | +| `--oauth.provider.amazon.email-domains` | | +| `--oauth.provider.amazon.scopes` | | +| `--oauth.provider.facebook.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.facebook.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.facebook.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.facebook.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.facebook.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.github.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.github.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.github.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.github.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.github.organizations` | a list of github org identifiers. users who are members of any of the listed organizations will be allowed access. identifiers should be the organization's 'slug' | +| `--oauth.provider.github.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.github.teams` | a list of github teams identifiers. users will be allowed access to the endpoint if they are a member of any of these teams. identifiers should be in the 'slug' format qualified with the org name, e.g. org-name/team-name | +| `--oauth.provider.gitlab.client-id` | | +| `--oauth.provider.gitlab.client-secret` | | +| `--oauth.provider.gitlab.email-addresses` | | +| `--oauth.provider.gitlab.email-domains` | | +| `--oauth.provider.gitlab.scopes` | | +| `--oauth.provider.google.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.google.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.google.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.google.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.google.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.linkedin.client-id` | | +| `--oauth.provider.linkedin.client-secret` | | +| `--oauth.provider.linkedin.email-addresses` | | +| `--oauth.provider.linkedin.email-domains` | | +| `--oauth.provider.linkedin.scopes` | | +| `--oauth.provider.microsoft.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.microsoft.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.microsoft.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.microsoft.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.microsoft.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.twitch.client-id` | | +| `--oauth.provider.twitch.client-secret` | | +| `--oauth.provider.twitch.email-addresses` | | +| `--oauth.provider.twitch.email-domains` | | +| `--oauth.provider.twitch.scopes` | | +| `--oidc.client-id` | The OIDC app's client ID and OIDC audience. | +| `--oidc.client-secret` | The OIDC app's client secret. | +| `--oidc.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--oidc.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oidc.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--oidc.issuer` | URL of the OIDC "OpenID provider". This is the base URL used for discovery. | +| `--oidc.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--oidc.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--oidc.scopes` | The set of scopes to request from the OIDC identity provider. | +| `--request-headers.add` | a map of header key to header value that will be injected into the HTTP Request before being sent to the upstream application server | +| `--request-headers.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--request-headers.remove` | a list of header names that will be removed from the HTTP Request before being sent to the upstream application server | +| `--response-headers.add` | a map of header key to header value that will be injected into the HTTP Response returned to the HTTP client | +| `--response-headers.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--response-headers.remove` | a list of header names that will be removed from the HTTP Response returned to the HTTP client | +| `--saml.allow-idp-initiated` | If true, the IdP may initiate a login directly (e.g. the user does not need to visit the endpoint first and then be redirected). The IdP should set the RelayState parameter to the target URL of the resource they want the user to be redirected to after the SAML login assertion has been processed. | +| `--saml.authorized-groups` | If present, only users who are a member of one of the listed groups may access the target endpoint. | +| `--saml.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--saml.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--saml.force-authn` | If true, indicates that whenever we redirect a user to the IdP for authentication that the IdP must prompt the user for authentication credentials even if the user already has a valid session with the IdP. | +| `--saml.idp-metadata` | The full XML IdP EntityDescriptor. Your IdP may provide this to you as a a file to download or as a URL. | +| `--saml.idp-metadata-url` | The IdP's metadata URL which returns the XML IdP EntityDescriptor. The IdP's metadata URL specifies how to connect to the IdP as well as its public key which is then used to validate the signature on incoming SAML assertions to the ACS endpoint. | +| `--saml.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--saml.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--saml.nameid-format` | Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value of urn:oasis:names:tc:SAML:2.0:nameid-format:persistent will be used. A subset of the allowed values enumerated by the SAML specification are supported. | +| `--saml.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--traffic-policy.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--traffic-policy.value` | the traffic policy that should be applied to the traffic on your endpoint. | +| `--user-agent-filter.allow` | | +| `--user-agent-filter.deny` | | +| `--user-agent-filter.enabled` | | +| `--webhook-verification.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--webhook-verification.provider` | a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers defined at https://ngrok.com/docs/cloud-edge/modules/webhook-verification (https://ngrok.com/docs/cloud-edge/modules/webhook-verification) | +| `--webhook-verification.secret` | a string secret used to validate requests from the given provider. All providers except AWS SNS require a secret | +| `--websocket-tcp-converter.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https-routes delete + +Delete an HTTPS Edge Route by ID + +### Usage + +```sh +ngrok api edges https-routes delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https-routes get + +Get an HTTPS Edge Route by ID + +### Usage + +```sh +ngrok api edges https-routes get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges https-routes update + +Updates an HTTPS Edge Route by ID. If a module is not specified in the update, it will not be modified. However, each module configuration that is specified will completely replace the existing value. There is no way to delete an existing module via this API, instead use the delete module API. + +### Usage + +```sh +ngrok api edges https-routes update [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--backend.backend-id` | backend to be used to back this endpoint | +| `--backend.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--circuit-breaker.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--circuit-breaker.error-threshold-percentage` | Error threshold percentage should be between 0 - 1.0, not 0-100.0 | +| `--circuit-breaker.num-buckets` | Integer number of buckets into which metrics are retained. Max 128. | +| `--circuit-breaker.rolling-window` | Integer number of seconds in the statistical rolling window that metrics are retained for. | +| `--circuit-breaker.tripped-duration` | Integer number of seconds after which the circuit is tripped to wait before re-evaluating upstream health | +| `--circuit-breaker.volume-threshold` | Integer number of requests in a rolling window that will trip the circuit. Helpful if traffic volume is low. | +| `--compression.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--description` | human-readable description of what this edge will be used for; optional, max 255 bytes. | +| `--ip-restriction.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--ip-restriction.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--match` | Route selector: "/blog" or "example.com" or "example.com/blog" | +| `--match-type` | Type of match to use for this route. Valid values are "exact_path" and "path_prefix". | +| `--metadata` | arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. | +| `--oauth.auth-check-interval` | Integer number of seconds after which ngrok guarantees it will refresh user state from the identity provider and recheck whether the user is still authorized to access the endpoint. This is the preferred tunable to use to enforce a minimum amount of time after which a revoked user will no longer be able to access the resource. | +| `--oauth.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--oauth.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oauth.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--oauth.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--oauth.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--oauth.provider.amazon.client-id` | | +| `--oauth.provider.amazon.client-secret` | | +| `--oauth.provider.amazon.email-addresses` | | +| `--oauth.provider.amazon.email-domains` | | +| `--oauth.provider.amazon.scopes` | | +| `--oauth.provider.facebook.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.facebook.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.facebook.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.facebook.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.facebook.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.github.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.github.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.github.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.github.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.github.organizations` | a list of github org identifiers. users who are members of any of the listed organizations will be allowed access. identifiers should be the organization's 'slug' | +| `--oauth.provider.github.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.github.teams` | a list of github teams identifiers. users will be allowed access to the endpoint if they are a member of any of these teams. identifiers should be in the 'slug' format qualified with the org name, e.g. org-name/team-name | +| `--oauth.provider.gitlab.client-id` | | +| `--oauth.provider.gitlab.client-secret` | | +| `--oauth.provider.gitlab.email-addresses` | | +| `--oauth.provider.gitlab.email-domains` | | +| `--oauth.provider.gitlab.scopes` | | +| `--oauth.provider.google.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.google.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.google.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.google.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.google.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.linkedin.client-id` | | +| `--oauth.provider.linkedin.client-secret` | | +| `--oauth.provider.linkedin.email-addresses` | | +| `--oauth.provider.linkedin.email-domains` | | +| `--oauth.provider.linkedin.scopes` | | +| `--oauth.provider.microsoft.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.microsoft.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.microsoft.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.microsoft.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.microsoft.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.twitch.client-id` | | +| `--oauth.provider.twitch.client-secret` | | +| `--oauth.provider.twitch.email-addresses` | | +| `--oauth.provider.twitch.email-domains` | | +| `--oauth.provider.twitch.scopes` | | +| `--oidc.client-id` | The OIDC app's client ID and OIDC audience. | +| `--oidc.client-secret` | The OIDC app's client secret. | +| `--oidc.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--oidc.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oidc.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--oidc.issuer` | URL of the OIDC "OpenID provider". This is the base URL used for discovery. | +| `--oidc.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--oidc.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--oidc.scopes` | The set of scopes to request from the OIDC identity provider. | +| `--request-headers.add` | a map of header key to header value that will be injected into the HTTP Request before being sent to the upstream application server | +| `--request-headers.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--request-headers.remove` | a list of header names that will be removed from the HTTP Request before being sent to the upstream application server | +| `--response-headers.add` | a map of header key to header value that will be injected into the HTTP Response returned to the HTTP client | +| `--response-headers.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--response-headers.remove` | a list of header names that will be removed from the HTTP Response returned to the HTTP client | +| `--saml.allow-idp-initiated` | If true, the IdP may initiate a login directly (e.g. the user does not need to visit the endpoint first and then be redirected). The IdP should set the RelayState parameter to the target URL of the resource they want the user to be redirected to after the SAML login assertion has been processed. | +| `--saml.authorized-groups` | If present, only users who are a member of one of the listed groups may access the target endpoint. | +| `--saml.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--saml.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--saml.force-authn` | If true, indicates that whenever we redirect a user to the IdP for authentication that the IdP must prompt the user for authentication credentials even if the user already has a valid session with the IdP. | +| `--saml.idp-metadata` | The full XML IdP EntityDescriptor. Your IdP may provide this to you as a a file to download or as a URL. | +| `--saml.idp-metadata-url` | The IdP's metadata URL which returns the XML IdP EntityDescriptor. The IdP's metadata URL specifies how to connect to the IdP as well as its public key which is then used to validate the signature on incoming SAML assertions to the ACS endpoint. | +| `--saml.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--saml.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--saml.nameid-format` | Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value of urn:oasis:names:tc:SAML:2.0:nameid-format:persistent will be used. A subset of the allowed values enumerated by the SAML specification are supported. | +| `--saml.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--traffic-policy.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--traffic-policy.value` | the traffic policy that should be applied to the traffic on your endpoint. | +| `--user-agent-filter.allow` | | +| `--user-agent-filter.deny` | | +| `--user-agent-filter.enabled` | | +| `--webhook-verification.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--webhook-verification.provider` | a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers defined at https://ngrok.com/docs/cloud-edge/modules/webhook-verification (https://ngrok.com/docs/cloud-edge/modules/webhook-verification) | +| `--webhook-verification.secret` | a string secret used to validate requests from the given provider. All providers except AWS SNS require a secret | +| `--websocket-tcp-converter.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tcp + +### SubCommands + +| Command | Description | +| ------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-edges-tcp-create) | Create a TCP Edge | +| [delete](#ngrok-api-edges-tcp-delete) | Delete a TCP Edge by ID | +| [get](#ngrok-api-edges-tcp-get) | Get a TCP Edge by ID | +| [list](#ngrok-api-edges-tcp-list) | Returns a list of all TCP Edges on this account | +| [update](#ngrok-api-edges-tcp-update) | Updates a TCP Edge by ID. If a module is not sp... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tcp create + +Create a TCP Edge + +### Usage + +```sh +ngrok api edges tcp create [flags] +``` + +### Flags + +| Flag | Description | +| -------------------------------- | --------------------------------------------------------------------------------------------------- | +| `--backend.backend-id` | backend to be used to back this endpoint | +| `--backend.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--description` | human-readable description of what this edge will be used for; optional, max 255 bytes. | +| `--hostports` | hostports served by this edge | +| `--ip-restriction.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--ip-restriction.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--metadata` | arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. | +| `--traffic-policy.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--traffic-policy.value` | the traffic policy that should be applied to the traffic on your endpoint. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tcp delete + +Delete a TCP Edge by ID + +### Usage + +```sh +ngrok api edges tcp delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tcp get + +Get a TCP Edge by ID + +### Usage + +```sh +ngrok api edges tcp get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tcp list + +Returns a list of all TCP Edges on this account + +### Usage + +```sh +ngrok api edges tcp list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tcp update + +Updates a TCP Edge by ID. If a module is not specified in the update, it will not be modified. However, each module configuration that is specified will completely replace the existing value. There is no way to delete an existing module via this API, instead use the delete module API. + +### Usage + +```sh +ngrok api edges tcp update [flags] +``` + +### Flags + +| Flag | Description | +| -------------------------------- | --------------------------------------------------------------------------------------------------- | +| `--backend.backend-id` | backend to be used to back this endpoint | +| `--backend.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--description` | human-readable description of what this edge will be used for; optional, max 255 bytes. | +| `--hostports` | hostports served by this edge | +| `--ip-restriction.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--ip-restriction.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--metadata` | arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. | +| `--traffic-policy.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--traffic-policy.value` | the traffic policy that should be applied to the traffic on your endpoint. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tls + +### SubCommands + +| Command | Description | +| ------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-edges-tls-create) | Create a TLS Edge | +| [delete](#ngrok-api-edges-tls-delete) | Delete a TLS Edge by ID | +| [get](#ngrok-api-edges-tls-get) | Get a TLS Edge by ID | +| [list](#ngrok-api-edges-tls-list) | Returns a list of all TLS Edges on this account | +| [update](#ngrok-api-edges-tls-update) | Updates a TLS Edge by ID. If a module is not sp... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tls create + +Create a TLS Edge + +### Usage + +```sh +ngrok api edges tls create [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--backend.backend-id` | backend to be used to back this endpoint | +| `--backend.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--description` | human-readable description of what this edge will be used for; optional, max 255 bytes. | +| `--hostports` | hostports served by this edge | +| `--ip-restriction.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--ip-restriction.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--metadata` | arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. | +| `--mutual-tls.certificate-authority-ids` | list of certificate authorities that will be used to validate the TLS client certificate presented by the initiator of the TLS connection | +| `--mutual-tls.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.min-version` | The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if terminate_at is set to upstream. | +| `--tls-termination.terminate-at` | edge if the ngrok edge should terminate TLS traffic, upstream if TLS traffic should be passed through to the upstream ngrok agent / application server for termination. if upstream is chosen, most other modules will be disallowed because they rely on the ngrok edge being able to access the underlying traffic. | +| `--traffic-policy.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--traffic-policy.value` | the traffic policy that should be applied to the traffic on your endpoint. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tls delete + +Delete a TLS Edge by ID + +### Usage + +```sh +ngrok api edges tls delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tls get + +Get a TLS Edge by ID + +### Usage + +```sh +ngrok api edges tls get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tls list + +Returns a list of all TLS Edges on this account + +### Usage + +```sh +ngrok api edges tls list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api edges tls update + +Updates a TLS Edge by ID. If a module is not specified in the update, it will not be modified. However, each module configuration that is specified will completely replace the existing value. There is no way to delete an existing module via this API, instead use the delete module API. + +### Usage + +```sh +ngrok api edges tls update [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--backend.backend-id` | backend to be used to back this endpoint | +| `--backend.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--description` | human-readable description of what this edge will be used for; optional, max 255 bytes. | +| `--hostports` | hostports served by this edge | +| `--ip-restriction.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--ip-restriction.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--metadata` | arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. | +| `--mutual-tls.certificate-authority-ids` | list of certificate authorities that will be used to validate the TLS client certificate presented by the initiator of the TLS connection | +| `--mutual-tls.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.min-version` | The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if terminate_at is set to upstream. | +| `--tls-termination.terminate-at` | edge if the ngrok edge should terminate TLS traffic, upstream if TLS traffic should be passed through to the upstream ngrok agent / application server for termination. if upstream is chosen, most other modules will be disallowed because they rely on the ngrok edge being able to access the underlying traffic. | +| `--traffic-policy.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--traffic-policy.value` | the traffic policy that should be applied to the traffic on your endpoint. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoint-configurations + +Endpoint Configurations are a reusable group of modules that encapsulate how +traffic to a domain or address is handled. Endpoint configurations are only +applied to Domains and TCP Addresses they have been attached to. + +### SubCommands + +| Command | Description | +| --------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-endpoint-configurations-create) | Create a new endpoint configuration | +| [delete](#ngrok-api-endpoint-configurations-delete) | Delete an endpoint configuration. This operatio... | +| [get](#ngrok-api-endpoint-configurations-get) | Returns detailed information about an endpoint ... | +| [list](#ngrok-api-endpoint-configurations-list) | Returns a list of all endpoint configurations o... | +| [update](#ngrok-api-endpoint-configurations-update) | Updates an endpoint configuration. If a module ... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoint-configurations create + +Create a new endpoint configuration + +### Usage + +```sh +ngrok api endpoint-configurations create [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--backend.backend-id` | backend to be used to back this endpoint | +| `--backend.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--basic-auth.allow-options` | true or false indicating whether to allow OPTIONS requests through without authentication which is necessary for CORS. default is false | +| `--basic-auth.auth-provider-id` | determines how the basic auth credentials are validated. Currently only the value agent is supported which means that credentials will be validated against the username and password specified by the ngrok agent's --basic-auth flag, if any. | +| `--basic-auth.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--basic-auth.realm` | an arbitrary string to be specified in as the 'realm' value in the WWW-Authenticate header. default is ngrok | +| `--circuit-breaker.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--circuit-breaker.error-threshold-percentage` | Error threshold percentage should be between 0 - 1.0, not 0-100.0 | +| `--circuit-breaker.num-buckets` | Integer number of buckets into which metrics are retained. Max 128. | +| `--circuit-breaker.rolling-window` | Integer number of seconds in the statistical rolling window that metrics are retained for. | +| `--circuit-breaker.tripped-duration` | Integer number of seconds after which the circuit is tripped to wait before re-evaluating upstream health | +| `--circuit-breaker.volume-threshold` | Integer number of requests in a rolling window that will trip the circuit. Helpful if traffic volume is low. | +| `--compression.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--description` | human-readable description of what this endpoint configuration will be do when applied or what traffic it will be applied to. Optional, max 255 bytes | +| `--ip-policy.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--ip-policy.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--metadata` | arbitrary user-defined machine-readable data of this endpoint configuration. Optional, max 4096 bytes. | +| `--mutual-tls.certificate-authority-ids` | list of certificate authorities that will be used to validate the TLS client certificate presented by the initiator of the TLS connection | +| `--mutual-tls.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oauth.auth-check-interval` | Integer number of seconds after which ngrok guarantees it will refresh user state from the identity provider and recheck whether the user is still authorized to access the endpoint. This is the preferred tunable to use to enforce a minimum amount of time after which a revoked user will no longer be able to access the resource. | +| `--oauth.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--oauth.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oauth.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--oauth.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--oauth.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--oauth.provider.amazon.client-id` | | +| `--oauth.provider.amazon.client-secret` | | +| `--oauth.provider.amazon.email-addresses` | | +| `--oauth.provider.amazon.email-domains` | | +| `--oauth.provider.amazon.scopes` | | +| `--oauth.provider.facebook.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.facebook.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.facebook.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.facebook.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.facebook.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.github.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.github.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.github.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.github.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.github.organizations` | a list of github org identifiers. users who are members of any of the listed organizations will be allowed access. identifiers should be the organization's 'slug' | +| `--oauth.provider.github.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.github.teams` | a list of github teams identifiers. users will be allowed access to the endpoint if they are a member of any of these teams. identifiers should be in the 'slug' format qualified with the org name, e.g. org-name/team-name | +| `--oauth.provider.gitlab.client-id` | | +| `--oauth.provider.gitlab.client-secret` | | +| `--oauth.provider.gitlab.email-addresses` | | +| `--oauth.provider.gitlab.email-domains` | | +| `--oauth.provider.gitlab.scopes` | | +| `--oauth.provider.google.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.google.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.google.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.google.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.google.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.linkedin.client-id` | | +| `--oauth.provider.linkedin.client-secret` | | +| `--oauth.provider.linkedin.email-addresses` | | +| `--oauth.provider.linkedin.email-domains` | | +| `--oauth.provider.linkedin.scopes` | | +| `--oauth.provider.microsoft.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.microsoft.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.microsoft.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.microsoft.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.microsoft.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.twitch.client-id` | | +| `--oauth.provider.twitch.client-secret` | | +| `--oauth.provider.twitch.email-addresses` | | +| `--oauth.provider.twitch.email-domains` | | +| `--oauth.provider.twitch.scopes` | | +| `--oidc.client-id` | The OIDC app's client ID and OIDC audience. | +| `--oidc.client-secret` | The OIDC app's client secret. | +| `--oidc.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--oidc.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oidc.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--oidc.issuer` | URL of the OIDC "OpenID provider". This is the base URL used for discovery. | +| `--oidc.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--oidc.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--oidc.scopes` | The set of scopes to request from the OIDC identity provider. | +| `--request-headers.add` | a map of header key to header value that will be injected into the HTTP Request before being sent to the upstream application server | +| `--request-headers.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--request-headers.remove` | a list of header names that will be removed from the HTTP Request before being sent to the upstream application server | +| `--response-headers.add` | a map of header key to header value that will be injected into the HTTP Response returned to the HTTP client | +| `--response-headers.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--response-headers.remove` | a list of header names that will be removed from the HTTP Response returned to the HTTP client | +| `--saml.allow-idp-initiated` | If true, the IdP may initiate a login directly (e.g. the user does not need to visit the endpoint first and then be redirected). The IdP should set the RelayState parameter to the target URL of the resource they want the user to be redirected to after the SAML login assertion has been processed. | +| `--saml.authorized-groups` | If present, only users who are a member of one of the listed groups may access the target endpoint. | +| `--saml.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--saml.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--saml.force-authn` | If true, indicates that whenever we redirect a user to the IdP for authentication that the IdP must prompt the user for authentication credentials even if the user already has a valid session with the IdP. | +| `--saml.idp-metadata` | The full XML IdP EntityDescriptor. Your IdP may provide this to you as a a file to download or as a URL. | +| `--saml.idp-metadata-url` | The IdP's metadata URL which returns the XML IdP EntityDescriptor. The IdP's metadata URL specifies how to connect to the IdP as well as its public key which is then used to validate the signature on incoming SAML assertions to the ACS endpoint. | +| `--saml.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--saml.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--saml.nameid-format` | Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value of urn:oasis:names:tc:SAML:2.0:nameid-format:persistent will be used. A subset of the allowed values enumerated by the SAML specification are supported. | +| `--saml.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--tls-termination.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.min-version` | The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if terminate_at is set to upstream. | +| `--tls-termination.terminate-at` | edge if the ngrok edge should terminate TLS traffic, upstream if TLS traffic should be passed through to the upstream ngrok agent / application server for termination. if upstream is chosen, most other modules will be disallowed because they rely on the ngrok edge being able to access the underlying traffic. | +| `--type` | they type of traffic this endpoint configuration can be applied to. one of: http, https, tcp | +| `--webhook-validation.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--webhook-validation.provider` | a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers defined at https://ngrok.com/docs/cloud-edge/modules/webhook-verification (https://ngrok.com/docs/cloud-edge/modules/webhook-verification) | +| `--webhook-validation.secret` | a string secret used to validate requests from the given provider. All providers except AWS SNS require a secret | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoint-configurations delete + +Delete an endpoint configuration. This operation will fail if the endpoint configuration is still referenced by any reserved domain or reserved address. + +### Usage + +```sh +ngrok api endpoint-configurations delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoint-configurations get + +Returns detailed information about an endpoint configuration + +### Usage + +```sh +ngrok api endpoint-configurations get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoint-configurations list + +Returns a list of all endpoint configurations on this account + +### Usage + +```sh +ngrok api endpoint-configurations list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoint-configurations update + +Updates an endpoint configuration. If a module is not specified in the update, it will not be modified. However, each module configuration that is specified will completely replace the existing value. There is no way to delete an existing module via this API, instead use the delete module API. + +### Usage + +```sh +ngrok api endpoint-configurations update [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--backend.backend-id` | backend to be used to back this endpoint | +| `--backend.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--basic-auth.allow-options` | true or false indicating whether to allow OPTIONS requests through without authentication which is necessary for CORS. default is false | +| `--basic-auth.auth-provider-id` | determines how the basic auth credentials are validated. Currently only the value agent is supported which means that credentials will be validated against the username and password specified by the ngrok agent's --basic-auth flag, if any. | +| `--basic-auth.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--basic-auth.realm` | an arbitrary string to be specified in as the 'realm' value in the WWW-Authenticate header. default is ngrok | +| `--circuit-breaker.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--circuit-breaker.error-threshold-percentage` | Error threshold percentage should be between 0 - 1.0, not 0-100.0 | +| `--circuit-breaker.num-buckets` | Integer number of buckets into which metrics are retained. Max 128. | +| `--circuit-breaker.rolling-window` | Integer number of seconds in the statistical rolling window that metrics are retained for. | +| `--circuit-breaker.tripped-duration` | Integer number of seconds after which the circuit is tripped to wait before re-evaluating upstream health | +| `--circuit-breaker.volume-threshold` | Integer number of requests in a rolling window that will trip the circuit. Helpful if traffic volume is low. | +| `--compression.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--description` | human-readable description of what this endpoint configuration will be do when applied or what traffic it will be applied to. Optional, max 255 bytes | +| `--ip-policy.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--ip-policy.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--metadata` | arbitrary user-defined machine-readable data of this endpoint configuration. Optional, max 4096 bytes. | +| `--mutual-tls.certificate-authority-ids` | list of certificate authorities that will be used to validate the TLS client certificate presented by the initiator of the TLS connection | +| `--mutual-tls.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oauth.auth-check-interval` | Integer number of seconds after which ngrok guarantees it will refresh user state from the identity provider and recheck whether the user is still authorized to access the endpoint. This is the preferred tunable to use to enforce a minimum amount of time after which a revoked user will no longer be able to access the resource. | +| `--oauth.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--oauth.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oauth.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--oauth.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--oauth.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--oauth.provider.amazon.client-id` | | +| `--oauth.provider.amazon.client-secret` | | +| `--oauth.provider.amazon.email-addresses` | | +| `--oauth.provider.amazon.email-domains` | | +| `--oauth.provider.amazon.scopes` | | +| `--oauth.provider.facebook.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.facebook.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.facebook.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.facebook.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.facebook.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.github.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.github.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.github.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.github.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.github.organizations` | a list of github org identifiers. users who are members of any of the listed organizations will be allowed access. identifiers should be the organization's 'slug' | +| `--oauth.provider.github.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.github.teams` | a list of github teams identifiers. users will be allowed access to the endpoint if they are a member of any of these teams. identifiers should be in the 'slug' format qualified with the org name, e.g. org-name/team-name | +| `--oauth.provider.gitlab.client-id` | | +| `--oauth.provider.gitlab.client-secret` | | +| `--oauth.provider.gitlab.email-addresses` | | +| `--oauth.provider.gitlab.email-domains` | | +| `--oauth.provider.gitlab.scopes` | | +| `--oauth.provider.google.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.google.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.google.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.google.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.google.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.linkedin.client-id` | | +| `--oauth.provider.linkedin.client-secret` | | +| `--oauth.provider.linkedin.email-addresses` | | +| `--oauth.provider.linkedin.email-domains` | | +| `--oauth.provider.linkedin.scopes` | | +| `--oauth.provider.microsoft.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--oauth.provider.microsoft.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--oauth.provider.microsoft.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.microsoft.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--oauth.provider.microsoft.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--oauth.provider.twitch.client-id` | | +| `--oauth.provider.twitch.client-secret` | | +| `--oauth.provider.twitch.email-addresses` | | +| `--oauth.provider.twitch.email-domains` | | +| `--oauth.provider.twitch.scopes` | | +| `--oidc.client-id` | The OIDC app's client ID and OIDC audience. | +| `--oidc.client-secret` | The OIDC app's client secret. | +| `--oidc.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--oidc.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--oidc.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--oidc.issuer` | URL of the OIDC "OpenID provider". This is the base URL used for discovery. | +| `--oidc.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--oidc.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--oidc.scopes` | The set of scopes to request from the OIDC identity provider. | +| `--request-headers.add` | a map of header key to header value that will be injected into the HTTP Request before being sent to the upstream application server | +| `--request-headers.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--request-headers.remove` | a list of header names that will be removed from the HTTP Request before being sent to the upstream application server | +| `--response-headers.add` | a map of header key to header value that will be injected into the HTTP Response returned to the HTTP client | +| `--response-headers.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--response-headers.remove` | a list of header names that will be removed from the HTTP Response returned to the HTTP client | +| `--saml.allow-idp-initiated` | If true, the IdP may initiate a login directly (e.g. the user does not need to visit the endpoint first and then be redirected). The IdP should set the RelayState parameter to the target URL of the resource they want the user to be redirected to after the SAML login assertion has been processed. | +| `--saml.authorized-groups` | If present, only users who are a member of one of the listed groups may access the target endpoint. | +| `--saml.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--saml.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--saml.force-authn` | If true, indicates that whenever we redirect a user to the IdP for authentication that the IdP must prompt the user for authentication credentials even if the user already has a valid session with the IdP. | +| `--saml.idp-metadata` | The full XML IdP EntityDescriptor. Your IdP may provide this to you as a a file to download or as a URL. | +| `--saml.idp-metadata-url` | The IdP's metadata URL which returns the XML IdP EntityDescriptor. The IdP's metadata URL specifies how to connect to the IdP as well as its public key which is then used to validate the signature on incoming SAML assertions to the ACS endpoint. | +| `--saml.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--saml.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--saml.nameid-format` | Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value of urn:oasis:names:tc:SAML:2.0:nameid-format:persistent will be used. A subset of the allowed values enumerated by the SAML specification are supported. | +| `--saml.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--tls-termination.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--tls-termination.min-version` | The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if terminate_at is set to upstream. | +| `--tls-termination.terminate-at` | edge if the ngrok edge should terminate TLS traffic, upstream if TLS traffic should be passed through to the upstream ngrok agent / application server for termination. if upstream is chosen, most other modules will be disallowed because they rely on the ngrok edge being able to access the underlying traffic. | +| `--webhook-validation.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--webhook-validation.provider` | a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers defined at https://ngrok.com/docs/cloud-edge/modules/webhook-verification (https://ngrok.com/docs/cloud-edge/modules/webhook-verification) | +| `--webhook-validation.secret` | a string secret used to validate requests from the given provider. All providers except AWS SNS require a secret | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoints + +Endpoints provides an API for querying the endpoint objects +which define what tunnel or edge is used to serve a hostport. +Only active endpoints associated with a tunnel or backend are returned. + +### SubCommands + +| Command | Description | +| ------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-endpoints-create) | Create an endpoint, currently available only fo... | +| [delete](#ngrok-api-endpoints-delete) | Delete an Endpoint by ID, currently available o... | +| [get](#ngrok-api-endpoints-get) | Get the status of an endpoint by ID | +| [list](#ngrok-api-endpoints-list) | List all active endpoints on the account | +| [update](#ngrok-api-endpoints-update) | Update an Endpoint by ID, currently available o... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoints create + +Create an endpoint, currently available only for cloud endpoints + +### Usage + +```sh +ngrok api endpoints create [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--bindings` | the bindings associated with this endpoint | +| `--description` | user-supplied description of the associated tunnel | +| `--metadata` | user-supplied metadata of the associated tunnel or edge object | +| `--traffic-policy` | The traffic policy attached to this endpoint | +| `--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) | +| `--url` | the url of the endpoint | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoints delete + +Delete an Endpoint by ID, currently available only for cloud endpoints + +### Usage + +```sh +ngrok api endpoints delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoints get + +Get the status of an endpoint by ID + +### Usage + +```sh +ngrok api endpoints get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoints list + +List all active endpoints on the account + +### Usage + +```sh +ngrok api endpoints list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api endpoints update + +Update an Endpoint by ID, currently available only for cloud endpoints + +### Usage + +```sh +ngrok api endpoints update [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | -------------------------------------------------------------- | +| `--bindings` | the bindings associated with this endpoint | +| `--description` | user-supplied description of the associated tunnel | +| `--metadata` | user-supplied metadata of the associated tunnel or edge object | +| `--traffic-policy` | The traffic policy attached to this endpoint | +| `--url` | the url of the endpoint | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-destinations + +### SubCommands + +| Command | Description | +| ---------------------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-event-destinations-create) | Create a new Event Destination. It will not app... | +| [delete](#ngrok-api-event-destinations-delete) | Delete an Event Destination. If the Event Desti... | +| [get](#ngrok-api-event-destinations-get) | Get detailed information about an Event Destina... | +| [list](#ngrok-api-event-destinations-list) | List all Event Destinations on this account. | +| [send-test-event](#ngrok-api-event-destinations-send-test-event) | Send a test event to an Event Destination | +| [update](#ngrok-api-event-destinations-update) | Update attributes of an Event Destination. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-destinations create + +Create a new Event Destination. It will not apply to anything until it is associated with an Event Subscription. + +### Usage + +```sh +ngrok api event-destinations create [flags] +``` + +### Flags + +| Flag | Description | +| ----------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| `--description` | Human-readable description of the Event Destination. Optional, max 255 bytes. | +| `--format` | The output format you would like to serialize events into when sending to their target. Currently the only accepted value is JSON. | +| `--metadata` | Arbitrary user-defined machine-readable data of this Event Destination. Optional, max 4096 bytes. | +| `--target.azure-logs-ingestion.client-id` | Client ID for the application client | +| `--target.azure-logs-ingestion.client-secret` | Client Secret for the application client | +| `--target.azure-logs-ingestion.data-collection-rule-id` | Data collection rule immutable ID | +| `--target.azure-logs-ingestion.data-collection-stream-name` | Data collection stream name to use as destination, located inside the DCR | +| `--target.azure-logs-ingestion.logs-ingestion-uri` | Data collection endpoint logs ingestion URI | +| `--target.azure-logs-ingestion.tenant-id` | Tenant ID for the Azure account | +| `--target.cloudwatch-logs.auth.creds.aws-access-key-id` | The ID portion of an AWS access key. | +| `--target.cloudwatch-logs.auth.creds.aws-secret-access-key` | The secret portion of an AWS access key. | +| `--target.cloudwatch-logs.auth.role.role-arn` | An ARN that specifies the role that ngrok should use to deliver to the configured target. | +| `--target.cloudwatch-logs.log-group-arn` | An Amazon Resource Name specifying the CloudWatch Logs group to deposit events into. | +| `--target.datadog.api-key` | Datadog API key to use. | +| `--target.datadog.ddsite` | Datadog site to send event to. | +| `--target.datadog.ddtags` | Tags to send with the event. | +| `--target.datadog.service` | Service name to send with the event. | +| `--target.debug.callback-url` | URL to send events to. | +| `--target.debug.log` | Whether or not to output to publisher service logs. | +| `--target.firehose.auth.creds.aws-access-key-id` | The ID portion of an AWS access key. | +| `--target.firehose.auth.creds.aws-secret-access-key` | The secret portion of an AWS access key. | +| `--target.firehose.auth.role.role-arn` | An ARN that specifies the role that ngrok should use to deliver to the configured target. | +| `--target.firehose.delivery-stream-arn` | An Amazon Resource Name specifying the Firehose delivery stream to deposit events into. | +| `--target.kinesis.auth.creds.aws-access-key-id` | The ID portion of an AWS access key. | +| `--target.kinesis.auth.creds.aws-secret-access-key` | The secret portion of an AWS access key. | +| `--target.kinesis.auth.role.role-arn` | An ARN that specifies the role that ngrok should use to deliver to the configured target. | +| `--target.kinesis.stream-arn` | An Amazon Resource Name specifying the Kinesis stream to deposit events into. | +| `--verify-with-test-event` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-destinations delete + +Delete an Event Destination. If the Event Destination is still referenced by an Event Subscription. + +### Usage + +```sh +ngrok api event-destinations delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-destinations get + +Get detailed information about an Event Destination by ID. + +### Usage + +```sh +ngrok api event-destinations get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-destinations list + +List all Event Destinations on this account. + +### Usage + +```sh +ngrok api event-destinations list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-destinations send-test-event + +Send a test event to an Event Destination + +### Usage + +```sh +ngrok api event-destinations send-test-event [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-destinations update + +Update attributes of an Event Destination. + +### Usage + +```sh +ngrok api event-destinations update [flags] +``` + +### Flags + +| Flag | Description | +| ----------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| `--description` | Human-readable description of the Event Destination. Optional, max 255 bytes. | +| `--format` | The output format you would like to serialize events into when sending to their target. Currently the only accepted value is JSON. | +| `--metadata` | Arbitrary user-defined machine-readable data of this Event Destination. Optional, max 4096 bytes. | +| `--target.azure-logs-ingestion.client-id` | Client ID for the application client | +| `--target.azure-logs-ingestion.client-secret` | Client Secret for the application client | +| `--target.azure-logs-ingestion.data-collection-rule-id` | Data collection rule immutable ID | +| `--target.azure-logs-ingestion.data-collection-stream-name` | Data collection stream name to use as destination, located inside the DCR | +| `--target.azure-logs-ingestion.logs-ingestion-uri` | Data collection endpoint logs ingestion URI | +| `--target.azure-logs-ingestion.tenant-id` | Tenant ID for the Azure account | +| `--target.cloudwatch-logs.auth.creds.aws-access-key-id` | The ID portion of an AWS access key. | +| `--target.cloudwatch-logs.auth.creds.aws-secret-access-key` | The secret portion of an AWS access key. | +| `--target.cloudwatch-logs.auth.role.role-arn` | An ARN that specifies the role that ngrok should use to deliver to the configured target. | +| `--target.cloudwatch-logs.log-group-arn` | An Amazon Resource Name specifying the CloudWatch Logs group to deposit events into. | +| `--target.datadog.api-key` | Datadog API key to use. | +| `--target.datadog.ddsite` | Datadog site to send event to. | +| `--target.datadog.ddtags` | Tags to send with the event. | +| `--target.datadog.service` | Service name to send with the event. | +| `--target.debug.callback-url` | URL to send events to. | +| `--target.debug.log` | Whether or not to output to publisher service logs. | +| `--target.firehose.auth.creds.aws-access-key-id` | The ID portion of an AWS access key. | +| `--target.firehose.auth.creds.aws-secret-access-key` | The secret portion of an AWS access key. | +| `--target.firehose.auth.role.role-arn` | An ARN that specifies the role that ngrok should use to deliver to the configured target. | +| `--target.firehose.delivery-stream-arn` | An Amazon Resource Name specifying the Firehose delivery stream to deposit events into. | +| `--target.kinesis.auth.creds.aws-access-key-id` | The ID portion of an AWS access key. | +| `--target.kinesis.auth.creds.aws-secret-access-key` | The secret portion of an AWS access key. | +| `--target.kinesis.auth.role.role-arn` | An ARN that specifies the role that ngrok should use to deliver to the configured target. | +| `--target.kinesis.stream-arn` | An Amazon Resource Name specifying the Kinesis stream to deposit events into. | +| `--verify-with-test-event` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-sources + +### SubCommands + +| Command | Description | +| ----------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-event-sources-create) | Add an additional type for which this event sub... | +| [delete](#ngrok-api-event-sources-delete) | Remove a type for which this event subscription... | +| [get](#ngrok-api-event-sources-get) | Get the details for a given type that triggers ... | +| [list](#ngrok-api-event-sources-list) | List the types for which this event subscriptio... | +| [update](#ngrok-api-event-sources-update) | Update the type for which this event subscripti... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-sources create + +Add an additional type for which this event subscription will trigger + +### Usage + +```sh +ngrok api event-sources create [flags] +``` + +### Flags + +| Flag | Description | +| ------------------- | --------------------------------------------------------------------------------------- | +| `--fields` | TODO | +| `--filter` | TODO | +| `--subscription-id` | The unique identifier for the Event Subscription that this Event Source is attached to. | +| `--type` | Type of event for which an event subscription will trigger | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-sources delete + +Remove a type for which this event subscription will trigger + +### Usage + +```sh +ngrok api event-sources delete [flags] +``` + +### Flags + +| Flag | Description | +| ------------------- | --------------------------------------------------------------------------------------- | +| `--subscription-id` | The unique identifier for the Event Subscription that this Event Source is attached to. | +| `--type` | Type of event for which an event subscription will trigger | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-sources get + +Get the details for a given type that triggers for the given event subscription + +### Usage + +```sh +ngrok api event-sources get [flags] +``` + +### Flags + +| Flag | Description | +| ------------------- | --------------------------------------------------------------------------------------- | +| `--subscription-id` | The unique identifier for the Event Subscription that this Event Source is attached to. | +| `--type` | Type of event for which an event subscription will trigger | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-sources list + +List the types for which this event subscription will trigger + +### Usage + +```sh +ngrok api event-sources list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-sources update + +Update the type for which this event subscription will trigger + +### Usage + +```sh +ngrok api event-sources update [flags] +``` + +### Flags + +| Flag | Description | +| ------------------- | --------------------------------------------------------------------------------------- | +| `--fields` | TODO | +| `--filter` | TODO | +| `--subscription-id` | The unique identifier for the Event Subscription that this Event Source is attached to. | +| `--type` | Type of event for which an event subscription will trigger | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-subscriptions + +### SubCommands + +| Command | Description | +| ----------------------------------------------- | ---------------------------------------- | +| [create](#ngrok-api-event-subscriptions-create) | Create an Event Subscription. | +| [delete](#ngrok-api-event-subscriptions-delete) | Delete an Event Subscription. | +| [get](#ngrok-api-event-subscriptions-get) | Get an Event Subscription by ID. | +| [list](#ngrok-api-event-subscriptions-list) | List this Account's Event Subscriptions. | +| [update](#ngrok-api-event-subscriptions-update) | Update an Event Subscription. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-subscriptions create + +Create an Event Subscription. + +### Usage + +```sh +ngrok api event-subscriptions create [flags] +``` + +### Flags + +| Flag | Description | +| ------------------- | -------------------------------------------------------------------------------------------------- | +| `--description` | Arbitrary customer supplied information intended to be human readable. Optional, max 255 chars. | +| `--destination-ids` | A list of Event Destination IDs which should be used for this Event Subscription. | +| `--metadata` | Arbitrary customer supplied information intended to be machine readable. Optional, max 4096 chars. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-subscriptions delete + +Delete an Event Subscription. + +### Usage + +```sh +ngrok api event-subscriptions delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-subscriptions get + +Get an Event Subscription by ID. + +### Usage + +```sh +ngrok api event-subscriptions get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-subscriptions list + +List this Account's Event Subscriptions. + +### Usage + +```sh +ngrok api event-subscriptions list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api event-subscriptions update + +Update an Event Subscription. + +### Usage + +```sh +ngrok api event-subscriptions update [flags] +``` + +### Flags + +| Flag | Description | +| ------------------- | -------------------------------------------------------------------------------------------------- | +| `--description` | Arbitrary customer supplied information intended to be human readable. Optional, max 255 chars. | +| `--destination-ids` | A list of Event Destination IDs which should be used for this Event Subscription. | +| `--metadata` | Arbitrary customer supplied information intended to be machine readable. Optional, max 4096 chars. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policies + +IP Policies are reusable groups of CIDR ranges with an allow or deny +action. They can be attached to endpoints via the Endpoint Configuration IP +Policy module. They can also be used with IP Restrictions to control source +IP ranges that can start tunnel sessions and connect to the API and dashboard. + +### SubCommands + +| Command | Description | +| --------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-ip-policies-create) | Create a new IP policy. It will not apply to an... | +| [delete](#ngrok-api-ip-policies-delete) | Delete an IP policy. If the IP policy is refere... | +| [get](#ngrok-api-ip-policies-get) | Get detailed information about an IP policy by ... | +| [list](#ngrok-api-ip-policies-list) | List all IP policies on this account | +| [update](#ngrok-api-ip-policies-update) | Update attributes of an IP policy by ID | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policies create + +Create a new IP policy. It will not apply to any traffic until you associate to a traffic source via an endpoint configuration or IP restriction. + +### Usage + +```sh +ngrok api ip-policies create [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--action` | this field is deprecated. Please leave it empty and use the ip policy rule object's "action" field instead. It is temporarily retained for backwards compatibility reasons. | +| `--description` | human-readable description of the source IPs of this IP policy. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policies delete + +Delete an IP policy. If the IP policy is referenced by another object for the purposes of traffic restriction it will be treated as if the IP policy remains but has zero rules. + +### Usage + +```sh +ngrok api ip-policies delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policies get + +Get detailed information about an IP policy by ID. + +### Usage + +```sh +ngrok api ip-policies get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policies list + +List all IP policies on this account + +### Usage + +```sh +ngrok api ip-policies list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policies update + +Update attributes of an IP policy by ID + +### Usage + +```sh +ngrok api ip-policies update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ----------------------------------------------------------------------------------------- | +| `--description` | human-readable description of the source IPs of this IP policy. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policy-rules + +IP Policy Rules are the IPv4 or IPv6 CIDRs entries that +make up an IP Policy. + +### SubCommands + +| Command | Description | +| ------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-ip-policy-rules-create) | Create a new IP policy rule attached to an IP P... | +| [delete](#ngrok-api-ip-policy-rules-delete) | Delete an IP policy rule. | +| [get](#ngrok-api-ip-policy-rules-get) | Get detailed information about an IP policy rul... | +| [list](#ngrok-api-ip-policy-rules-list) | List all IP policy rules on this account | +| [update](#ngrok-api-ip-policy-rules-update) | Update attributes of an IP policy rule by ID | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policy-rules create + +Create a new IP policy rule attached to an IP Policy. + +### Usage + +```sh +ngrok api ip-policy-rules create [flags] +``` + +### Flags + +| Flag | Description | +| ---------------- | ---------------------------------------------------------------------------------------------- | +| `--action` | the action to apply to the policy rule, either allow or deny | +| `--cidr` | an IP or IP range specified in CIDR notation. IPv4 and IPv6 are both supported. | +| `--description` | human-readable description of the source IPs of this IP rule. optional, max 255 bytes. | +| `--ip-policy-id` | ID of the IP policy this IP policy rule will be attached to | +| `--metadata` | arbitrary user-defined machine-readable data of this IP policy rule. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policy-rules delete + +Delete an IP policy rule. + +### Usage + +```sh +ngrok api ip-policy-rules delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policy-rules get + +Get detailed information about an IP policy rule by ID. + +### Usage + +```sh +ngrok api ip-policy-rules get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policy-rules list + +List all IP policy rules on this account + +### Usage + +```sh +ngrok api ip-policy-rules list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-policy-rules update + +Update attributes of an IP policy rule by ID + +### Usage + +```sh +ngrok api ip-policy-rules update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------------------------------- | +| `--cidr` | an IP or IP range specified in CIDR notation. IPv4 and IPv6 are both supported. | +| `--description` | human-readable description of the source IPs of this IP rule. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this IP policy rule. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-restrictions + +An IP restriction is a restriction placed on the CIDRs that are allowed to +initiate traffic to a specific aspect of your ngrok account. An IP +restriction has a type which defines the ingress it applies to. IP +restrictions can be used to enforce the source IPs that can make API +requests, log in to the dashboard, start ngrok agents, and connect to your +public-facing endpoints. + +### SubCommands + +| Command | Description | +| ------------------------------------------- | ------------------------------------------------ | +| [create](#ngrok-api-ip-restrictions-create) | Create a new IP restriction | +| [delete](#ngrok-api-ip-restrictions-delete) | Delete an IP restriction | +| [get](#ngrok-api-ip-restrictions-get) | Get detailed information about an IP restriction | +| [list](#ngrok-api-ip-restrictions-list) | List all IP restrictions on this account | +| [update](#ngrok-api-ip-restrictions-update) | Update attributes of an IP restriction by ID | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-restrictions create + +Create a new IP restriction + +### Usage + +```sh +ngrok api ip-restrictions create [flags] +``` + +### Flags + +| Flag | Description | +| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `--description` | human-readable description of this IP restriction. optional, max 255 bytes. | +| `--enforced` | true if the IP restriction will be enforced. if false, only warnings will be issued | +| `--ip-policy-ids` | the set of IP policy identifiers that are used to enforce the restriction | +| `--metadata` | arbitrary user-defined machine-readable data of this IP restriction. optional, max 4096 bytes. | +| `--type` | the type of IP restriction. this defines what traffic will be restricted with the attached policies. four values are currently supported: dashboard, api, agent, and endpoints | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-restrictions delete + +Delete an IP restriction + +### Usage + +```sh +ngrok api ip-restrictions delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-restrictions get + +Get detailed information about an IP restriction + +### Usage + +```sh +ngrok api ip-restrictions get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-restrictions list + +List all IP restrictions on this account + +### Usage + +```sh +ngrok api ip-restrictions list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ip-restrictions update + +Update attributes of an IP restriction by ID + +### Usage + +```sh +ngrok api ip-restrictions update [flags] +``` + +### Flags + +| Flag | Description | +| ----------------- | ---------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of this IP restriction. optional, max 255 bytes. | +| `--enforced` | true if the IP restriction will be enforced. if false, only warnings will be issued | +| `--ip-policy-ids` | the set of IP policy identifiers that are used to enforce the restriction | +| `--metadata` | arbitrary user-defined machine-readable data of this IP restriction. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api kubernetes-operators + +KubernetesOperators is used by the Kubernetes Operator to register and +manage its own resource, as well as for users to see active kubernetes +clusters. + +### SubCommands + +| Command | Description | +| -------------------------------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-kubernetes-operators-create) | Create a new Kubernetes Operator | +| [delete](#ngrok-api-kubernetes-operators-delete) | Delete a Kubernetes Operator | +| [get](#ngrok-api-kubernetes-operators-get) | Get of a Kubernetes Operator | +| [get-bound-endpoints](#ngrok-api-kubernetes-operators-get-bound-endpoints) | List Endpoints bound to a Kubernetes Operator | +| [list](#ngrok-api-kubernetes-operators-list) | List all Kubernetes Operators owned by this acc... | +| [update](#ngrok-api-kubernetes-operators-update) | Update an existing Kubernetes operator by ID. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api kubernetes-operators create + +Create a new Kubernetes Operator + +### Usage + +```sh +ngrok api kubernetes-operators create [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--binding.allowed-urls` | the regexes for urls allowed to be bound to this operator | +| `--binding.csr` | CSR is supplied during initial creation to enable creating a mutual TLS secured connection between ngrok and the operator. This is an internal implementation detail and subject to change. | +| `--binding.ingress-endpoint` | the public ingress endpoint for this Kubernetes Operator | +| `--binding.name` | the name by which endpoints can be bound to this Kubernetes Operator. starts with "k8s/" | +| `--deployment.name` | the deployment name | +| `--deployment.namespace` | the namespace this Kubernetes Operator is deployed to | +| `--deployment.version` | the version of this Kubernetes Operator | +| `--description` | human-readable description of this Kubernetes Operator. optional, max 255 bytes. | +| `--enabled-features` | features enabled for this Kubernetes Operator. a subset of \{"bindings", "ingress", and "gateway"\} | +| `--metadata` | arbitrary user-defined machine-readable data of this Kubernetes Operator. optional, max 4096 bytes. | +| `--region` | the ngrok region in which the ingress for this operator is served. defaults to "global" | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api kubernetes-operators delete + +Delete a Kubernetes Operator + +### Usage + +```sh +ngrok api kubernetes-operators delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api kubernetes-operators get + +Get of a Kubernetes Operator + +### Usage + +```sh +ngrok api kubernetes-operators get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api kubernetes-operators get-bound-endpoints + +List Endpoints bound to a Kubernetes Operator + +### Usage + +```sh +ngrok api kubernetes-operators get-bound-endpoints [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api kubernetes-operators list + +List all Kubernetes Operators owned by this account + +### Usage + +```sh +ngrok api kubernetes-operators list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api kubernetes-operators update + +Update an existing Kubernetes operator by ID. + +### Usage + +```sh +ngrok api kubernetes-operators update [flags] +``` + +### Flags + +| Flag | Description | +| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--binding.allowed-urls` | the regexes for urls allowed to be bound to this operator | +| `--binding.csr` | CSR is supplied during initial creation to enable creating a mutual TLS secured connection between ngrok and the operator. This is an internal implementation detail and subject to change. | +| `--binding.ingress-endpoint` | the public ingress endpoint for this Kubernetes Operator | +| `--binding.name` | the name by which endpoints can be bound to this Kubernetes Operator. starts with "k8s/" | +| `--description` | human-readable description of this Kubernetes Operator. optional, max 255 bytes. | +| `--enabled-features` | features enabled for this Kubernetes Operator. a subset of \{"bindings", "ingress", and "gateway"\} | +| `--metadata` | arbitrary user-defined machine-readable data of this Kubernetes Operator. optional, max 4096 bytes. | +| `--region` | the ngrok region in which the ingress for this operator is served. defaults to "global" | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------------- | ----------- | +| [backend](#ngrok-api-pointcfg-module-backend) | | +| [basic-auth](#ngrok-api-pointcfg-module-basic-auth) | | +| [circuit-breaker](#ngrok-api-pointcfg-module-circuit-breaker) | | +| [compression](#ngrok-api-pointcfg-module-compression) | | +| [ip-policy](#ngrok-api-pointcfg-module-ip-policy) | | +| [mutual-tls](#ngrok-api-pointcfg-module-mutual-tls) | | +| [oauth](#ngrok-api-pointcfg-module-oauth) | | +| [oidc](#ngrok-api-pointcfg-module-oidc) | | +| [request-headers](#ngrok-api-pointcfg-module-request-headers) | | +| [response-headers](#ngrok-api-pointcfg-module-response-headers) | | +| [saml](#ngrok-api-pointcfg-module-saml) | | +| [tls-termination](#ngrok-api-pointcfg-module-tls-termination) | | +| [webhook-validation](#ngrok-api-pointcfg-module-webhook-validation) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module backend + +### SubCommands + +| Command | Description | +| ----------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-backend-delete) | | +| [get](#ngrok-api-pointcfg-module-backend-get) | | +| [replace](#ngrok-api-pointcfg-module-backend-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module backend delete + +### Usage + +```sh +ngrok api pointcfg-module backend delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module backend get + +### Usage + +```sh +ngrok api pointcfg-module backend get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module backend replace + +### Usage + +```sh +ngrok api pointcfg-module backend replace [flags] +``` + +### Flags + +| Flag | Description | +| --------------------- | -------------------------------------------------------------------------------------------- | +| `--module.backend-id` | backend to be used to back this endpoint | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module basic-auth + +### SubCommands + +| Command | Description | +| -------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-basic-auth-delete) | | +| [get](#ngrok-api-pointcfg-module-basic-auth-get) | | +| [replace](#ngrok-api-pointcfg-module-basic-auth-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module basic-auth delete + +### Usage + +```sh +ngrok api pointcfg-module basic-auth delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module basic-auth get + +### Usage + +```sh +ngrok api pointcfg-module basic-auth get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module basic-auth replace + +### Usage + +```sh +ngrok api pointcfg-module basic-auth replace [flags] +``` + +### Flags + +| Flag | Description | +| --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.allow-options` | true or false indicating whether to allow OPTIONS requests through without authentication which is necessary for CORS. default is false | +| `--module.auth-provider-id` | determines how the basic auth credentials are validated. Currently only the value agent is supported which means that credentials will be validated against the username and password specified by the ngrok agent's --basic-auth flag, if any. | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.realm` | an arbitrary string to be specified in as the 'realm' value in the WWW-Authenticate header. default is ngrok | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module circuit-breaker + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-circuit-breaker-delete) | | +| [get](#ngrok-api-pointcfg-module-circuit-breaker-get) | | +| [replace](#ngrok-api-pointcfg-module-circuit-breaker-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module circuit-breaker delete + +### Usage + +```sh +ngrok api pointcfg-module circuit-breaker delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module circuit-breaker get + +### Usage + +```sh +ngrok api pointcfg-module circuit-breaker get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module circuit-breaker replace + +### Usage + +```sh +ngrok api pointcfg-module circuit-breaker replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------------------- | ------------------------------------------------------------------------------------------------------------ | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.error-threshold-percentage` | Error threshold percentage should be between 0 - 1.0, not 0-100.0 | +| `--module.num-buckets` | Integer number of buckets into which metrics are retained. Max 128. | +| `--module.rolling-window` | Integer number of seconds in the statistical rolling window that metrics are retained for. | +| `--module.tripped-duration` | Integer number of seconds after which the circuit is tripped to wait before re-evaluating upstream health | +| `--module.volume-threshold` | Integer number of requests in a rolling window that will trip the circuit. Helpful if traffic volume is low. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module compression + +### SubCommands + +| Command | Description | +| --------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-compression-delete) | | +| [get](#ngrok-api-pointcfg-module-compression-get) | | +| [replace](#ngrok-api-pointcfg-module-compression-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module compression delete + +### Usage + +```sh +ngrok api pointcfg-module compression delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module compression get + +### Usage + +```sh +ngrok api pointcfg-module compression get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module compression replace + +### Usage + +```sh +ngrok api pointcfg-module compression replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | -------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module ip-policy + +### SubCommands + +| Command | Description | +| ------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-ip-policy-delete) | | +| [get](#ngrok-api-pointcfg-module-ip-policy-get) | | +| [replace](#ngrok-api-pointcfg-module-ip-policy-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module ip-policy delete + +### Usage + +```sh +ngrok api pointcfg-module ip-policy delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module ip-policy get + +### Usage + +```sh +ngrok api pointcfg-module ip-policy get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module ip-policy replace + +### Usage + +```sh +ngrok api pointcfg-module ip-policy replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------ | --------------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.ip-policy-ids` | list of all IP policies that will be used to check if a source IP is allowed access to the endpoint | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module mutual-tls + +### SubCommands + +| Command | Description | +| -------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-mutual-tls-delete) | | +| [get](#ngrok-api-pointcfg-module-mutual-tls-get) | | +| [replace](#ngrok-api-pointcfg-module-mutual-tls-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module mutual-tls delete + +### Usage + +```sh +ngrok api pointcfg-module mutual-tls delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module mutual-tls get + +### Usage + +```sh +ngrok api pointcfg-module mutual-tls get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module mutual-tls replace + +### Usage + +```sh +ngrok api pointcfg-module mutual-tls replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.certificate-authority-ids` | list of certificate authorities that will be used to validate the TLS client certificate presented by the initiator of the TLS connection | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module oauth + +### SubCommands + +| Command | Description | +| --------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-oauth-delete) | | +| [get](#ngrok-api-pointcfg-module-oauth-get) | | +| [replace](#ngrok-api-pointcfg-module-oauth-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module oauth delete + +### Usage + +```sh +ngrok api pointcfg-module oauth delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module oauth get + +### Usage + +```sh +ngrok api pointcfg-module oauth get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module oauth replace + +### Usage + +```sh +ngrok api pointcfg-module oauth replace [flags] +``` + +### Flags + +| Flag | Description | +| --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.auth-check-interval` | Integer number of seconds after which ngrok guarantees it will refresh user state from the identity provider and recheck whether the user is still authorized to access the endpoint. This is the preferred tunable to use to enforce a minimum amount of time after which a revoked user will no longer be able to access the resource. | +| `--module.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--module.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--module.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--module.provider.amazon.client-id` | | +| `--module.provider.amazon.client-secret` | | +| `--module.provider.amazon.email-addresses` | | +| `--module.provider.amazon.email-domains` | | +| `--module.provider.amazon.scopes` | | +| `--module.provider.facebook.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--module.provider.facebook.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--module.provider.facebook.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.facebook.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.facebook.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--module.provider.github.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--module.provider.github.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--module.provider.github.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.github.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.github.organizations` | a list of github org identifiers. users who are members of any of the listed organizations will be allowed access. identifiers should be the organization's 'slug' | +| `--module.provider.github.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--module.provider.github.teams` | a list of github teams identifiers. users will be allowed access to the endpoint if they are a member of any of these teams. identifiers should be in the 'slug' format qualified with the org name, e.g. org-name/team-name | +| `--module.provider.gitlab.client-id` | | +| `--module.provider.gitlab.client-secret` | | +| `--module.provider.gitlab.email-addresses` | | +| `--module.provider.gitlab.email-domains` | | +| `--module.provider.gitlab.scopes` | | +| `--module.provider.google.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--module.provider.google.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--module.provider.google.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.google.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.google.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--module.provider.linkedin.client-id` | | +| `--module.provider.linkedin.client-secret` | | +| `--module.provider.linkedin.email-addresses` | | +| `--module.provider.linkedin.email-domains` | | +| `--module.provider.linkedin.scopes` | | +| `--module.provider.microsoft.client-id` | the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well. | +| `--module.provider.microsoft.client-secret` | the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id. | +| `--module.provider.microsoft.email-addresses` | a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.microsoft.email-domains` | a list of email domains of users authenticated by identity provider who are allowed access to the endpoint | +| `--module.provider.microsoft.scopes` | a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes) | +| `--module.provider.twitch.client-id` | | +| `--module.provider.twitch.client-secret` | | +| `--module.provider.twitch.email-addresses` | | +| `--module.provider.twitch.email-domains` | | +| `--module.provider.twitch.scopes` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module oidc + +### SubCommands + +| Command | Description | +| -------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-oidc-delete) | | +| [get](#ngrok-api-pointcfg-module-oidc-get) | | +| [replace](#ngrok-api-pointcfg-module-oidc-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module oidc delete + +### Usage + +```sh +ngrok api pointcfg-module oidc delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module oidc get + +### Usage + +```sh +ngrok api pointcfg-module oidc get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module oidc replace + +### Usage + +```sh +ngrok api pointcfg-module oidc replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.client-id` | The OIDC app's client ID and OIDC audience. | +| `--module.client-secret` | The OIDC app's client secret. | +| `--module.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--module.issuer` | URL of the OIDC "OpenID provider". This is the base URL used for discovery. | +| `--module.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--module.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--module.scopes` | The set of scopes to request from the OIDC identity provider. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module request-headers + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-request-headers-delete) | | +| [get](#ngrok-api-pointcfg-module-request-headers-get) | | +| [replace](#ngrok-api-pointcfg-module-request-headers-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module request-headers delete + +### Usage + +```sh +ngrok api pointcfg-module request-headers delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module request-headers get + +### Usage + +```sh +ngrok api pointcfg-module request-headers get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module request-headers replace + +### Usage + +```sh +ngrok api pointcfg-module request-headers replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | +| `--module.add` | a map of header key to header value that will be injected into the HTTP Request before being sent to the upstream application server | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.remove` | a list of header names that will be removed from the HTTP Request before being sent to the upstream application server | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module response-headers + +### SubCommands + +| Command | Description | +| -------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-response-headers-delete) | | +| [get](#ngrok-api-pointcfg-module-response-headers-get) | | +| [replace](#ngrok-api-pointcfg-module-response-headers-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module response-headers delete + +### Usage + +```sh +ngrok api pointcfg-module response-headers delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module response-headers get + +### Usage + +```sh +ngrok api pointcfg-module response-headers get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module response-headers replace + +### Usage + +```sh +ngrok api pointcfg-module response-headers replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------ | ------------------------------------------------------------------------------------------------------------ | +| `--module.add` | a map of header key to header value that will be injected into the HTTP Response returned to the HTTP client | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.remove` | a list of header names that will be removed from the HTTP Response returned to the HTTP client | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module saml + +### SubCommands + +| Command | Description | +| -------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-saml-delete) | | +| [get](#ngrok-api-pointcfg-module-saml-get) | | +| [replace](#ngrok-api-pointcfg-module-saml-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module saml delete + +### Usage + +```sh +ngrok api pointcfg-module saml delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module saml get + +### Usage + +```sh +ngrok api pointcfg-module saml get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module saml replace + +### Usage + +```sh +ngrok api pointcfg-module saml replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.allow-idp-initiated` | If true, the IdP may initiate a login directly (e.g. the user does not need to visit the endpoint first and then be redirected). The IdP should set the RelayState parameter to the target URL of the resource they want the user to be redirected to after the SAML login assertion has been processed. | +| `--module.authorized-groups` | If present, only users who are a member of one of the listed groups may access the target endpoint. | +| `--module.cookie-prefix` | the prefix of the session cookie that ngrok sets on the http client to cache authentication. default is 'ngrok.' | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.force-authn` | If true, indicates that whenever we redirect a user to the IdP for authentication that the IdP must prompt the user for authentication credentials even if the user already has a valid session with the IdP. | +| `--module.idp-metadata` | The full XML IdP EntityDescriptor. Your IdP may provide this to you as a a file to download or as a URL. | +| `--module.idp-metadata-url` | The IdP's metadata URL which returns the XML IdP EntityDescriptor. The IdP's metadata URL specifies how to connect to the IdP as well as its public key which is then used to validate the signature on incoming SAML assertions to the ACS endpoint. | +| `--module.inactivity-timeout` | Integer number of seconds of inactivity after which if the user has not accessed the endpoint, their session will time out and they will be forced to reauthenticate. | +| `--module.maximum-duration` | Integer number of seconds of the maximum duration of an authenticated session. After this period is exceeded, a user must reauthenticate. | +| `--module.nameid-format` | Defines the name identifier format the SP expects the IdP to use in its assertions to identify subjects. If unspecified, a default value of urn:oasis:names:tc:SAML:2.0:nameid-format:persistent will be used. A subset of the allowed values enumerated by the SAML specification are supported. | +| `--module.options-passthrough` | Do not enforce authentication on HTTP OPTIONS requests. necessary if you are supporting CORS. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module tls-termination + +### SubCommands + +| Command | Description | +| ------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-tls-termination-delete) | | +| [get](#ngrok-api-pointcfg-module-tls-termination-get) | | +| [replace](#ngrok-api-pointcfg-module-tls-termination-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module tls-termination delete + +### Usage + +```sh +ngrok api pointcfg-module tls-termination delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module tls-termination get + +### Usage + +```sh +ngrok api pointcfg-module tls-termination get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module tls-termination replace + +### Usage + +```sh +ngrok api pointcfg-module tls-termination replace [flags] +``` + +### Flags + +| Flag | Description | +| ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.min-version` | The minimum TLS version used for termination and advertised to the client during the TLS handshake. if unspecified, ngrok will choose an industry-safe default. This value must be null if terminate_at is set to upstream. | +| `--module.terminate-at` | edge if the ngrok edge should terminate TLS traffic, upstream if TLS traffic should be passed through to the upstream ngrok agent / application server for termination. if upstream is chosen, most other modules will be disallowed because they rely on the ngrok edge being able to access the underlying traffic. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module webhook-validation + +### SubCommands + +| Command | Description | +| ---------------------------------------------------------------- | ----------- | +| [delete](#ngrok-api-pointcfg-module-webhook-validation-delete) | | +| [get](#ngrok-api-pointcfg-module-webhook-validation-get) | | +| [replace](#ngrok-api-pointcfg-module-webhook-validation-replace) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module webhook-validation delete + +### Usage + +```sh +ngrok api pointcfg-module webhook-validation delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module webhook-validation get + +### Usage + +```sh +ngrok api pointcfg-module webhook-validation get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api pointcfg-module webhook-validation replace + +### Usage + +```sh +ngrok api pointcfg-module webhook-validation replace [flags] +``` + +### Flags + +| Flag | Description | +| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--module.enabled` | true if the module will be applied to traffic, false to disable. default true if unspecified | +| `--module.provider` | a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers defined at https://ngrok.com/docs/cloud-edge/modules/webhook-verification (https://ngrok.com/docs/cloud-edge/modules/webhook-verification) | +| `--module.secret` | a string secret used to validate requests from the given provider. All providers except AWS SNS require a secret | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-addrs + +Reserved Addresses are TCP addresses that can be used to listen for traffic. +TCP address hostnames and ports are assigned by ngrok, they cannot be +chosen. + +### SubCommands + +| Command | Description | +| -------------------------------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-reserved-addrs-create) | Create a new reserved address. | +| [delete](#ngrok-api-reserved-addrs-delete) | Delete a reserved address. | +| [delete-endpoint-config](#ngrok-api-reserved-addrs-delete-endpoint-config) | Detach the endpoint configuration attached to a... | +| [get](#ngrok-api-reserved-addrs-get) | Get the details of a reserved address. | +| [list](#ngrok-api-reserved-addrs-list) | List all reserved addresses on this account. | +| [update](#ngrok-api-reserved-addrs-update) | Update the attributes of a reserved address. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-addrs create + +Create a new reserved address. + +### Usage + +```sh +ngrok api reserved-addrs create [flags] +``` + +### Flags + +| Flag | Description | +| ----------------------------- | -------------------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of what this reserved address will be used for | +| `--endpoint-configuration-id` | ID of an endpoint configuration of type tcp that will be used to handle inbound traffic to this address | +| `--metadata` | arbitrary user-defined machine-readable data of this reserved address. Optional, max 4096 bytes. | +| `--region` | reserve the address in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa) | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-addrs delete + +Delete a reserved address. + +### Usage + +```sh +ngrok api reserved-addrs delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-addrs delete-endpoint-config + +Detach the endpoint configuration attached to a reserved address. + +### Usage + +```sh +ngrok api reserved-addrs delete-endpoint-config [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-addrs get + +Get the details of a reserved address. + +### Usage + +```sh +ngrok api reserved-addrs get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-addrs list + +List all reserved addresses on this account. + +### Usage + +```sh +ngrok api reserved-addrs list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-addrs update + +Update the attributes of a reserved address. + +### Usage + +```sh +ngrok api reserved-addrs update [flags] +``` + +### Flags + +| Flag | Description | +| ----------------------------- | ------------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of what this reserved address will be used for | +| `--endpoint-configuration-id` | ID of an endpoint configuration of type tcp that will be used to handle inbound traffic to this address | +| `--metadata` | arbitrary user-defined machine-readable data of this reserved address. Optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains + +Reserved Domains are hostnames that you can listen for traffic on. Domains +can be used to listen for http, https or tls traffic. You may use a domain +that you own by creating a CNAME record specified in the returned resource. +This CNAME record points traffic for that domain to ngrok's edge servers. + +### SubCommands + +| Command | Description | +| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-reserved-domains-create) | Create a new reserved domain. | +| [delete](#ngrok-api-reserved-domains-delete) | Delete a reserved domain. | +| [delete-certificate](#ngrok-api-reserved-domains-delete-certificate) | Detach the certificate attached to a reserved d... | +| [delete-certificate-management-policy](#ngrok-api-reserved-domains-delete-certificate-management-policy) | Detach the certificate management policy attach... | +| [delete-http-endpoint-config](#ngrok-api-reserved-domains-delete-http-endpoint-config) | Detach the http endpoint configuration attached... | +| [delete-https-endpoint-config](#ngrok-api-reserved-domains-delete-https-endpoint-config) | Detach the https endpoint configuration attache... | +| [get](#ngrok-api-reserved-domains-get) | Get the details of a reserved domain. | +| [list](#ngrok-api-reserved-domains-list) | List all reserved domains on this account. | +| [update](#ngrok-api-reserved-domains-update) | Update the attributes of a reserved domain. | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains create + +Create a new reserved domain. + +### Usage + +```sh +ngrok api reserved-domains create [flags] +``` + +### Flags + +| Flag | Description | +| -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `--certificate-id` | ID of a user-uploaded TLS certificate to use for connections to targeting this domain. Optional, mutually exclusive with certificate_management_policy. | +| `--certificate-management-policy.authority` | certificate authority to request certificates from. The only supported value is letsencrypt. | +| `--certificate-management-policy.private-key-type` | type of private key to use when requesting certificates. Defaults to ecdsa, can be either rsa or ecdsa. | +| `--description` | human-readable description of what this reserved domain will be used for | +| `--domain` | hostname of the reserved domain | +| `--http-endpoint-configuration-id` | ID of an endpoint configuration of type http that will be used to handle inbound http traffic to this domain | +| `--https-endpoint-configuration-id` | ID of an endpoint configuration of type https that will be used to handle inbound https traffic to this domain | +| `--metadata` | arbitrary user-defined machine-readable data of this reserved domain. Optional, max 4096 bytes. | +| `--name` | the domain name to reserve. It may be a full domain name like app.example.com. If the name does not contain a '.' it will reserve that subdomain on ngrok.io. | +| `--region` | deprecated: With the launch of the ngrok Global Network domains traffic is now handled globally. This field applied only to endpoints. Note that agents may still connect to specific regions. Optional, null by default. (au, eu, ap, us, jp, in, sa) | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains delete + +Delete a reserved domain. + +### Usage + +```sh +ngrok api reserved-domains delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains delete-certificate + +Detach the certificate attached to a reserved domain. + +### Usage + +```sh +ngrok api reserved-domains delete-certificate [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains delete-certificate-management-policy + +Detach the certificate management policy attached to a reserved domain. + +### Usage + +```sh +ngrok api reserved-domains delete-certificate-management-policy [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains delete-http-endpoint-config + +Detach the http endpoint configuration attached to a reserved domain. + +### Usage + +```sh +ngrok api reserved-domains delete-http-endpoint-config [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains delete-https-endpoint-config + +Detach the https endpoint configuration attached to a reserved domain. + +### Usage + +```sh +ngrok api reserved-domains delete-https-endpoint-config [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains get + +Get the details of a reserved domain. + +### Usage + +```sh +ngrok api reserved-domains get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains list + +List all reserved domains on this account. + +### Usage + +```sh +ngrok api reserved-domains list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api reserved-domains update + +Update the attributes of a reserved domain. + +### Usage + +```sh +ngrok api reserved-domains update [flags] +``` + +### Flags + +| Flag | Description | +| -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `--certificate-id` | ID of a user-uploaded TLS certificate to use for connections to targeting this domain. Optional, mutually exclusive with certificate_management_policy. | +| `--certificate-management-policy.authority` | certificate authority to request certificates from. The only supported value is letsencrypt. | +| `--certificate-management-policy.private-key-type` | type of private key to use when requesting certificates. Defaults to ecdsa, can be either rsa or ecdsa. | +| `--description` | human-readable description of what this reserved domain will be used for | +| `--http-endpoint-configuration-id` | ID of an endpoint configuration of type http that will be used to handle inbound http traffic to this domain | +| `--https-endpoint-configuration-id` | ID of an endpoint configuration of type https that will be used to handle inbound https traffic to this domain | +| `--metadata` | arbitrary user-defined machine-readable data of this reserved domain. Optional, max 4096 bytes. | +| `--region` | deprecated: With the launch of the ngrok Global Network domains traffic is now handled globally. This field applied only to endpoints. Note that agents may still connect to specific regions. Optional, null by default. (au, eu, ap, us, jp, in, sa) | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api root + +### SubCommands + +| Command | Description | +| -------------------------- | ----------- | +| [get](#ngrok-api-root-get) | | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api root get + +### Usage + +```sh +ngrok api root get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-certificate-authorities + +An SSH Certificate Authority is a pair of an SSH Certificate and its private +key that can be used to sign other SSH host and user certificates. + +### SubCommands + +| Command | Description | +| ------------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-ssh-certificate-authorities-create) | Create a new SSH Certificate Authority | +| [delete](#ngrok-api-ssh-certificate-authorities-delete) | Delete an SSH Certificate Authority | +| [get](#ngrok-api-ssh-certificate-authorities-get) | Get detailed information about an SSH Certficat... | +| [list](#ngrok-api-ssh-certificate-authorities-list) | List all SSH Certificate Authorities on this ac... | +| [update](#ngrok-api-ssh-certificate-authorities-update) | Update an SSH Certificate Authority | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-certificate-authorities create + +Create a new SSH Certificate Authority + +### Usage + +```sh +ngrok api ssh-certificate-authorities create [flags] +``` + +### Flags + +| Flag | Description | +| -------------------- | --------------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of this SSH Certificate Authority. optional, max 255 bytes. | +| `--elliptic-curve` | the type of elliptic curve to use when creating an ECDSA key | +| `--key-size` | the key size to use when creating an RSA key. one of 2048 or 4096 | +| `--metadata` | arbitrary user-defined machine-readable data of this SSH Certificate Authority. optional, max 4096 bytes. | +| `--private-key-type` | the type of private key to generate. one of rsa, ecdsa, ed25519 | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-certificate-authorities delete + +Delete an SSH Certificate Authority + +### Usage + +```sh +ngrok api ssh-certificate-authorities delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-certificate-authorities get + +Get detailed information about an SSH Certficate Authority + +### Usage + +```sh +ngrok api ssh-certificate-authorities get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-certificate-authorities list + +List all SSH Certificate Authorities on this account + +### Usage + +```sh +ngrok api ssh-certificate-authorities list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-certificate-authorities update + +Update an SSH Certificate Authority + +### Usage + +```sh +ngrok api ssh-certificate-authorities update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | --------------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of this SSH Certificate Authority. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this SSH Certificate Authority. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-credentials + +SSH Credentials are SSH public keys that can be used to start SSH tunnels +via the ngrok SSH tunnel gateway. + +### SubCommands + +| Command | Description | +| ------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-ssh-credentials-create) | Create a new ssh_credential from an uploaded pu... | +| [delete](#ngrok-api-ssh-credentials-delete) | Delete an ssh_credential by ID | +| [get](#ngrok-api-ssh-credentials-get) | Get detailed information about an ssh_credential | +| [list](#ngrok-api-ssh-credentials-list) | List all ssh credentials on this account | +| [update](#ngrok-api-ssh-credentials-update) | Update attributes of an ssh_credential by ID | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-credentials create + +Create a new ssh_credential from an uploaded public SSH key. This ssh credential can be used to start new tunnels via ngrok's SSH gateway. + +### Usage + +```sh +ngrok api ssh-credentials create [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--acl` | optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the bind rule. The bind rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule bind:example.ngrok.io. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of bind:_.example.com which will allow x.example.com, y.example.com, _.example.com, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of bind:_=example which will allow x=example, y=example, etc. A rule of '_' is equivalent to no acl at all and will explicitly permit all actions. | +| `--description` | human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes. | +| `--owner-email` | If supplied at credential creation, ownership will be assigned to the specified User. Only admins may specify an owner other than themselves. Both owner_id and owner_email may not be specified. | +| `--owner-id` | If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot. | +| `--public-key` | the PEM-encoded public key of the SSH keypair that will be used to authenticate | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-credentials delete + +Delete an ssh_credential by ID + +### Usage + +```sh +ngrok api ssh-credentials delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-credentials get + +Get detailed information about an ssh_credential + +### Usage + +```sh +ngrok api ssh-credentials get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-credentials list + +List all ssh credentials on this account + +### Usage + +```sh +ngrok api ssh-credentials list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-credentials update + +Update attributes of an ssh_credential by ID + +### Usage + +```sh +ngrok api ssh-credentials update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--acl` | optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the bind rule. The bind rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule bind:example.ngrok.io. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of bind:_.example.com which will allow x.example.com, y.example.com, _.example.com, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of bind:_=example which will allow x=example, y=example, etc. A rule of '_' is equivalent to no acl at all and will explicitly permit all actions. | +| `--description` | human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-host-certificates + +SSH Host Certificates along with the corresponding private key allows an SSH +server to assert its authenticity to connecting SSH clients who trust the +SSH Certificate Authority that was used to sign the certificate. + +### SubCommands + +| Command | Description | +| ------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-ssh-host-certificates-create) | Create a new SSH Host Certificate | +| [delete](#ngrok-api-ssh-host-certificates-delete) | Delete an SSH Host Certificate | +| [get](#ngrok-api-ssh-host-certificates-get) | Get detailed information about an SSH Host Cert... | +| [list](#ngrok-api-ssh-host-certificates-list) | List all SSH Host Certificates issued on this a... | +| [update](#ngrok-api-ssh-host-certificates-update) | Update an SSH Host Certificate | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-host-certificates create + +Create a new SSH Host Certificate + +### Usage + +```sh +ngrok api ssh-host-certificates create [flags] +``` + +### Flags + +| Flag | Description | +| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of this SSH Host Certificate. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this SSH Host Certificate. optional, max 4096 bytes. | +| `--principals` | the list of principals included in the ssh host certificate. This is the list of hostnames and/or IP addresses that are authorized to serve SSH traffic with this certificate. Dangerously, if no principals are specified, this certificate is considered valid for all hosts. | +| `--public-key` | a public key in OpenSSH Authorized Keys format that this certificate signs | +| `--ssh-certificate-authority-id` | the ssh certificate authority that is used to sign this ssh host certificate | +| `--valid-after` | The time when the host certificate becomes valid, in RFC 3339 format. Defaults to the current time if unspecified. | +| `--valid-until` | The time when this host certificate becomes invalid, in RFC 3339 format. If unspecified, a default value of one year in the future will be used. The OpenSSH certificates RFC calls this valid_before. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-host-certificates delete + +Delete an SSH Host Certificate + +### Usage + +```sh +ngrok api ssh-host-certificates delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-host-certificates get + +Get detailed information about an SSH Host Certficate + +### Usage + +```sh +ngrok api ssh-host-certificates get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-host-certificates list + +List all SSH Host Certificates issued on this account + +### Usage + +```sh +ngrok api ssh-host-certificates list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-host-certificates update + +Update an SSH Host Certificate + +### Usage + +```sh +ngrok api ssh-host-certificates update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of this SSH Host Certificate. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this SSH Host Certificate. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-user-certificates + +SSH User Certificates are presented by SSH clients when connecting to an SSH +server to authenticate their connection. The SSH server must trust the SSH +Certificate Authority used to sign the certificate. + +### SubCommands + +| Command | Description | +| ------------------------------------------------- | -------------------------------------------------- | +| [create](#ngrok-api-ssh-user-certificates-create) | Create a new SSH User Certificate | +| [delete](#ngrok-api-ssh-user-certificates-delete) | Delete an SSH User Certificate | +| [get](#ngrok-api-ssh-user-certificates-get) | Get detailed information about an SSH User Cert... | +| [list](#ngrok-api-ssh-user-certificates-list) | List all SSH User Certificates issued on this a... | +| [update](#ngrok-api-ssh-user-certificates-update) | Update an SSH User Certificate | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-user-certificates create + +Create a new SSH User Certificate + +### Usage + +```sh +ngrok api ssh-user-certificates create [flags] +``` + +### Flags + +| Flag | Description | +| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--critical-options` | A map of critical options included in the certificate. Only two critical options are currently defined by OpenSSH: force-command and source-address. See the OpenSSH certificate protocol spec (https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys) for additional details. | +| `--description` | human-readable description of this SSH User Certificate. optional, max 255 bytes. | +| `--extensions` | A map of extensions included in the certificate. Extensions are additional metadata that can be interpreted by the SSH server for any purpose. These can be used to permit or deny the ability to open a terminal, do port forwarding, x11 forwarding, and more. If unspecified, the certificate will include limited permissions with the following extension map: \{"permit-pty": "", "permit-user-rc": ""\} OpenSSH understands a number of predefined extensions. See the OpenSSH certificate protocol spec (https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys) for additional details. | +| `--metadata` | arbitrary user-defined machine-readable data of this SSH User Certificate. optional, max 4096 bytes. | +| `--principals` | the list of principals included in the ssh user certificate. This is the list of usernames that the certificate holder may sign in as on a machine authorizing the signing certificate authority. Dangerously, if no principals are specified, this certificate may be used to log in as any user. | +| `--public-key` | a public key in OpenSSH Authorized Keys format that this certificate signs | +| `--ssh-certificate-authority-id` | the ssh certificate authority that is used to sign this ssh user certificate | +| `--valid-after` | The time when the user certificate becomes valid, in RFC 3339 format. Defaults to the current time if unspecified. | +| `--valid-until` | The time when this host certificate becomes invalid, in RFC 3339 format. If unspecified, a default value of 24 hours will be used. The OpenSSH certificates RFC calls this valid_before. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-user-certificates delete + +Delete an SSH User Certificate + +### Usage + +```sh +ngrok api ssh-user-certificates delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-user-certificates get + +Get detailed information about an SSH User Certficate + +### Usage + +```sh +ngrok api ssh-user-certificates get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-user-certificates list + +List all SSH User Certificates issued on this account + +### Usage + +```sh +ngrok api ssh-user-certificates list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api ssh-user-certificates update + +Update an SSH User Certificate + +### Usage + +```sh +ngrok api ssh-user-certificates update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ---------------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of this SSH User Certificate. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this SSH User Certificate. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tls-certificates + +TLS Certificates are pairs of x509 certificates and their matching private +key that can be used to terminate TLS traffic. TLS certificates are unused +until they are attached to a Domain. TLS Certificates may also be +provisioned by ngrok automatically for domains on which you have enabled +automated certificate provisioning. + +### SubCommands + +| Command | Description | +| -------------------------------------------- | ------------------------------------------------ | +| [create](#ngrok-api-tls-certificates-create) | Upload a new TLS certificate | +| [delete](#ngrok-api-tls-certificates-delete) | Delete a TLS certificate | +| [get](#ngrok-api-tls-certificates-get) | Get detailed information about a TLS certificate | +| [list](#ngrok-api-tls-certificates-list) | List all TLS certificates on this account | +| [update](#ngrok-api-tls-certificates-update) | Update attributes of a TLS Certificate by ID | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tls-certificates create + +Upload a new TLS certificate + +### Usage + +```sh +ngrok api tls-certificates create [flags] +``` + +### Flags + +| Flag | Description | +| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | +| `--certificate-pem` | chain of PEM-encoded certificates, leaf first. See Certificate Bundles (https://ngrok.com/docs/cloud-edge/endpoints#certificate-chains). | +| `--description` | human-readable description of this TLS certificate. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this TLS certificate. optional, max 4096 bytes. | +| `--private-key-pem` | private key for the TLS certificate, PEM-encoded. See Private Keys (https://ngrok.com/docs/cloud-edge/endpoints#private-keys). | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tls-certificates delete + +Delete a TLS certificate + +### Usage + +```sh +ngrok api tls-certificates delete [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tls-certificates get + +Get detailed information about a TLS certificate + +### Usage + +```sh +ngrok api tls-certificates get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tls-certificates list + +List all TLS certificates on this account + +### Usage + +```sh +ngrok api tls-certificates list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tls-certificates update + +Update attributes of a TLS Certificate by ID + +### Usage + +```sh +ngrok api tls-certificates update [flags] +``` + +### Flags + +| Flag | Description | +| --------------- | ----------------------------------------------------------------------------------------------- | +| `--description` | human-readable description of this TLS certificate. optional, max 255 bytes. | +| `--metadata` | arbitrary user-defined machine-readable data of this TLS certificate. optional, max 4096 bytes. | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tunnel-sessions + +Tunnel Sessions represent instances of ngrok agents or SSH reverse tunnel +sessions that are running and connected to the ngrok service. Each tunnel +session can include one or more Tunnels. + +### SubCommands + +| Command | Description | +| --------------------------------------------- | -------------------------------------------------- | +| [get](#ngrok-api-tunnel-sessions-get) | Get the detailed status of a tunnel session by ID | +| [list](#ngrok-api-tunnel-sessions-list) | List all online tunnel sessions running on this... | +| [restart](#ngrok-api-tunnel-sessions-restart) | Issues a command instructing the ngrok agent to... | +| [stop](#ngrok-api-tunnel-sessions-stop) | Issues a command instructing the ngrok agent th... | +| [update](#ngrok-api-tunnel-sessions-update) | Issues a command instructing the ngrok agent to... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tunnel-sessions get + +Get the detailed status of a tunnel session by ID + +### Usage + +```sh +ngrok api tunnel-sessions get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tunnel-sessions list + +List all online tunnel sessions running on this account. + +### Usage + +```sh +ngrok api tunnel-sessions list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tunnel-sessions restart + +Issues a command instructing the ngrok agent to restart. The agent restarts itself by calling exec() on platforms that support it. This operation is notably not supported on Windows. When an agent restarts, it reconnects with a new tunnel session ID. + +### Usage + +```sh +ngrok api tunnel-sessions restart [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tunnel-sessions stop + +Issues a command instructing the ngrok agent that started this tunnel session to exit. + +### Usage + +```sh +ngrok api tunnel-sessions stop [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tunnel-sessions update + +Issues a command instructing the ngrok agent to update itself to the latest version. After this call completes successfully, the ngrok agent will be in the update process. A caller should wait some amount of time to allow the update to complete (at least 10 seconds) before making a call to the Restart endpoint to request that the agent restart itself to start using the new code. This call will never update an ngrok agent to a new major version which could cause breaking compatibility issues. If you wish to update to a new major version, that must be done manually. Still, please be aware that updating your ngrok agent could break your integration. This call will fail in any of the following circumstances: there is no update available the ngrok agent's configuration disabled update checks the agent is currently in process of updating the agent has already successfully updated but has not yet been restarted + +### Usage + +```sh +ngrok api tunnel-sessions update [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ---------------------------------------------------------------------------------------------------- | +| `--version` | request that the ngrok agent update to this specific version instead of the latest available version | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tunnels + +Tunnels provide endpoints to access services exposed by a running ngrok +agent tunnel session or an SSH reverse tunnel session. + +### SubCommands + +| Command | Description | +| ------------------------------- | -------------------------------------------------- | +| [get](#ngrok-api-tunnels-get) | Get the status of a tunnel by ID | +| [list](#ngrok-api-tunnels-list) | List all online tunnels currently running on th... | + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tunnels get + +Get the status of a tunnel by ID + +### Usage + +```sh +ngrok api tunnels get [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | + +## ngrok api tunnels list + +List all online tunnels currently running on the account. + +### Usage + +```sh +ngrok api tunnels list [flags] +``` + +### Flags + +| Flag | Description | +| -------------- | ------------------------------------------------------- | +| `--before-id` | | +| `--limit` | | +| `--api-key` | API key to use | +| `--config` | path to config files; they are merged if multiple | +| `--log` | path to log file, 'stdout', 'stderr' or 'false' | +| `--log-format` | log record format: 'term', 'logfmt', 'json' | +| `--log-level` | logging level: 'debug', 'info', 'warn', 'error', 'crit' | diff --git a/docs/agent/cli.mdx b/docs/agent/cli.mdx index 7310244f1..c328dc4c9 100644 --- a/docs/agent/cli.mdx +++ b/docs/agent/cli.mdx @@ -3,100 +3,63 @@ title: CLI toc_max_heading_level: 2 --- +{/* This file is generated. Do not edit it directly. The templates can be edited in the ngrok-private repo */} + # ngrok Agent Command Line Interface (CLI) +The ngrok agent CLI offers built-in commands for interfacing with the ngrok API. These API commands have been separated into +the [ngrok agent CLI API page](../cli-api) for convenience. For more information about the ngrok API and interfacing with it directly, see see [the ngrok api page](../api). + ## ngrok -The root command of the ngrok agent. +ngrok exposes local networked services behinds NATs and firewalls to the +public internet over a secure tunnel. Share local websites, build/test +webhook consumers and self-host personal services. +Detailed help for each command is available by adding '--help' to any command or with +the 'ngrok help' command. +Open https://dashboard.ngrok.com/obs/traffic-inspector to inspect traffic. ### Usage ```sh -ngrok [flags] -ngrok [command] +ngrok [command] [flags] ``` -### Commands - -| Command | Description | -| ------------------------------- | ------------------------------------------------------------- | -| [api](#ngrok-api) | use ngrok agent as an api client | -| [completion](#ngrok-completion) | generates shell completion code for bash or zsh | -| [config](#ngrok-config) | update or migrate ngrok's configuration file | -| [credits](#ngrok-credits) | prints author and licensing information | -| [diagnose](#ngrok-diagnose) | diagnose connection issues | -| [help](#ngrok-help) | Help about any command | -| [http](#ngrok-http) | start an HTTP tunnel | -| [service](#ngrok-service) | run and control an ngrok service on a target operating system | -| [start](#ngrok-start) | start tunnels by name from the configuration file | -| [tcp](#ngrok-tcp) | start a TCP tunnel | -| [tls](#ngrok-tls) | start a TLS tunnel | -| [tunnel](#ngrok-tunnel) | start a tunnel for use with a tunnel-group backend | -| [update](#ngrok-update) | update ngrok to the latest version | -| [version](#ngrok-version) | print the version string | - -### Flags - -| Flag | Description | -| ----------------- | --------------------------------------- | -| `-h`, `--help` | Prints the help for the `ngrok` command | -| `-v`, `--version` | Prints the version for ngrok agent | +### Example -## ngrok api - -The `ngrok api` command provides access to ngrok's API. You can use the API through one of the api subcommands. - -All api subcommands require an API key. You can configure it either using a flag ([`ngrok config add-api-key`](#ngrok-config) command). - -You can get get the initial API key in the [API section of the ngrok Dashboard](https://dashboard.ngrok.com/api). Additional keys can be created through `ngrok api api-keys create` subcommand. - -These commands mirror our standard [ngrok HTTP API](/api). If you have [shell completion enabled](/agent/cli#ngrok-completion), these will tab complete on the terminal. +```sh +ngrok http 80 # secure public URL for port 80 web server +ngrok http --url baz.ngrok.dev 8080 # port 8080 available at baz.ngrok.dev +ngrok http foo.dev:80 # tunnel to host:port instead of localhost +ngrok http https://localhost # expose a local https server +ngrok tcp 22 # tunnel arbitrary TCP traffic to port 22 +ngrok tls --url=foo.com 443 # TLS traffic for foo.com to port 443 +ngrok start foo bar baz # start tunnels from the configuration file +``` -### Usage +### SubCommands -```sh -ngrok api [flags] -``` - -### Commands - -| Command | Description | -| -------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| [abuse-reports](/api/resources/abuse-reports/) | Creates a new abuse report which will be reviewed by our system and abuse response team. | -| [agent-ingresses](/api/resources/agent-ingresses/) | Manage Agent Ingresses. The ngrok agent can be configured to connect to ngrok via the new set of addresses on the returned Agent Ingress. | -| [api-keys](/api/resources/api-keys/) | Manage API keys. These keys can be used to authenticate to the ngrok API. | -| [backends](/api/resources/failover-backends/) | Manage the backends that are servicing Cloud Edges. | -| [certificate-authorities](/api/resources/certificate-authorities/) | Manage Certificate Authorities. | -| [credentials](/api/resources/credentials/) | Manage authtoken credentials. The authtoken credential can be used to authorize a new ngrok agent session. | -| [edge-modules](/api/resources/edge-route-backend-module/) | Manage ngrok Cloud Edge Modules. | -| [edges](/api/resources/edges-https/) | Manage ngrok Cloud Edges. | -| [endpoints](/api/resources/endpoints/) | List all active endpoints on the account. | -| [event-destinations](/api/resources/event-destinations/) | Manage Event Destinations. | -| [event-sources](/api/resources/event-sources/) | Manage types for which an event subscription will trigger. | -| [event-subscriptions](/api/resources/event-subscriptions/) | Manage Event Subscriptions. | -| [ip-policies](/api/resources/ip-policies/) | Manage IP policies. | -| [ip-policy-rules](/api/resources/ip-policy-rules/) | Manage IP policy rules attached to IP Policies. | -| [ip-restrictions](/api/resources/ip-restrictions/) | Manage IP restrictions. | -| [reserved-addrs](/api/resources/reserved-addrs/) | Manage reserved TCP addresses. | -| [reserved-domains](/api/resources/reserved-domains/) | Manage reserved domains. | -| [ssh-certificate-authorities](/api/resources/ssh-certificate-authorities/) | Manage SSH Certificate Authorities. | -| [ssh-credentials](/api/resources/ssh-credentials/) | Manage SSH Credentials that can be used to start new tunnels via ngrok's SSH gateway. | -| [ssh-host-certificates](/api/resources/ssh-host-certificates/) | Manage SSH Host Certificates. | -| [ssh-user-certificates](/api/resources/ssh-user-certificates/) | Manage SSH User Certificates. | -| [tls-certificates](/api/resources/tls-certificates/) | Manage TLS certificates | -| [tunnel-sessions](/api/resources/tunnel-sessions/) | List all online tunnel sessions running on this account. | -| [tunnels](/api/resources/tunnels/) | List all online tunnels currently running on the account. | +| Command | Description | +| ------------------------------- | -------------------------------------------------------------- | +| [api](#ngrok-api) | use ngrok agent as an api client | +| [completion](#ngrok-completion) | generates shell completion code for bash or zsh | +| [config](#ngrok-config) | update or migrate ngrok's configuration file | +| [credits](#ngrok-credits) | prints author and licensing information | +| [diagnose](#ngrok-diagnose) | diagnose connection issues | +| [http](#ngrok-http) | start an HTTP tunnel | +| [service](#ngrok-service) | run and control an ngrok service on a target operating system | +| [start](#ngrok-start) | start endpoints or tunnels by name from the configuration file | +| [tcp](#ngrok-tcp) | start a TCP tunnel | +| [tls](#ngrok-tls) | start a TLS tunnel | +| [tunnel](#ngrok-tunnel) | start a tunnel for use with a tunnel-group backend | +| [update](#ngrok-update) | update ngrok to the latest version | +| [version](#ngrok-version) | print the version string | ### Flags -| Flag | Description | -| --------------------- | ------------------------------------------------------------------------ | -| `--api-key string` | API key to use | -| `--config strings` | path to config files; they are merged if multiple | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, 'stdout', 'stderr' or 'false' (default "false") | -| `--log-format string` | log record format: 'term', 'logfmt', 'json' (default "term") | -| `--log-level string` | logging level: 'debug', 'info', 'warn', 'error', 'crit' (default "info") | +| Flag | Description | +| ------------ | --------------------------------------------------- | +| `--metadata` | opaque user-defined metadata for the tunnel session | ## ngrok completion @@ -104,15 +67,15 @@ The `ngrok completion` command generates shell tab completion code for Bash or Z You can add it to your current session with the command -```sh +``` . <(ngrok completion) ``` To enable them each time you start a new session, add the following to your `.bashrc` or `.zshrc` files: -```bash +``` if command -v ngrok &>/dev/null; then - eval "$(ngrok completion)" +eval "$(ngrok completion)" fi ``` @@ -124,46 +87,51 @@ Once you add this to your profile, you'll need to `source ~/.bashrc` or `source ngrok completion [flags] ``` -### Flags +### Example -| Flag | Description | -| -------------- | --------------------- | -| `-h`, `--help` | help for this command | +```sh -## ngrok config +``` -The `ngrok config` command updates or verifies ngrok's configuration file. +### Flags -Use `add-authtoken`, `add-api-key`, or `add-connect-url` to set the corresponding properties. +| Flag | Description | +| ---------- | ------------------------------------------------- | +| `--config` | path to config files; they are merged if multiple | -Use `check` to test a configuration file for validity. If you have an old configuration file, you can also use `upgrade` to automatically upgrade to the latest version. +## ngrok config -### Usage +The config command gives a quick way to create or update ngrok's configuration +file. Use 'add-authtoken' or 'add-api-key' to set the corresponding properties. -```sh -ngrok config [flags] -``` +Use 'check' to test a configuration file for validity. If you have an old +configuration file, you can also use 'upgrade' to automatically migrate to the +latest version. -### Commands +### SubCommands -| Command | Description | -| ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| [add-api-key](#ngrok-config-add-api-key) | save an API key to configuration file. The API key can be generated in the [API section of the ngrok dashboard](https://dashboard.ngrok.com/api). | -| [add-authtoken](#ngrok-config-add-authtoken) | save authtoken to configuration file | -| [add-connect-url](#ngrok-config-add-connect-url) | adds the server address (server_addr) to configuration file for custom agent ingress | -| [check](#ngrok-config-check) | check configuration file | -| [edit](#ngrok-config-edit) | opens the config file in your system's default editor. It looks specifically for the `SHELL` and `EDITOR` environment variables. | -| [upgrade](#ngrok-config-upgrade) | auto-upgrade configuration file | +| Command | Description | +| ------------------------------------------------ | --------------------------------------------------------------------------------- | +| [add-api-key](#ngrok-config-add-api-key) | save api key to configuration file | +| [add-authtoken](#ngrok-config-add-authtoken) | save authtoken to configuration file | +| [add-connect-url](#ngrok-config-add-connect-url) | adds the connect URL (connect_url) to configuration file for custom agent ingress | +| [add-server-addr](#ngrok-config-add-server-addr) | alias of add-connect-url | +| [check](#ngrok-config-check) | check configuration file | +| [edit](#ngrok-config-edit) | edit configuration file | +| [upgrade](#ngrok-config-upgrade) | auto-upgrade configuration file | ### Flags -| Flag | Description | -| -------------- | --------------------- | -| `-h`, `--help` | help for this command | +| Flag | Description | +| ---------- | ------------------------------------------------- | +| `--config` | path to config files; they are merged if multiple | ## ngrok config add-api-key -The `ngrok config add-api-key` command saves the ngrok API key to the configuration file. The API key can be generated in the [API section of the ngrok dashboard](https://dashboard.ngrok.com/api). +The add-api-key command modifies your configuration file to include +the specified api key. + +The API key can be generated in the [API section of the ngrok dashboard](https://dashboard.ngrok.com/api). ### Usage @@ -171,7 +139,7 @@ The `ngrok config add-api-key` command saves the ngrok API key to the configurat ngrok config add-api-key TOKEN [flags] ``` -### Examples +### Example ```sh ngrok config add-api-key 1roPsn7AascHeO18mHcxRD3xT76_3ww7C9CDLYNgcdSYsscCB @@ -179,19 +147,28 @@ ngrok config add-api-key 1roPsn7AascHeO18mHcxRD3xT76_3ww7C9CDLYNgcdSYsscCB ### Flags -| Flag | Description | -| --------------------- | ----------------------------------------------------------------- | -| `--config string` | save in this config file | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | +| Flag | Description | +| ---------- | ------------------------ | +| `--config` | save in this config file | ## ngrok config add-authtoken -The `ngrok config add-authtoken` command saves the ngrok authtoken to the configuration file. You can find your authtoken in the [getting started section of the ngrok dashboard](https://dashboard.ngrok.com/get-started/your-authtoken). +The add-authtoken command modifies your configuration file to include +the specified authtoken. + +ngrok requires that you sign up for an account to use many advanced +service features. In order to associate your client with an account, +it must pass a secret token to ngrok when it starts up. Instead of +passing this authtoken on every invocation, you may use this command +to save it into your configuration file so that your client always +authenticates you properly. -The ngrok service requires that you [sign up for an account](https://dashboard.ngrok.com/) to connect with an agent. Some advanced service features require a paid account. In order to associate your agent with an account, it must pass a secret token to the ngrok service when it starts up. Instead of passing this authtoken on every invocation, you may use this command to save it into your configuration file so that your agent always authenticates you properly. +Additionally, this command saves the default config version, providing +a working config file out of the box. + +You can find your authtoken in the [getting started section of the ngrok dashboard](https://dashboard.ngrok.com/get-started/your-authtoken). +The ngrok service requires that you [sign up for an account](https://dashboard.ngrok.com/) to connect with an agent. Some advanced service +features require a paid account. In order to associate your agent with an account, it must pass a secret token to the ngrok service when it starts up. Instead of passing this authtoken on every invocation, you may use this command to save it into your configuration file so that your agent always authenticates you properly. ### Usage @@ -199,7 +176,7 @@ The ngrok service requires that you [sign up for an account](https://dashboard.n ngrok config add-authtoken TOKEN [flags] ``` -### Examples +### Example ```sh ngrok config add-authtoken 1rlHSX3HqrqmOWZdeJ6bIv8rfuo_4cmS1QswRGyxcQD8NOukF @@ -207,39 +184,62 @@ ngrok config add-authtoken 1rlHSX3HqrqmOWZdeJ6bIv8rfuo_4cmS1QswRGyxcQD8NOukF ### Flags -| Flag | Description | -| --------------------- | ----------------------------------------------------------------- | -| `--config string` | save in this config file | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | +| Flag | Description | +| ---------- | ------------------------ | +| `--config` | save in this config file | ## ngrok config add-connect-url -The `ngrok config add-connect-url` command updates the connect url ([`connect_url`](/docs/agent/config/v3/#connect_url)) in the configuration file. This is useful when your account is using [Custom Agent Ingress](/docs/agent/ingress/#customize-agent-ingress-address) and need to configure the `connect_url` to point to your new ingress domain. +The add-connect-url command modifies your configuration file to include +the specified connect URL (connect_url) used for custom agent ingress. + +### Usage + +```sh +ngrok config add-connect-url agent.example.com:443 [flags] +``` + +### Example + +```sh +ngrok config add-connect-url agent.example.com:443 +``` + +### Flags + +| Flag | Description | +| ---------- | ------------------------ | +| `--config` | save in this config file | + +## ngrok config add-server-addr + +The ngrok config add-server-addr command updates the server address (server_addr) in the configuration file. This is useful when your account is using Custom Agent Ingress and you need to configure the server_addr to point to your new ingress domain. + +_See Also_: +[`server_addr`](/docs/agent/config/#server_addr) +[Custom Agent Ingress](/docs/agent/ingress/#customize-agent-ingress-address) ### Usage - ngrok config add-connect-url agent.example.com:443 [flags] +```sh +ngrok config add-server-addr agent.example.com:443 [flags] +``` -### Examples +### Example - ngrok config add-connect-url agent.example.com:443 +```sh +ngrok config add-server-addr agent.example.com:443 +``` ### Flags -| Flag | Description | -| --------------------- | ----------------------------------------------------------------- | -| `--config string` | save in this config file | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | +| Flag | Description | +| ---------- | ------------------------ | +| `--config` | save in this config file | ## ngrok config check -The `ngrok config check` command checks a configuration file for validity/correctness. +Checks a configuration file for validity/correctness. ### Usage @@ -249,17 +249,14 @@ ngrok config check [flags] ### Flags -| Flag | Description | -| --------------------- | ----------------------------------------------------------------- | -| `--config string` | check this config file | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | +| Flag | Description | +| ---------- | ---------------------- | +| `--config` | check this config file | ## ngrok config edit -The `ngrok config edit` command opens the configuration file in an editor defined by the `EDITOR` environment variable, defaulting to nano or Notepad depending on OS. +Opens the configuration file in an editor defined by the EDITOR environment +variable, defaulting to nano or Notepad depending on OS. ### Usage @@ -269,23 +266,28 @@ ngrok config edit [flags] ### Flags -| Flag | Description | -| --------------------- | ----------------------------------------------------------------- | -| `--config string` | open this config file to edit | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | +| Flag | Description | +| ---------- | ---------------------- | +| `--config` | check this config file | ## ngrok config upgrade -The `ngrok config upgrade` command upgrades a configuration file to a specific version. +Upgrade a configuration file to a version. + +A backup file will be created with your original configuration file in +the same directory. -You can optionally pass a version to upgrade to. If the configuration file version is missing, the upgrade command will add it. It also applies all automatic transformations between versions. +You can optionally pass a version to upgrade to. If the configuration file +version is missing, the upgrade command will add it. It also applies all +automatic transformations when upgrading versions. Attempting to downgrade +will result in an error. -By default this command applies the transformations and display the final file. Use `--dry-run` to preview changes before applying. +By default this command will apply the transformations and display the +final file. Use --dry-run to preview changes before applying. -By default this command will not move any configuration files to their new default location. Use `--relocate` to move the config file to the default location. +By default this command will not move any configuration files to their +new default location. Use --relocate to move the config file to the +default location. ### Usage @@ -295,19 +297,15 @@ ngrok config upgrade [version] [flags] ### Flags -| Flag | Description | -| --------------------- | ----------------------------------------------------------------- | -| `--config string` | save in this config file | -| `--dry-run` | preview the proposed changes | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | -| `--relocate` | relocates the config file to the default location | +| Flag | Description | +| ------------ | ------------------------------------------------- | +| `--config` | upgrade this config file | +| `--dry-run` | preview the proposed changes | +| `--relocate` | relocates the config file to the default location | ## ngrok credits -The `ngrok credits` command displays the software credits and license information. +Displays program credits and license information. ### Usage @@ -317,13 +315,13 @@ ngrok credits [flags] ### Flags -| Flag | Description | -| -------------- | --------------------- | -| `-h`, `--help` | help for this command | +| Flag | Description | +| ---------- | ------------------------------------------------- | +| `--config` | path to config files; they are merged if multiple | ## ngrok diagnose -The `ngrok diagnose` command runs a series of tests to diagnose potential connectivity issues between the ngrok agent and the remote ngrok service. Read more about `ngrok diagnose` [here](/agent/diagnose). +Runs a series of tests to diagnose potential connectivity issues between the ngrok agent and the remote ngrok service. ### Usage @@ -333,32 +331,23 @@ ngrok diagnose [flags] ### Flags -| Flag | Description | -| ----------------------------- | ------------------------------------------------- | -| `--config strings` | path to config files; they are merged if multiple | -| `-h`, `--help` | help for this command | -| `-6`, `--ipv6` | Enable testing of IPV6 addresses | -| `-w`, `--write-report string` | Write a JSON report | - -## ngrok help - -The `ngrok help` command provides help for any command in the application. Simply type `ngrok help [path to command]` for full details. - -### Usage - -```sh -ngrok help [command] [flags] -``` - -### Flags - -| Flag | Description | -| -------------- | --------------------- | -| `-h`, `--help` | help for this command | +| Flag | Description | +| ----------------------- | ------------------------------------------------------------------------------- | +| `--6`, `--ipv6` | Enable testing of IPV6 addresses | +| `--r`, `--region` | ngrok server region [auto, us, eu, au, ap, sa, jp, in, us-cal-1, eu-lon-1, all] | +| `--w`, `--write-report` | Write a JSON report | +| `--config` | path to config files; they are merged if multiple | ## ngrok http -The `ngrok http` command is used to start a tunnel listening for HTTP/HTTPS traffic with a specific hostname. The HTTP Host header on incoming public requests is inspected to determine which tunnel it matches. +Starts a tunnel listening for HTTP/HTTPS traffic with a specific hostname. +The HTTP Host header on incoming public requests is inspected to +determine which tunnel it matches. + +HTTPS endpoints terminate TLS traffic at the ngrok server using the +appropriate certificates. The decrypted, HTTP traffic is then forwarded +through the secure tunnel and then to your local server. If you don't want +your TLS traffic to terminate at the ngrok server, use a TLS or TCP tunnel. ### Usage @@ -366,69 +355,85 @@ The `ngrok http` command is used to start a tunnel listening for HTTP/HTTPS traf ngrok http [address:port | port] [flags] ``` -### Examples +### Example ```sh -ngrok http 8080 # forwards provided ngrok URL to port 80 +ngrok http 8080 # forward ngrok subdomain to port 80 ngrok http example.com:9000 # forward traffic to example.com:9000 -ngrok http --url=bar.ngrok.dev 80 # request subdomain name: 'bar.ngrok.dev' -ngrok http --url=www.ex.com 1234 # request tunnel 'www.ex.com' (DNS CNAME) +ngrok http --url=bar.ngrok.dev 80 # request url name: 'bar.ngrok.dev' +ngrok http --url=example.com 1234 # request endpoint 'example.com' (DNS CNAME) ngrok http --basic-auth='falken:joshua' 80 # enforce basic auth on tunnel endpoint -ngrok http --host-header=ex.com 80 # rewrite the Host header to 'ex.com' +ngrok http --host-header=example.com 80 # rewrite the Host header to 'example.com' ngrok http file:///var/log # serve local files in /var/log ngrok http https://localhost:8443 # forward to a local https server ``` ### Flags -| Flag | Description | -| ------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `--authtoken string` | ngrok authtoken | -| `--app-protocol string` (Deprecated) | use '--upstream-protocol' instead | -| `--basic-auth strings` | enforce basic auth on tunnel endpoint, `user:password` | -| `--cidr-allow strings` | reject connections that do not match the given CIDRs | -| `--cidr-deny strings` | reject connections that match the given CIDRs | -| `--circuit-breaker float` | reject requests when 5XX responses exceed this ratio | -| `--compression` | gzip compress http responses from your web service | -| `--config strings` | path to config files; they are merged if multiple | -| `--url string` | host tunnel on a custom domain | -| `-h`, `--help` | help for this command | -| `--host-header string` | set Host header; if `rewrite` use local address hostname | -| `--inspect` | enable/disable http introspection (default true) | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | logging level: `debug`, `info`, `warn`, `error`, `crit` (default `info`) | -| `--mutual-tls-cas string` | path to TLS certificate authority to verify client certs in mutual TLS. | -| `--oauth string` | enforce authentication OAuth2 provider on tunnel endpoint, e.g. `google` | -| `--oauth-allow-domain strings` | allow only OAuth2 users with these email domains | -| `--oauth-allow-email strings` | allow only OAuth2 users with these emails | -| `--oauth-client-id string` | oauth app client id, optional | -| `--oauth-client-secret string` | oauth app client id, optional | -| `--oauth-scope strings` | request these OAuth2 scopes when users authenticate | -| `--policy-file string` (Deprecated) | use `--traffic-policy-file` instead | -| `--upstream-proxy-protocol string` | version of PROXY protocol to use with this tunnel, empty if not using. Example values are 1 or 2. | -| `--region string` (Deprecated) | ngrok server region `us`, `us-cal-1`, `eu`, `au`, `ap`, `sa`, `jp`, `in` (defaults to closest) | -| `--request-header-add strings` | header key:value to add to request | -| `--request-header-remove strings` | header field to remove from request if present | -| `--response-header-add strings` | header key:value to add to response | -| `--response-header-remove strings` | header field to remove from response if present | -| `--traffic-policy-file string` | path to traffic policy configuration YAML or JSON file (See [Traffic Policy](/http/traffic-policy/?cty=agent-cli)) | -| `--ua-filter-allow strings` | a list of regular expressions for user-agents to allow | -| `--ua-filter-deny strings` | a list of regular expressions for user-agents to deny | -| `--upstream-protocol string` | specify the upstream protocol to be used: `http1`, `http2` (default `http1`) | -| `--verify-webhook string` | validate webhooks are signed by this provider, e.g. `slack` | -| `--verify-webhook-secret string` | secret used by provider to sign webhooks, if any | -| `--websocket-tcp-converter` | convert ingress websocket connections to TCP upstream | +| Flag | Description | +| ----------------------------- | ----------------------------------------------------------------------------------- | +| `--app-protocol` (deprecated) | use --upstream-protocol instead | +| `--authtoken` | ngrok.com authtoken identifying a user | +| `--basic-auth` | enforce basic auth on tunnel endpoint, 'user:password' | +| `--binding` | ingress binding for an agent endpoint | +| `--cidr-allow` | reject connections that do not match the given CIDRs | +| `--cidr-deny` | reject connections that match the given CIDRs | +| `--circuit-breaker` | reject requests when 5XX responses exceed this ratio | +| `--compression` | gzip compress http responses from your web service | +| `--description` | user editable description about this endpoint | +| `--domain` | host tunnel on a custom subdomain or hostname (requires DNS CNAME) | +| `--host-header` | set Host header; if 'rewrite' use local address hostname | +| `--hostname` (deprecated) | host tunnel on custom hostname (requires DNS CNAME) | +| `--inspect` | enable/disable http introspection (default true) | +| `--metadata` | metadata about this endpoint | +| `--mutual-tls-cas` | path to TLS certificate authority to verify client certs in mutual tls | +| `--name` | user supplied name for this endpoint | +| `--oauth` | enforce authentication oauth provider on tunnel endpoint, e.g. 'google' | +| `--oauth-allow-domain` | allow only oauth users with these email domains | +| `--oauth-allow-email` | allow only oauth users with these emails | +| `--oauth-client-id` | oauth app client id, optional | +| `--oauth-client-secret` | oauth app client secret, optional | +| `--oauth-scope` | request these oauth scopes when users authenticate | +| `--oidc` | oidc issuer url, e.g. https://accounts.google.com | +| `--oidc-client-id` | oidc app client id | +| `--oidc-client-secret` | oidc app client secret | +| `--oidc-scope` | request these oidc scopes when users authenticate | +| `--policy-file` (deprecated) | use --traffic-policy-file instead | +| `--proxy-proto` (deprecated) | use --upstream-proxy-protocol instead | +| `--region` (deprecated) | ngrok automatically chooses the region with lowest latency | +| `--request-header-add` | header key:value to add to request | +| `--request-header-remove` | header field to remove from request if present | +| `--response-header-add` | header key:value to add to response | +| `--response-header-remove` | header field to remove from response if present | +| `--scheme` (deprecated) | use --url instead | +| `--subdomain` (deprecated) | host tunnel on a custom subdomain | +| `--traffic-policy-file` | path to traffic policy configuration YAML or JSON file, e.g. './path/to/policy.yml' | +| `--ua-filter-allow` | a list of regular expressions for user-agents to allow | +| `--ua-filter-deny` | a list of regular expressions for user-agents to deny | +| `--upstream-protocol` | Specify the upstream protocol to be used: 'http1', 'http2' (default 'http1') | +| `--upstream-proxy-protocol` | version of proxy proto to use with this tunnel, empty if not unused | +| `--upstream-tls-verify` | enables TLS verification of server TLS certificates | +| `--upstream-tls-verify-cas` | path to CA cert to use to verify server certs | +| `--url` | host endpoint on a URL | +| `--verify-webhook` | validate webhooks are signed by this provider, e.g. 'slack' | +| `--verify-webhook-secret` | secret used by provider to sign webhooks, if any | +| `--websocket-tcp-converter` | convert ingress websocket connections to TCP upstream | +| `--config` | path to config files; they are merged if multiple | ## ngrok service -The `ngrok service` command allows you to run and control an ngrok service on the operating system. For more information about running ngrok as a service, check out the [ngrok service section in the secure tunnels documentation](/agent/#background-service). +The service command manages installation and execution of ngrok as an +operating system service on Windows, OS X and Linux systems. +The service command takes a single argument which must be 'start', 'stop', +'restart', 'install', or 'uninstall'. -This command manages installation and execution of ngrok as an operating system service on Windows, MacOS and Linux systems. The service command takes a single argument which must be `start`, `stop`, `restart`, `install`, or `uninstall`. +When you choose 'install', you must specify the config flag which will +define where the installed ngrok service looks for its configuration file. -When you choose `install`, you must specify the config flag which will define where the installed ngrok service looks for its configuration file. +When the ngrok service runs, it has the same behavior as if it were invoked +from the command line with the command: "ngrok start --all". -When the ngrok service runs, it has the same behavior as if it were invoked from the command line with the command: `ngrok start --all`. +For more information about running ngrok as a service, check out the [ngrok service section in the secure tunnels documentation](/agent/#background-service) ### Usage @@ -436,7 +441,7 @@ When the ngrok service runs, it has the same behavior as if it were invoked from ngrok service [flags] ``` -### Examples +### Example ```sh ngrok service install --config=C:\ngrok.yml @@ -446,14 +451,15 @@ ngrok service stop ### Flags -| Flag | Description | -| ------------------ | ------------------------------------------------- | -| `--config strings` | path to config files; they are merged if multiple | -| `-h`, `--help` | help for this command | +| Flag | Description | +| ---------- | ------------------------------------------------- | +| `--config` | path to config files; they are merged if multiple | ## ngrok start -The `ngrok start` command starts tunnels by name from the configuration file. You may specify any number of tunnel names. You may start all tunnels in the configuration file with the `--all` switch. +Starts tunnels by name from the configuration file. You may specify any +number of tunnel names. You may start all tunnels in the configuration +file with the --all switch. ### Usage @@ -461,7 +467,7 @@ The `ngrok start` command starts tunnels by name from the configuration file. Yo ngrok start [flags] ``` -### Examples +### Example ```sh ngrok start dev # start tunnel named 'dev' in the configuration file @@ -471,23 +477,24 @@ ngrok start --all # start all tunnels defined in the config file ### Flags -| Flag | Description | -| --------------------- | ---------------------------------------------------------------------------------------------- | -| `--all` | start all tunnels in the configuration file | -| `--authtoken string` | ngrok authtoken identifying a user | -| `--config strings` | path to config files; they are merged if multiple | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | -| `--none` | start running no tunnels | -| `--region string` | ngrok server region `us`, `us-cal-1`, `eu`, `au`, `ap`, `sa`, `jp`, `in` (defaults to closest) | +| Flag | Description | +| ----------------------- | ---------------------------------------------------------- | +| `--all` | start all endpoints or tunnels in the configuration file | +| `--authtoken` | ngrok.com authtoken identifying a user | +| `--none` | start running no endpoints or tunnels | +| `--region` (deprecated) | ngrok automatically chooses the region with lowest latency | +| `--config` | path to config files; they are merged if multiple | ## ngrok tcp -Use `ngrok tcp` to start a TCP tunnel which forwards all traffic on a public port to a local address. This is extremely useful for exposing services that run non-HTTP traffic (SSH, SIP, RDP, RTSP, GRPC, game servers, etc). +Starts a tunnel which forwards all TCP traffic on a public port to a local +address. This is extremely useful for exposing services that run non-HTTP +traffic (ssh, sip, rdp, game servers, etc). -A TCP tunnel binds a public address on the remote ngrok server. Any services which require a stable public address should use the `--url` option. ngrok requires that you reserve a TCP tunnel address for your account before you can use it. +A TCP tunnel binds a public address on the remote ngrok server. Any +services which require a stable public address should use the +--url option. ngrok requires that you reserve a TCP tunnel +address for your account before you can use it. ::::warning TCP endpoints are only available on a free plan after [adding a valid payment method](https://dashboard.ngrok.com/settings#id-verification) to your account. @@ -499,44 +506,51 @@ TCP endpoints are only available on a free plan after [adding a valid payment me ngrok tcp [address:port | port] [flags] ``` -### Examples +### Example ```sh # forward a port to your local ssh server ngrok tcp 22 -``` -```sh # expose an RDP server on a specific public address that you reserved -ngrok tcp --url=tcp://1.tcp.ngrok.io:27210 3389 +ngrok tcp --url=1.tcp.ngrok.io:27210 3389 ``` ### Flags -| Flag | Description | -| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -| `--authtoken string` | ngrok authtoken | -| `--cidr-allow strings` | reject connections that do not match the given CIDRs | -| `--cidr-deny strings` | reject connections that match the given CIDRs | -| `--config strings` | path to config files; they are merged if multiple | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | -| `--traffic-policy-file string` | path to traffic policy configuration YAML or JSON file (See [Traffic Policy](/tcp/traffic-policy/?cty=agent-cli)) | -| `--upstream-proxy-protocol string` | version of proxy proto to use with this tunnel, empty if not using | -| `--policy-file string` (Deprecated) | use `--traffic-policy-file` instead | -| `--region string` | ngrok server region `us`, `us-cal-1`, `eu`, `au`, `ap`, `sa`, `jp`, `in` (default to closest) | -| `--remote-addr string` (Deprecated) | bind remote address (requires you reserve a TCP Address) | -| `--url string` | bind remote address (requires you reserve a TCP Address) | +| Flag | Description | +| ---------------------------- | ----------------------------------------------------------------------------------- | +| `--authtoken` | ngrok.com authtoken identifying a user | +| `--binding` | ingress binding for an agent endpoint | +| `--cidr-allow` | reject connections that do not match the given CIDRs | +| `--cidr-deny` | reject connections that match the given CIDRs | +| `--description` | user editable description about this endpoint | +| `--metadata` | metadata about this endpoint | +| `--name` | user supplied name for this endpoint | +| `--policy-file` (deprecated) | use --traffic-policy-file instead | +| `--proxy-proto` (deprecated) | use --upstream-proxy-protocol instead | +| `--region` (deprecated) | ngrok automatically chooses the region with lowest latency | +| `--remote-addr` | bind remote address (requires you reserve an address) | +| `--traffic-policy-file` | path to traffic policy configuration YAML or JSON file, e.g. './path/to/policy.yml' | +| `--upstream-proxy-protocol` | version of proxy proto to use with this tunnel, empty if not unused | +| `--url` | host endpoint on a URL | +| `--config` | path to config files; they are merged if multiple | ## ngrok tls -The `ngrok tls` command starts a TLS tunnel listening for traffic on port 443 with a specific hostname. The TLS Server Name Indication (SNI) extension field in the TLS connection is inspected to determine which tunnel it matches. +Starts a tunnel listening for TLS traffic on port 443 +with a specific hostname. The TLS SNI (Server Name Indication) +extension field in the TLS connection is inspected to determine +which tunnel it matches. -The ngrok server does not terminate TLS connections forwarded with this command. Any underlying protocol may be used. You may optionally specify a TLS key/cert pair which will be used to terminate the traffic at the ngrok agent before it is forwarded. If not specified, the traffic will be forwarded still encrypted. +The ngrok server does not terminate TLS connections forwarded with this +command. Any underlying protocol may be used. You may optionally specify a +TLS key/cert pair which will be used to terminate the traffic client-side +before it is forwarded. If not specified, the traffic will be forwarded +still encrypted. -Using this command is only recommended with the `--url` option. Other uses will work, but will always result in certificate mismatch warnings. +Using this command is only recommended with the --url option. Other uses +will work, but will always result in certificate mismatch warnings. ### Usage @@ -544,119 +558,128 @@ Using this command is only recommended with the `--url` option. Other uses will ngrok tls [address:port | port] [flags] ``` -### Examples +### Example ```sh -# forward TLS traffic for www.example.com to port 443 (requires CNAME) -ngrok tls --url=www.example.com 443 -``` +# forward TLS traffic for example.com to port 443 (requires CNAME) +ngrok tls --url=example.com 443 -```sh # forward TLS traffic on subdomain (mismatch certificate warning) ngrok tls 1234 -``` -```sh # terminate TLS traffic for t.co before forwarding ngrok tls --url=t.co --crt=/path/to/t.co.crt --key=/path/to/t.co.key 443 ``` ### Flags -| Flag | Description | -| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -| `--authtoken string` | ngrok authtoken | -| `--cidr-allow strings` | reject connections that do not match the given CIDRs | -| `--cidr-deny strings` | reject connections that match the given CIDRs | -| `--config strings` | path to config files; they are merged if multiple | -| `--crt string` | path to a TLS certificate for TLS termination | -| `--url string` | host tunnel on a custom domain | -| `-h`, `--help` | help for this command | -| `--key string` | path to a TLS key for TLS termination | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | -| `--mutual-tls-cas string` | path to TLS certificate authority to verify client certs in mutual TLS | -| `--traffic-policy-file string` | path to traffic policy configuration YAML or JSON file (See [Traffic Policy](/tls/traffic-policy/?cty=agent-cli)) | -| `--upstream-proxy-protocol string` | version of proxy proto to use with this tunnel, empty if not using | -| `--policy-file string` (Deprecated) | use `--traffic-policy-file` instead | -| `--region string` | ngrok server region `us`, `us-cal-1`, `eu`, `au`, `ap`, `sa`, `jp`, `in` (defaults to closest) | -| `--terminate-at string` | terminate at ngrok "edge", "agent" or "upstream. Defaults to no termination or "edge" if `--crt` or `--key` are present | +| Flag | Description | +| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | +| `--authtoken` | ngrok.com authtoken identifying a user | +| `--binding` | ingress bindings for an agent endpoint | +| `--cidr-allow` | reject connections that do not match the given CIDRs | +| `--cidr-deny` | reject connections that match the given CIDRs | +| `--crt` | path to a TLS certificate for TLS termination | +| `--description` | user editable description about this endpoint | +| `--domain` | host tunnel on a custom subdomain or hostname (requires DNS CNAME) | +| `--hostname` (deprecated) | host tunnel on custom hostname (requires DNS CNAME) | +| `--key` | path to a TLS key for TLS termination | +| `--metadata` | metadata about this endpoint | +| `--mutual-tls-cas` | path to TLS certificate authority to verify client certs in mutual tls | +| `--name` | user supplied name for this endpoint | +| `--policy-file` (deprecated) | use --traffic-policy-file instead | +| `--proxy-proto` (deprecated) | use --upstream-proxy-protocol instead | +| `--region` (deprecated) | ngrok automatically chooses the region with lowest latency | +| `--subdomain` (deprecated) | host tunnel on a custom subdomain | +| `--terminate-at` | terminate at ngrok "edge", "agent", or "upstream". defaults to "upstream" unless --crt or --key are present, in which case "edge" is the default. | +| `--traffic-policy-file` | path to traffic policy configuration YAML or JSON file, e.g. './path/to/policy.yml' | +| `--upstream-proxy-protocol` | version of proxy proto to use with this tunnel, empty if not unused | +| `--upstream-tls-verify` | enables TLS verification of server TLS certificates | +| `--upstream-tls-verify-cas` | path to CA cert to use to verify server certs | +| `--url` | host endpoint on a URL | +| `--config` | path to config files; they are merged if multiple | ## ngrok tunnel -The `ngrok tunnel` command is used to start labeled tunnels for use with [Tunnel Group backends](/network-edge/edges/#tunnel-group) as part of [Edges](/network-edge/edges/). +Starts a tunnel with labels so that it can be part of a tunnel-group. +The tunnel-group consists of all the tunnels matching all the labels +of a tunnel-group backend. Endpoint configurations containing a +tunnel-group backend will cause traffic to their associated reserved +domain or address to be forwarded to the tunnel-group. -Starts a tunnel with labels so that it can be part of a tunnel group. The tunnel group consists of all the tunnels matching all the labels of a tunnel group backend. +See the [Tunnel Group backends](/network-edge/edges/#tunnel-group) and [Edges](/network-edge/edges/) pages for more information. -### Examples +### Usage ```sh -# tunnel-group traffic for app=foo may be forwarded to port 80 -ngrok tunnel --label app=foo 80 +ngrok tunnel [--label key=value] ... [address:port | port] [flags] ``` +### Example + ```sh +# tunnel-group traffic for app=foo may be forwarded to port 80 +ngrok tunnel --label app=foo 80 + # match tunnel-group with multiple labels ngrok tunnel --label app=foo --label dc=bar 80 ``` -### Usage - -```sh -ngrok tunnel [--label key:value] ... [address:port | port] [flags] -``` - ### Flags -| Flag | Description | -| ---------------------------------- | ---------------------------------------------------------------------------------------------- | -| `--authtoken string` | ngrok authtoken identifying a user | -| `--config strings` | path to config files; they are merged if multiple | -| `--crt string` | path to a TLS certificate for TLS termination | -| `-h`, `--help` | help for this command | -| `--inspect` | enable/disable http introspection (default true) | -| `--key string` | path to a TLS key for TLS termination | -| `--label strings` | labels to associate with the tunnel in key=value format | -| `--log string` | path to log file, `stdout`, `stderr` or `false` (default `false`) | -| `--log-format string` | log record format: `term`, `logfmt`, `json` (default `term`) | -| `--log-level string` | `debug`, `info`, `warn`, `error`, `crit` (default `info`) | -| `--upstream-proxy-protocol string` | version of proxy proto to use with this tunnel, empty if not using | -| `--region string` | ngrok server region `us`, `us-cal-1`, `eu`, `au`, `ap`, `sa`, `jp`, `in` (defaults to closest) | +| Flag | Description | +| ----------------------------- | ---------------------------------------------------------------------------- | +| `--app-protocol` (deprecated) | use --upstream-protocol instead | +| `--authtoken` | ngrok.com authtoken identifying a user | +| `--crt` | path to a TLS certificate for TLS termination | +| `--description` | user editable description about this endpoint | +| `--inspect` | enable/disable http introspection (default true) | +| `--key` | path to a TLS key for TLS termination | +| `--label` | labels to associate with the tunnel in key=value format | +| `--metadata` | metadata about this endpoint | +| `--mutual-tls-cas` | path to TLS certificate authority to verify client certs in mutual tls | +| `--name` | user supplied name for this endpoint | +| `--proxy-proto` (deprecated) | use --upstream-proxy-protocol instead | +| `--region` (deprecated) | ngrok automatically chooses the region with lowest latency | +| `--upstream-protocol` | Specify the upstream protocol to be used: 'http1', 'http2' (default 'http1') | +| `--upstream-proxy-protocol` | version of proxy proto to use with this tunnel, empty if not unused | +| `--config` | path to config files; they are merged if multiple | ## ngrok update -The `ngrok update` command updates ngrok to the latest version. - -This command checks the ngrok web service for a newer versions of the ngrok agent. If a newer version is available, it will download it an replace the ngrok binary with the new version after cryptographically verifying the update is safe to apply. +Updates ngrok to the latest version. This command checks the ngrok web +service for a newer versions of the ngrok agent. If a newer version is +available, it will download it an replace the ngrok binary with the new +version after cryptographically verifying the update is safe to apply. -In order to update successfully, the ngrok binary must be in a directory that is writable by your current user. If you placed ngrok in a system path, you may need to run this with root or Administrator privileges. +In order to update successfully, the ngrok binary must be in a directory +that is writable by your current user. If you placed ngrok in a system +path, you may need to run this with root or Administrator privileges. -### Examples +### Usage ```sh -ngrok update - update ngrok to the latest stable version -ngrok update --channel=beta - update ngrok to the latest beta version +ngrok update [flags] ``` -### Usage +### Example ```sh -ngrok update [flags] +ngrok update - update ngrok to the latest stable version +ngrok update --channel=beta - update ngrok to the latest beta version ``` ### Flags -| Flag | Description | -| --------------------- | ------------------------------------------------------------------------ | -| `--channel string` | update channel (stable, unstable, beta) (default "stable") | -| `-h`, `--help` | help for this command | -| `--log string` | path to log file, 'stdout', 'stderr' or 'false' (default "false") | -| `--log-format string` | log record format: 'term', 'logfmt', 'json' (default "term") | -| `--log-level string` | logging level: 'debug', 'info', 'warn', 'error', 'crit' (default "info") | +| Flag | Description | +| ----------- | ------------------------------------------------- | +| `--channel` | update channel (stable, beta, unstable) | +| `--config` | path to config files; they are merged if multiple | ## ngrok version +print the version string + ### Usage ```sh @@ -665,6 +688,6 @@ ngrok version [flags] ### Flags -| Flag | Description | -| -------------- | --------------------- | -| `-h`, `--help` | help for this command | +| Flag | Description | +| ---------- | ------------------------------------------------- | +| `--config` | path to config files; they are merged if multiple | diff --git a/docs/api/examples/_abuse_reports_create_request.md b/docs/api/examples/_abuse_reports_create_request.md new file mode 100644 index 000000000..8223534ea --- /dev/null +++ b/docs/api/examples/_abuse_reports_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"incident_id\":1233122}","urls":["http://legit-facebook-login.ngrok.io/login"]}' \ +https://api.ngrok.com/abuse_reports +``` diff --git a/docs/api/examples/_abuse_reports_create_response.md b/docs/api/examples/_abuse_reports_create_response.md new file mode 100644 index 000000000..b6b660195 --- /dev/null +++ b/docs/api/examples/_abuse_reports_create_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:25Z", + "hostnames": [ + { + "hostname": "legit-facebook-login.ngrok.io", + "status": "PENDING" + } + ], + "id": "abrp_2otazEdVBp7Pjr3TVPikrTLPAIk", + "metadata": "{\"incident_id\":1233122}", + "status": "PENDING", + "uri": "https://api.ngrok.com/abuse_reports/abrp_2otazEdVBp7Pjr3TVPikrTLPAIk", + "urls": ["http://legit-facebook-login.ngrok.io/login"] +} +``` diff --git a/docs/api/examples/_abuse_reports_get_request.md b/docs/api/examples/_abuse_reports_get_request.md new file mode 100644 index 000000000..8bfc1867b --- /dev/null +++ b/docs/api/examples/_abuse_reports_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/abuse_reports/abrp_2otazEdVBp7Pjr3TVPikrTLPAIk +``` diff --git a/docs/api/examples/_abuse_reports_get_response.md b/docs/api/examples/_abuse_reports_get_response.md new file mode 100644 index 000000000..b6b660195 --- /dev/null +++ b/docs/api/examples/_abuse_reports_get_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:25Z", + "hostnames": [ + { + "hostname": "legit-facebook-login.ngrok.io", + "status": "PENDING" + } + ], + "id": "abrp_2otazEdVBp7Pjr3TVPikrTLPAIk", + "metadata": "{\"incident_id\":1233122}", + "status": "PENDING", + "uri": "https://api.ngrok.com/abuse_reports/abrp_2otazEdVBp7Pjr3TVPikrTLPAIk", + "urls": ["http://legit-facebook-login.ngrok.io/login"] +} +``` diff --git a/docs/api/examples/_agent_ingresses_create_request.md b/docs/api/examples/_agent_ingresses_create_request.md new file mode 100644 index 000000000..99122ffea --- /dev/null +++ b/docs/api/examples/_agent_ingresses_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"acme devices","domain":"connect.acme.com"}' \ +https://api.ngrok.com/agent_ingresses +``` diff --git a/docs/api/examples/_agent_ingresses_create_response.md b/docs/api/examples/_agent_ingresses_create_response.md new file mode 100644 index 000000000..ab5c8dfd0 --- /dev/null +++ b/docs/api/examples/_agent_ingresses_create_response.md @@ -0,0 +1,22 @@ + + +#### Example Response + +```json +{ + "certificate_management_policy": null, + "certificate_management_status": null, + "created_at": "2024-11-15T17:26:26Z", + "description": "acme devices", + "domain": "connect.acme.com", + "id": "agin_2otazKa9AmvitfEYcbLEkVxPifQ", + "ns_targets": [ + "1.kube-dns.kube-system.svc.cluster.local.", + "2.kube-dns.kube-system.svc.cluster.local.", + "3.kube-dns.kube-system.svc.cluster.local.", + "4.kube-dns.kube-system.svc.cluster.local." + ], + "region_domains": ["tunnel.us.connect.acme.com"], + "uri": "/agent_ingresses/agin_2otazKa9AmvitfEYcbLEkVxPifQ" +} +``` diff --git a/docs/api/examples/_agent_ingresses_delete_request.md b/docs/api/examples/_agent_ingresses_delete_request.md new file mode 100644 index 000000000..dee4704f4 --- /dev/null +++ b/docs/api/examples/_agent_ingresses_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/agent_ingresses/agin_2otazKa9AmvitfEYcbLEkVxPifQ +``` diff --git a/docs/api/examples/_agent_ingresses_delete_response.md b/docs/api/examples/_agent_ingresses_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_agent_ingresses_get_request.md b/docs/api/examples/_agent_ingresses_get_request.md new file mode 100644 index 000000000..ed48fa163 --- /dev/null +++ b/docs/api/examples/_agent_ingresses_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/agent_ingresses/agin_2otazKa9AmvitfEYcbLEkVxPifQ +``` diff --git a/docs/api/examples/_agent_ingresses_get_response.md b/docs/api/examples/_agent_ingresses_get_response.md new file mode 100644 index 000000000..c82f7bab0 --- /dev/null +++ b/docs/api/examples/_agent_ingresses_get_response.md @@ -0,0 +1,23 @@ + + +#### Example Response + +```json +{ + "certificate_management_policy": null, + "certificate_management_status": null, + "created_at": "2024-11-15T17:26:26Z", + "description": "ACME Co. Device Ingress", + "domain": "connect.acme.com", + "id": "agin_2otazKa9AmvitfEYcbLEkVxPifQ", + "metadata": "{\"device_sku\": \"824JS4RZ1F8X\"}", + "ns_targets": [ + "1.kube-dns.kube-system.svc.cluster.local.", + "2.kube-dns.kube-system.svc.cluster.local.", + "3.kube-dns.kube-system.svc.cluster.local.", + "4.kube-dns.kube-system.svc.cluster.local." + ], + "region_domains": ["tunnel.us.connect.acme.com"], + "uri": "/agent_ingresses/agin_2otazKa9AmvitfEYcbLEkVxPifQ" +} +``` diff --git a/docs/api/examples/_agent_ingresses_list_request.md b/docs/api/examples/_agent_ingresses_list_request.md new file mode 100644 index 000000000..7c39bcd63 --- /dev/null +++ b/docs/api/examples/_agent_ingresses_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/agent_ingresses +``` diff --git a/docs/api/examples/_agent_ingresses_list_response.md b/docs/api/examples/_agent_ingresses_list_response.md new file mode 100644 index 000000000..08ae3ebfd --- /dev/null +++ b/docs/api/examples/_agent_ingresses_list_response.md @@ -0,0 +1,28 @@ + + +#### Example Response + +```json +{ + "ingresses": [ + { + "certificate_management_policy": null, + "certificate_management_status": null, + "created_at": "2024-11-15T17:26:26Z", + "description": "acme devices", + "domain": "connect.acme.com", + "id": "agin_2otazKa9AmvitfEYcbLEkVxPifQ", + "ns_targets": [ + "1.kube-dns.kube-system.svc.cluster.local.", + "2.kube-dns.kube-system.svc.cluster.local.", + "3.kube-dns.kube-system.svc.cluster.local.", + "4.kube-dns.kube-system.svc.cluster.local." + ], + "region_domains": ["tunnel.us.connect.acme.com"], + "uri": "/agent_ingresses/agin_2otazKa9AmvitfEYcbLEkVxPifQ" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/agent_ingresses" +} +``` diff --git a/docs/api/examples/_agent_ingresses_update_request.md b/docs/api/examples/_agent_ingresses_update_request.md new file mode 100644 index 000000000..fe9fd7d5c --- /dev/null +++ b/docs/api/examples/_agent_ingresses_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"ACME Co. Device Ingress","metadata":"{\"device_sku\": \"824JS4RZ1F8X\"}"}' \ +https://api.ngrok.com/agent_ingresses/agin_2otazKa9AmvitfEYcbLEkVxPifQ +``` diff --git a/docs/api/examples/_agent_ingresses_update_response.md b/docs/api/examples/_agent_ingresses_update_response.md new file mode 100644 index 000000000..c82f7bab0 --- /dev/null +++ b/docs/api/examples/_agent_ingresses_update_response.md @@ -0,0 +1,23 @@ + + +#### Example Response + +```json +{ + "certificate_management_policy": null, + "certificate_management_status": null, + "created_at": "2024-11-15T17:26:26Z", + "description": "ACME Co. Device Ingress", + "domain": "connect.acme.com", + "id": "agin_2otazKa9AmvitfEYcbLEkVxPifQ", + "metadata": "{\"device_sku\": \"824JS4RZ1F8X\"}", + "ns_targets": [ + "1.kube-dns.kube-system.svc.cluster.local.", + "2.kube-dns.kube-system.svc.cluster.local.", + "3.kube-dns.kube-system.svc.cluster.local.", + "4.kube-dns.kube-system.svc.cluster.local." + ], + "region_domains": ["tunnel.us.connect.acme.com"], + "uri": "/agent_ingresses/agin_2otazKa9AmvitfEYcbLEkVxPifQ" +} +``` diff --git a/docs/api/examples/_api_keys_create_request.md b/docs/api/examples/_api_keys_create_request.md new file mode 100644 index 000000000..6c604e6ce --- /dev/null +++ b/docs/api/examples/_api_keys_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"ad-hoc dev testing","metadata":"{\"environment\":\"dev\"}"}' \ +https://api.ngrok.com/api_keys +``` diff --git a/docs/api/examples/_api_keys_create_response.md b/docs/api/examples/_api_keys_create_response.md new file mode 100644 index 000000000..276b25977 --- /dev/null +++ b/docs/api/examples/_api_keys_create_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:02Z", + "description": "ad-hoc dev testing", + "id": "ak_2otawMS7frOZs3w8bpePW0N1Iko", + "metadata": "{\"environment\":\"dev\"}", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": "2otawMS7frOZs3w8bpePW0N1Iko_48dHLWSodPv4DMvpyZ3nM", + "uri": "https://api.ngrok.com/api_keys/ak_2otawMS7frOZs3w8bpePW0N1Iko" +} +``` diff --git a/docs/api/examples/_api_keys_delete_request.md b/docs/api/examples/_api_keys_delete_request.md new file mode 100644 index 000000000..e29bdb525 --- /dev/null +++ b/docs/api/examples/_api_keys_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/api_keys/ak_2otawMS7frOZs3w8bpePW0N1Iko +``` diff --git a/docs/api/examples/_api_keys_delete_response.md b/docs/api/examples/_api_keys_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_api_keys_get_request.md b/docs/api/examples/_api_keys_get_request.md new file mode 100644 index 000000000..f6c937b82 --- /dev/null +++ b/docs/api/examples/_api_keys_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/api_keys/ak_2otawMS7frOZs3w8bpePW0N1Iko +``` diff --git a/docs/api/examples/_api_keys_get_response.md b/docs/api/examples/_api_keys_get_response.md new file mode 100644 index 000000000..918042d54 --- /dev/null +++ b/docs/api/examples/_api_keys_get_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:02Z", + "description": "ad-hoc dev testing", + "id": "ak_2otawMS7frOZs3w8bpePW0N1Iko", + "metadata": "{\"environment\":\"dev\", \"owner_id\": 123}", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": null, + "uri": "https://api.ngrok.com/api_keys/ak_2otawMS7frOZs3w8bpePW0N1Iko" +} +``` diff --git a/docs/api/examples/_api_keys_list_request.md b/docs/api/examples/_api_keys_list_request.md new file mode 100644 index 000000000..665a50fb3 --- /dev/null +++ b/docs/api/examples/_api_keys_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/api_keys +``` diff --git a/docs/api/examples/_api_keys_list_response.md b/docs/api/examples/_api_keys_list_response.md new file mode 100644 index 000000000..36a99110a --- /dev/null +++ b/docs/api/examples/_api_keys_list_response.md @@ -0,0 +1,29 @@ + + +#### Example Response + +```json +{ + "keys": [ + { + "created_at": "2024-11-15T17:26:02Z", + "description": "api key for example generation", + "id": "ak_2otawKwzgQ4NcbC12ZJQw24hL6r", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": null, + "uri": "https://api.ngrok.com/api_keys/ak_2otawKwzgQ4NcbC12ZJQw24hL6r" + }, + { + "created_at": "2024-11-15T17:26:02Z", + "description": "ad-hoc dev testing", + "id": "ak_2otawMS7frOZs3w8bpePW0N1Iko", + "metadata": "{\"environment\":\"dev\"}", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": null, + "uri": "https://api.ngrok.com/api_keys/ak_2otawMS7frOZs3w8bpePW0N1Iko" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/api_keys" +} +``` diff --git a/docs/api/examples/_api_keys_update_request.md b/docs/api/examples/_api_keys_update_request.md new file mode 100644 index 000000000..ee5c52646 --- /dev/null +++ b/docs/api/examples/_api_keys_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"environment\":\"dev\", \"owner_id\": 123}"}' \ +https://api.ngrok.com/api_keys/ak_2otawMS7frOZs3w8bpePW0N1Iko +``` diff --git a/docs/api/examples/_api_keys_update_response.md b/docs/api/examples/_api_keys_update_response.md new file mode 100644 index 000000000..918042d54 --- /dev/null +++ b/docs/api/examples/_api_keys_update_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:02Z", + "description": "ad-hoc dev testing", + "id": "ak_2otawMS7frOZs3w8bpePW0N1Iko", + "metadata": "{\"environment\":\"dev\", \"owner_id\": 123}", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": null, + "uri": "https://api.ngrok.com/api_keys/ak_2otawMS7frOZs3w8bpePW0N1Iko" +} +``` diff --git a/docs/api/examples/_bot_users_create_request.md b/docs/api/examples/_bot_users_create_request.md new file mode 100644 index 000000000..d4264a0cc --- /dev/null +++ b/docs/api/examples/_bot_users_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"name":"new bot user from API"}' \ +https://api.ngrok.com/bot_users +``` diff --git a/docs/api/examples/_bot_users_create_response.md b/docs/api/examples/_bot_users_create_response.md new file mode 100644 index 000000000..fce3f4a9b --- /dev/null +++ b/docs/api/examples/_bot_users_create_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "active": true, + "created_at": "2024-11-15T17:26:32Z", + "id": "bot_2otb01SoseuxiE8wKZgLBfXHFWB", + "name": "new bot user from API", + "uri": "https://api.ngrok.com/bot_users/bot_2otb01SoseuxiE8wKZgLBfXHFWB" +} +``` diff --git a/docs/api/examples/_bot_users_delete_request.md b/docs/api/examples/_bot_users_delete_request.md new file mode 100644 index 000000000..af379764e --- /dev/null +++ b/docs/api/examples/_bot_users_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/bot_users/bot_2otb01SoseuxiE8wKZgLBfXHFWB +``` diff --git a/docs/api/examples/_bot_users_delete_response.md b/docs/api/examples/_bot_users_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_bot_users_get_request.md b/docs/api/examples/_bot_users_get_request.md new file mode 100644 index 000000000..5097500f1 --- /dev/null +++ b/docs/api/examples/_bot_users_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/bot_users/bot_2otb01SoseuxiE8wKZgLBfXHFWB +``` diff --git a/docs/api/examples/_bot_users_get_response.md b/docs/api/examples/_bot_users_get_response.md new file mode 100644 index 000000000..fce3f4a9b --- /dev/null +++ b/docs/api/examples/_bot_users_get_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "active": true, + "created_at": "2024-11-15T17:26:32Z", + "id": "bot_2otb01SoseuxiE8wKZgLBfXHFWB", + "name": "new bot user from API", + "uri": "https://api.ngrok.com/bot_users/bot_2otb01SoseuxiE8wKZgLBfXHFWB" +} +``` diff --git a/docs/api/examples/_bot_users_list_request.md b/docs/api/examples/_bot_users_list_request.md new file mode 100644 index 000000000..135c97a4c --- /dev/null +++ b/docs/api/examples/_bot_users_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/bot_users?limit=1 +``` diff --git a/docs/api/examples/_bot_users_list_response.md b/docs/api/examples/_bot_users_list_response.md new file mode 100644 index 000000000..8a2f81a8e --- /dev/null +++ b/docs/api/examples/_bot_users_list_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "bot_users": [ + { + "active": true, + "created_at": "2024-11-15T17:26:32Z", + "id": "bot_2otb0759RZ5fT3TgFcItHVNSzNd", + "name": "API example bot user", + "uri": "https://api.ngrok.com/bot_users/bot_2otb0759RZ5fT3TgFcItHVNSzNd" + } + ], + "next_page_uri": "https://api.ngrok.com/bot_users?before_id=bot_2otb0759RZ5fT3TgFcItHVNSzNd&limit=1", + "uri": "https://api.ngrok.com/bot_users" +} +``` diff --git a/docs/api/examples/_bot_users_update_request.md b/docs/api/examples/_bot_users_update_request.md new file mode 100644 index 000000000..686aa52e6 --- /dev/null +++ b/docs/api/examples/_bot_users_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"active":false,"name":"inactive bot user from API"}' \ +https://api.ngrok.com/bot_users/bot_2otb01SoseuxiE8wKZgLBfXHFWB +``` diff --git a/docs/api/examples/_bot_users_update_response.md b/docs/api/examples/_bot_users_update_response.md new file mode 100644 index 000000000..a91b81c80 --- /dev/null +++ b/docs/api/examples/_bot_users_update_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "active": false, + "created_at": "2024-11-15T17:26:32Z", + "id": "bot_2otb01SoseuxiE8wKZgLBfXHFWB", + "name": "inactive bot user from API", + "uri": "https://api.ngrok.com/bot_users/bot_2otb01SoseuxiE8wKZgLBfXHFWB" +} +``` diff --git a/docs/api/examples/_certificate_authorities_create_request.md b/docs/api/examples/_certificate_authorities_create_request.md new file mode 100644 index 000000000..84927b33e --- /dev/null +++ b/docs/api/examples/_certificate_authorities_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"ca_pem":"-----BEGIN CERTIFICATE-----\nMIIEETCCAvmgAwIBAgIUU3N6lNzPqar4400cLQMcVHFl+mEwDQYJKoZIhvcNAQEL\nBQAwgZcxCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5l\neTEZMBcGA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQg\nU2VydmljZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9w\nYmVhci5leGFtcGxlMB4XDTIwMDUwMTE2Mjc1OVoXDTIxMDUwMTE2Mjc1OVowgZcx\nCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5leTEZMBcG\nA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQgU2Vydmlj\nZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9wYmVhci5l\neGFtcGxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7y/EAN0yZkA0\nnRpMBfomnnS8KMWHb90kvGfhkCDR8WCQz5mX7eDEYDthRQrEgp63qtJ7IoCM5f0A\nUD6J2m/mZecP7SfA8OuTAZ7UyRixpZh0zJQSgj24Sh1LQuYci0DNXrei+R1qBvd+\npmpZwkKygNrbZYe3oY1PZ3jEYPSAQzIObDF7LhdhLLrcfWa9BHOGMLnALNMY558b\nvoijTCEmRrSavdvrAS9LDRipEXT8EQOWZZT9VbPtgSBalvStdoupAptmPIWjXftf\nWi1kry+P0xVFZG9iZwUeAT6fSJ+gJD8M1UXWaQbocYrctESP0sZEFM3rzdWqrZb7\n3cH3K5OCvwIDAQABo1MwUTAdBgNVHQ4EFgQUsZdchgUimRHLiPRWw51+DGBmlfMw\nHwYDVR0jBBgwFoAUsZdchgUimRHLiPRWw51+DGBmlfMwDwYDVR0TAQH/BAUwAwEB\n/zANBgkqhkiG9w0BAQsFAAOCAQEANk25tt8sSfn6Qu1bbhWRbjKgS5z+j9LqyCna\nv3fbSchMthaQR7w0vL69ayroeYdqDZkRMmHjuYKY4NyqyXkkaqVO63wEicCo55d9\npIKuPzc/7xwdRephosjGTQ4QaQ4OnrdpJZieI92m9ODexgsab84AYmwNpbGOI/tK\nnPsQr8x1RfLs2gbBwQ4MYVM3tQQbX0o+yve5nz/NCOq4vdG+eKON5u6VYMkOOg9F\nVyNY1iISQkpNk/AF6Vi9BGuDb5Hg0phEl1Q0ntCO7ZHAUHjy0ucqXZiXoXdXZcs3\n3zKKLUKva59EDBZ5TUucvXh8VemBtNc6hd1mX4Tq7lAreG9pjQ==\n-----END CERTIFICATE-----","description":"Internal Coprorates Services Authority","metadata":"{\"internal_id\": \"7d2caeee-cdc3-4b26-b2c2-b280b8287552\"}"}' \ +https://api.ngrok.com/certificate_authorities +``` diff --git a/docs/api/examples/_certificate_authorities_create_response.md b/docs/api/examples/_certificate_authorities_create_response.md new file mode 100644 index 000000000..edcc18ba8 --- /dev/null +++ b/docs/api/examples/_certificate_authorities_create_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "ca_pem": "-----BEGIN CERTIFICATE-----\nMIIEETCCAvmgAwIBAgIUU3N6lNzPqar4400cLQMcVHFl+mEwDQYJKoZIhvcNAQEL\nBQAwgZcxCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5l\neTEZMBcGA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQg\nU2VydmljZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9w\nYmVhci5leGFtcGxlMB4XDTIwMDUwMTE2Mjc1OVoXDTIxMDUwMTE2Mjc1OVowgZcx\nCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5leTEZMBcG\nA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQgU2Vydmlj\nZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9wYmVhci5l\neGFtcGxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7y/EAN0yZkA0\nnRpMBfomnnS8KMWHb90kvGfhkCDR8WCQz5mX7eDEYDthRQrEgp63qtJ7IoCM5f0A\nUD6J2m/mZecP7SfA8OuTAZ7UyRixpZh0zJQSgj24Sh1LQuYci0DNXrei+R1qBvd+\npmpZwkKygNrbZYe3oY1PZ3jEYPSAQzIObDF7LhdhLLrcfWa9BHOGMLnALNMY558b\nvoijTCEmRrSavdvrAS9LDRipEXT8EQOWZZT9VbPtgSBalvStdoupAptmPIWjXftf\nWi1kry+P0xVFZG9iZwUeAT6fSJ+gJD8M1UXWaQbocYrctESP0sZEFM3rzdWqrZb7\n3cH3K5OCvwIDAQABo1MwUTAdBgNVHQ4EFgQUsZdchgUimRHLiPRWw51+DGBmlfMw\nHwYDVR0jBBgwFoAUsZdchgUimRHLiPRWw51+DGBmlfMwDwYDVR0TAQH/BAUwAwEB\n/zANBgkqhkiG9w0BAQsFAAOCAQEANk25tt8sSfn6Qu1bbhWRbjKgS5z+j9LqyCna\nv3fbSchMthaQR7w0vL69ayroeYdqDZkRMmHjuYKY4NyqyXkkaqVO63wEicCo55d9\npIKuPzc/7xwdRephosjGTQ4QaQ4OnrdpJZieI92m9ODexgsab84AYmwNpbGOI/tK\nnPsQr8x1RfLs2gbBwQ4MYVM3tQQbX0o+yve5nz/NCOq4vdG+eKON5u6VYMkOOg9F\nVyNY1iISQkpNk/AF6Vi9BGuDb5Hg0phEl1Q0ntCO7ZHAUHjy0ucqXZiXoXdXZcs3\n3zKKLUKva59EDBZ5TUucvXh8VemBtNc6hd1mX4Tq7lAreG9pjQ==\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "description": "Internal Coprorates Services Authority", + "extended_key_usages": [], + "id": "ca_2otazJqgcg80bV0dcHg8EevmakU", + "key_usages": [], + "metadata": "{\"internal_id\": \"7d2caeee-cdc3-4b26-b2c2-b280b8287552\"}", + "not_after": "2021-05-01T16:27:59Z", + "not_before": "2020-05-01T16:27:59Z", + "subject_common_name": "Intranet Services Authority", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazJqgcg80bV0dcHg8EevmakU" +} +``` diff --git a/docs/api/examples/_certificate_authorities_delete_request.md b/docs/api/examples/_certificate_authorities_delete_request.md new file mode 100644 index 000000000..d2dd41e1e --- /dev/null +++ b/docs/api/examples/_certificate_authorities_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/certificate_authorities/ca_2otazJqgcg80bV0dcHg8EevmakU +``` diff --git a/docs/api/examples/_certificate_authorities_delete_response.md b/docs/api/examples/_certificate_authorities_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_certificate_authorities_get_request.md b/docs/api/examples/_certificate_authorities_get_request.md new file mode 100644 index 000000000..3becfa2e2 --- /dev/null +++ b/docs/api/examples/_certificate_authorities_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/certificate_authorities/ca_2otazJqgcg80bV0dcHg8EevmakU +``` diff --git a/docs/api/examples/_certificate_authorities_get_response.md b/docs/api/examples/_certificate_authorities_get_response.md new file mode 100644 index 000000000..d172a5141 --- /dev/null +++ b/docs/api/examples/_certificate_authorities_get_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "ca_pem": "-----BEGIN CERTIFICATE-----\nMIIEETCCAvmgAwIBAgIUU3N6lNzPqar4400cLQMcVHFl+mEwDQYJKoZIhvcNAQEL\nBQAwgZcxCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5l\neTEZMBcGA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQg\nU2VydmljZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9w\nYmVhci5leGFtcGxlMB4XDTIwMDUwMTE2Mjc1OVoXDTIxMDUwMTE2Mjc1OVowgZcx\nCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5leTEZMBcG\nA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQgU2Vydmlj\nZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9wYmVhci5l\neGFtcGxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7y/EAN0yZkA0\nnRpMBfomnnS8KMWHb90kvGfhkCDR8WCQz5mX7eDEYDthRQrEgp63qtJ7IoCM5f0A\nUD6J2m/mZecP7SfA8OuTAZ7UyRixpZh0zJQSgj24Sh1LQuYci0DNXrei+R1qBvd+\npmpZwkKygNrbZYe3oY1PZ3jEYPSAQzIObDF7LhdhLLrcfWa9BHOGMLnALNMY558b\nvoijTCEmRrSavdvrAS9LDRipEXT8EQOWZZT9VbPtgSBalvStdoupAptmPIWjXftf\nWi1kry+P0xVFZG9iZwUeAT6fSJ+gJD8M1UXWaQbocYrctESP0sZEFM3rzdWqrZb7\n3cH3K5OCvwIDAQABo1MwUTAdBgNVHQ4EFgQUsZdchgUimRHLiPRWw51+DGBmlfMw\nHwYDVR0jBBgwFoAUsZdchgUimRHLiPRWw51+DGBmlfMwDwYDVR0TAQH/BAUwAwEB\n/zANBgkqhkiG9w0BAQsFAAOCAQEANk25tt8sSfn6Qu1bbhWRbjKgS5z+j9LqyCna\nv3fbSchMthaQR7w0vL69ayroeYdqDZkRMmHjuYKY4NyqyXkkaqVO63wEicCo55d9\npIKuPzc/7xwdRephosjGTQ4QaQ4OnrdpJZieI92m9ODexgsab84AYmwNpbGOI/tK\nnPsQr8x1RfLs2gbBwQ4MYVM3tQQbX0o+yve5nz/NCOq4vdG+eKON5u6VYMkOOg9F\nVyNY1iISQkpNk/AF6Vi9BGuDb5Hg0phEl1Q0ntCO7ZHAUHjy0ucqXZiXoXdXZcs3\n3zKKLUKva59EDBZ5TUucvXh8VemBtNc6hd1mX4Tq7lAreG9pjQ==\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "description": "Internal Corporate Services Authority (Legacy)", + "extended_key_usages": [], + "id": "ca_2otazJqgcg80bV0dcHg8EevmakU", + "key_usages": [], + "metadata": "{\"internal_id\": \"7d2caeee-cdc3-4b26-b2c2-b280b8287552\"}", + "not_after": "2021-05-01T16:27:59Z", + "not_before": "2020-05-01T16:27:59Z", + "subject_common_name": "Intranet Services Authority", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazJqgcg80bV0dcHg8EevmakU" +} +``` diff --git a/docs/api/examples/_certificate_authorities_list_request.md b/docs/api/examples/_certificate_authorities_list_request.md new file mode 100644 index 000000000..fdc4967db --- /dev/null +++ b/docs/api/examples/_certificate_authorities_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/certificate_authorities +``` diff --git a/docs/api/examples/_certificate_authorities_list_response.md b/docs/api/examples/_certificate_authorities_list_response.md new file mode 100644 index 000000000..87240cb9b --- /dev/null +++ b/docs/api/examples/_certificate_authorities_list_response.md @@ -0,0 +1,48 @@ + + +#### Example Response + +```json +{ + "certificate_authorities": [ + { + "ca_pem": "-----BEGIN CERTIFICATE-----\nMIIEETCCAvmgAwIBAgIUU3N6lNzPqar4400cLQMcVHFl+mEwDQYJKoZIhvcNAQEL\nBQAwgZcxCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5l\neTEZMBcGA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQg\nU2VydmljZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9w\nYmVhci5leGFtcGxlMB4XDTIwMDUwMTE2Mjc1OVoXDTIxMDUwMTE2Mjc1OVowgZcx\nCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5leTEZMBcG\nA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQgU2Vydmlj\nZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9wYmVhci5l\neGFtcGxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7y/EAN0yZkA0\nnRpMBfomnnS8KMWHb90kvGfhkCDR8WCQz5mX7eDEYDthRQrEgp63qtJ7IoCM5f0A\nUD6J2m/mZecP7SfA8OuTAZ7UyRixpZh0zJQSgj24Sh1LQuYci0DNXrei+R1qBvd+\npmpZwkKygNrbZYe3oY1PZ3jEYPSAQzIObDF7LhdhLLrcfWa9BHOGMLnALNMY558b\nvoijTCEmRrSavdvrAS9LDRipEXT8EQOWZZT9VbPtgSBalvStdoupAptmPIWjXftf\nWi1kry+P0xVFZG9iZwUeAT6fSJ+gJD8M1UXWaQbocYrctESP0sZEFM3rzdWqrZb7\n3cH3K5OCvwIDAQABo1MwUTAdBgNVHQ4EFgQUsZdchgUimRHLiPRWw51+DGBmlfMw\nHwYDVR0jBBgwFoAUsZdchgUimRHLiPRWw51+DGBmlfMwDwYDVR0TAQH/BAUwAwEB\n/zANBgkqhkiG9w0BAQsFAAOCAQEANk25tt8sSfn6Qu1bbhWRbjKgS5z+j9LqyCna\nv3fbSchMthaQR7w0vL69ayroeYdqDZkRMmHjuYKY4NyqyXkkaqVO63wEicCo55d9\npIKuPzc/7xwdRephosjGTQ4QaQ4OnrdpJZieI92m9ODexgsab84AYmwNpbGOI/tK\nnPsQr8x1RfLs2gbBwQ4MYVM3tQQbX0o+yve5nz/NCOq4vdG+eKON5u6VYMkOOg9F\nVyNY1iISQkpNk/AF6Vi9BGuDb5Hg0phEl1Q0ntCO7ZHAUHjy0ucqXZiXoXdXZcs3\n3zKKLUKva59EDBZ5TUucvXh8VemBtNc6hd1mX4Tq7lAreG9pjQ==\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "extended_key_usages": [], + "id": "ca_2otazMWXefts6w9KiQIExV8bnO3", + "key_usages": [], + "not_after": "2021-05-01T16:27:59Z", + "not_before": "2020-05-01T16:27:59Z", + "subject_common_name": "Intranet Services Authority", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazMWXefts6w9KiQIExV8bnO3" + }, + { + "ca_pem": "-----BEGIN CERTIFICATE-----\nMIIEETCCAvmgAwIBAgIUU3N6lNzPqar4400cLQMcVHFl+mEwDQYJKoZIhvcNAQEL\nBQAwgZcxCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5l\neTEZMBcGA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQg\nU2VydmljZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9w\nYmVhci5leGFtcGxlMB4XDTIwMDUwMTE2Mjc1OVoXDTIxMDUwMTE2Mjc1OVowgZcx\nCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5leTEZMBcG\nA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQgU2Vydmlj\nZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9wYmVhci5l\neGFtcGxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7y/EAN0yZkA0\nnRpMBfomnnS8KMWHb90kvGfhkCDR8WCQz5mX7eDEYDthRQrEgp63qtJ7IoCM5f0A\nUD6J2m/mZecP7SfA8OuTAZ7UyRixpZh0zJQSgj24Sh1LQuYci0DNXrei+R1qBvd+\npmpZwkKygNrbZYe3oY1PZ3jEYPSAQzIObDF7LhdhLLrcfWa9BHOGMLnALNMY558b\nvoijTCEmRrSavdvrAS9LDRipEXT8EQOWZZT9VbPtgSBalvStdoupAptmPIWjXftf\nWi1kry+P0xVFZG9iZwUeAT6fSJ+gJD8M1UXWaQbocYrctESP0sZEFM3rzdWqrZb7\n3cH3K5OCvwIDAQABo1MwUTAdBgNVHQ4EFgQUsZdchgUimRHLiPRWw51+DGBmlfMw\nHwYDVR0jBBgwFoAUsZdchgUimRHLiPRWw51+DGBmlfMwDwYDVR0TAQH/BAUwAwEB\n/zANBgkqhkiG9w0BAQsFAAOCAQEANk25tt8sSfn6Qu1bbhWRbjKgS5z+j9LqyCna\nv3fbSchMthaQR7w0vL69ayroeYdqDZkRMmHjuYKY4NyqyXkkaqVO63wEicCo55d9\npIKuPzc/7xwdRephosjGTQ4QaQ4OnrdpJZieI92m9ODexgsab84AYmwNpbGOI/tK\nnPsQr8x1RfLs2gbBwQ4MYVM3tQQbX0o+yve5nz/NCOq4vdG+eKON5u6VYMkOOg9F\nVyNY1iISQkpNk/AF6Vi9BGuDb5Hg0phEl1Q0ntCO7ZHAUHjy0ucqXZiXoXdXZcs3\n3zKKLUKva59EDBZ5TUucvXh8VemBtNc6hd1mX4Tq7lAreG9pjQ==\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "description": "Internal Coprorates Services Authority", + "extended_key_usages": [], + "id": "ca_2otazJqgcg80bV0dcHg8EevmakU", + "key_usages": [], + "metadata": "{\"internal_id\": \"7d2caeee-cdc3-4b26-b2c2-b280b8287552\"}", + "not_after": "2021-05-01T16:27:59Z", + "not_before": "2020-05-01T16:27:59Z", + "subject_common_name": "Intranet Services Authority", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazJqgcg80bV0dcHg8EevmakU" + }, + { + "ca_pem": "-----BEGIN CERTIFICATE-----\nMIIEAzCCAuugAwIBAgIUGN+Gv4BdJ17VoVXWrz9j51jcfYowDQYJKoZIhvcNAQEL\nBQAwgZAxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH\nDA1TYW4gRnJhbmNpc2NvMRMwEQYDVQQKDApBQ01FLCBJbmMuMR4wHAYDVQQDDBVB\nQ01FIERldmljZSBBdXRob3JpdHkxHzAdBgkqhkiG9w0BCQEWEG9wc0BhY21lLmV4\nYW1wbGUwHhcNMjAwNTAxMTYyNTA5WhcNMjEwNTAxMTYyNTA5WjCBkDELMAkGA1UE\nBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExFjAUBgNVBAcMDVNhbiBGcmFuY2lz\nY28xEzARBgNVBAoMCkFDTUUsIEluYy4xHjAcBgNVBAMMFUFDTUUgRGV2aWNlIEF1\ndGhvcml0eTEfMB0GCSqGSIb3DQEJARYQb3BzQGFjbWUuZXhhbXBsZTCCASIwDQYJ\nKoZIhvcNAQEBBQADggEPADCCAQoCggEBAO8vxADdMmZANJ0aTAX6Jp50vCjFh2/d\nJLxn4ZAg0fFgkM+Zl+3gxGA7YUUKxIKet6rSeyKAjOX9AFA+idpv5mXnD+0nwPDr\nkwGe1MkYsaWYdMyUEoI9uEodS0LmHItAzV63ovkdagb3fqZqWcJCsoDa22WHt6GN\nT2d4xGD0gEMyDmwxey4XYSy63H1mvQRzhjC5wCzTGOefG76Io0whJka0mr3b6wEv\nSw0YqRF0/BEDlmWU/VWz7YEgWpb0rXaLqQKbZjyFo137X1otZK8vj9MVRWRvYmcF\nHgE+n0ifoCQ/DNVF1mkG6HGK3LREj9LGRBTN683Vqq2W+93B9yuTgr8CAwEAAaNT\nMFEwHQYDVR0OBBYEFLGXXIYFIpkRy4j0VsOdfgxgZpXzMB8GA1UdIwQYMBaAFLGX\nXIYFIpkRy4j0VsOdfgxgZpXzMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL\nBQADggEBAFyO7ZWj9w6xzoBWu/XbIVwsQ3kE5k+wrRGyp2rh2v4msAEveCIZP5kT\nCSdr2vr+9HQYiKf1ftsp9tGTLXwrhz3ztC8jIqo4A0grw5B61J0lj+2grKNq1/CK\nxQcpkbnetzo4zsDqFRoN2VK40Ovo4b/IknFa38t06b4t8cYQIqUdkFHMSSIz3Mvx\nRIK6MZlilT8zkWhi9kfCJe/s3cVEAJixNkgO4XNo5VhhxFenyvAL2vDM27dWVtDG\nqL3MFZbcy0/74AJsJDSrflGUQxjrK3WI9PkpKp/xey54XJAbhF63z1VwkJwSwufv\nW9HgidfMN9icgxkScyWpB9KrZHcsLk4=\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "description": "Device Connectivity Authority", + "extended_key_usages": [], + "id": "ca_2otazHULH2TBIgDbMA2MGLWnB9N", + "key_usages": [], + "not_after": "2021-05-01T16:25:09Z", + "not_before": "2020-05-01T16:25:09Z", + "subject_common_name": "ACME Device Authority", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazHULH2TBIgDbMA2MGLWnB9N" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/certificate_authorities" +} +``` diff --git a/docs/api/examples/_certificate_authorities_update_request.md b/docs/api/examples/_certificate_authorities_update_request.md new file mode 100644 index 000000000..d72cb2c4e --- /dev/null +++ b/docs/api/examples/_certificate_authorities_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"Internal Corporate Services Authority (Legacy)"}' \ +https://api.ngrok.com/certificate_authorities/ca_2otazJqgcg80bV0dcHg8EevmakU +``` diff --git a/docs/api/examples/_certificate_authorities_update_response.md b/docs/api/examples/_certificate_authorities_update_response.md new file mode 100644 index 000000000..d172a5141 --- /dev/null +++ b/docs/api/examples/_certificate_authorities_update_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "ca_pem": "-----BEGIN CERTIFICATE-----\nMIIEETCCAvmgAwIBAgIUU3N6lNzPqar4400cLQMcVHFl+mEwDQYJKoZIhvcNAQEL\nBQAwgZcxCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5l\neTEZMBcGA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQg\nU2VydmljZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9w\nYmVhci5leGFtcGxlMB4XDTIwMDUwMTE2Mjc1OVoXDTIxMDUwMTE2Mjc1OVowgZcx\nCzAJBgNVBAYTAkFVMQwwCgYDVQQIDANOU1cxDzANBgNVBAcMBlN5ZG5leTEZMBcG\nA1UECgwQRHJvcGJlYXIgUHR5IEx0ZDEkMCIGA1UEAwwbSW50cmFuZXQgU2Vydmlj\nZXMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlzZWN1cml0eUBkcm9wYmVhci5l\neGFtcGxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7y/EAN0yZkA0\nnRpMBfomnnS8KMWHb90kvGfhkCDR8WCQz5mX7eDEYDthRQrEgp63qtJ7IoCM5f0A\nUD6J2m/mZecP7SfA8OuTAZ7UyRixpZh0zJQSgj24Sh1LQuYci0DNXrei+R1qBvd+\npmpZwkKygNrbZYe3oY1PZ3jEYPSAQzIObDF7LhdhLLrcfWa9BHOGMLnALNMY558b\nvoijTCEmRrSavdvrAS9LDRipEXT8EQOWZZT9VbPtgSBalvStdoupAptmPIWjXftf\nWi1kry+P0xVFZG9iZwUeAT6fSJ+gJD8M1UXWaQbocYrctESP0sZEFM3rzdWqrZb7\n3cH3K5OCvwIDAQABo1MwUTAdBgNVHQ4EFgQUsZdchgUimRHLiPRWw51+DGBmlfMw\nHwYDVR0jBBgwFoAUsZdchgUimRHLiPRWw51+DGBmlfMwDwYDVR0TAQH/BAUwAwEB\n/zANBgkqhkiG9w0BAQsFAAOCAQEANk25tt8sSfn6Qu1bbhWRbjKgS5z+j9LqyCna\nv3fbSchMthaQR7w0vL69ayroeYdqDZkRMmHjuYKY4NyqyXkkaqVO63wEicCo55d9\npIKuPzc/7xwdRephosjGTQ4QaQ4OnrdpJZieI92m9ODexgsab84AYmwNpbGOI/tK\nnPsQr8x1RfLs2gbBwQ4MYVM3tQQbX0o+yve5nz/NCOq4vdG+eKON5u6VYMkOOg9F\nVyNY1iISQkpNk/AF6Vi9BGuDb5Hg0phEl1Q0ntCO7ZHAUHjy0ucqXZiXoXdXZcs3\n3zKKLUKva59EDBZ5TUucvXh8VemBtNc6hd1mX4Tq7lAreG9pjQ==\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "description": "Internal Corporate Services Authority (Legacy)", + "extended_key_usages": [], + "id": "ca_2otazJqgcg80bV0dcHg8EevmakU", + "key_usages": [], + "metadata": "{\"internal_id\": \"7d2caeee-cdc3-4b26-b2c2-b280b8287552\"}", + "not_after": "2021-05-01T16:27:59Z", + "not_before": "2020-05-01T16:27:59Z", + "subject_common_name": "Intranet Services Authority", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazJqgcg80bV0dcHg8EevmakU" +} +``` diff --git a/docs/api/examples/_credentials_create_request.md b/docs/api/examples/_credentials_create_request.md new file mode 100644 index 000000000..59da9c69d --- /dev/null +++ b/docs/api/examples/_credentials_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"development cred for alan@example.com"}' \ +https://api.ngrok.com/credentials +``` diff --git a/docs/api/examples/_credentials_create_response.md b/docs/api/examples/_credentials_create_response.md new file mode 100644 index 000000000..91f4c0d2d --- /dev/null +++ b/docs/api/examples/_credentials_create_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "acl": [], + "created_at": "2024-11-15T17:26:03Z", + "description": "development cred for alan@example.com", + "id": "cr_2otawT0kdj3qa3I8ECRpBpRWr1M", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": "2otawT0kdj3qa3I8ECRpBpRWr1M_7ou5aQd9nbk8JPSreVDAv", + "uri": "https://api.ngrok.com/credentials/cr_2otawT0kdj3qa3I8ECRpBpRWr1M" +} +``` diff --git a/docs/api/examples/_credentials_delete_request.md b/docs/api/examples/_credentials_delete_request.md new file mode 100644 index 000000000..2c84acc7c --- /dev/null +++ b/docs/api/examples/_credentials_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/credentials/cr_2otawT0kdj3qa3I8ECRpBpRWr1M +``` diff --git a/docs/api/examples/_credentials_delete_response.md b/docs/api/examples/_credentials_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_credentials_get_request.md b/docs/api/examples/_credentials_get_request.md new file mode 100644 index 000000000..54a1bef60 --- /dev/null +++ b/docs/api/examples/_credentials_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/credentials/cr_2otawT0kdj3qa3I8ECRpBpRWr1M +``` diff --git a/docs/api/examples/_credentials_get_response.md b/docs/api/examples/_credentials_get_response.md new file mode 100644 index 000000000..9f31d96c7 --- /dev/null +++ b/docs/api/examples/_credentials_get_response.md @@ -0,0 +1,16 @@ + + +#### Example Response + +```json +{ + "acl": [], + "created_at": "2024-11-15T17:26:03Z", + "description": "device alpha-2", + "id": "cr_2otawT0kdj3qa3I8ECRpBpRWr1M", + "metadata": "{\"device_id\": \"d5111ba7-0cc5-4ba3-8398-e6c79e4e89c2\"}", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": null, + "uri": "https://api.ngrok.com/credentials/cr_2otawT0kdj3qa3I8ECRpBpRWr1M" +} +``` diff --git a/docs/api/examples/_credentials_list_request.md b/docs/api/examples/_credentials_list_request.md new file mode 100644 index 000000000..9a1de7415 --- /dev/null +++ b/docs/api/examples/_credentials_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/credentials +``` diff --git a/docs/api/examples/_credentials_list_response.md b/docs/api/examples/_credentials_list_response.md new file mode 100644 index 000000000..de64a762e --- /dev/null +++ b/docs/api/examples/_credentials_list_response.md @@ -0,0 +1,39 @@ + + +#### Example Response + +```json +{ + "credentials": [ + { + "acl": ["bind:1.tcp.ngrok.io:20002", "bind:132.devices.company.com"], + "created_at": "2024-11-15T17:26:03Z", + "description": "for device #132", + "id": "cr_2otawTY9kbDzrNJqoE2Y45egUdO", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": null, + "uri": "https://api.ngrok.com/credentials/cr_2otawTY9kbDzrNJqoE2Y45egUdO" + }, + { + "acl": [], + "created_at": "2024-11-15T17:26:03Z", + "description": "development cred for alan@example.com", + "id": "cr_2otawT0kdj3qa3I8ECRpBpRWr1M", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": null, + "uri": "https://api.ngrok.com/credentials/cr_2otawT0kdj3qa3I8ECRpBpRWr1M" + }, + { + "acl": [], + "created_at": "2024-11-15T17:26:02Z", + "description": "credential for \"api-examples-a114fe59452c76cd@example.com\"", + "id": "cr_2otawHJZa8aqlkIeYBQrZapj52S", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": null, + "uri": "https://api.ngrok.com/credentials/cr_2otawHJZa8aqlkIeYBQrZapj52S" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/credentials" +} +``` diff --git a/docs/api/examples/_credentials_update_request.md b/docs/api/examples/_credentials_update_request.md new file mode 100644 index 000000000..d56a65bce --- /dev/null +++ b/docs/api/examples/_credentials_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"device alpha-2","metadata":"{\"device_id\": \"d5111ba7-0cc5-4ba3-8398-e6c79e4e89c2\"}"}' \ +https://api.ngrok.com/credentials/cr_2otawT0kdj3qa3I8ECRpBpRWr1M +``` diff --git a/docs/api/examples/_credentials_update_response.md b/docs/api/examples/_credentials_update_response.md new file mode 100644 index 000000000..9f31d96c7 --- /dev/null +++ b/docs/api/examples/_credentials_update_response.md @@ -0,0 +1,16 @@ + + +#### Example Response + +```json +{ + "acl": [], + "created_at": "2024-11-15T17:26:03Z", + "description": "device alpha-2", + "id": "cr_2otawT0kdj3qa3I8ECRpBpRWr1M", + "metadata": "{\"device_id\": \"d5111ba7-0cc5-4ba3-8398-e6c79e4e89c2\"}", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "token": null, + "uri": "https://api.ngrok.com/credentials/cr_2otawT0kdj3qa3I8ECRpBpRWr1M" +} +``` diff --git a/docs/api/examples/_edge_route_backend_module_delete_request.md b/docs/api/examples/_edge_route_backend_module_delete_request.md new file mode 100644 index 000000000..f9a60ba32 --- /dev/null +++ b/docs/api/examples/_edge_route_backend_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazTLmO5kCxKE6Ve0iMrz5EgN/routes/edghtsrt_2otazP3yqzgnWWSqNMjOsIgncou/backend +``` diff --git a/docs/api/examples/_edge_route_backend_module_delete_response.md b/docs/api/examples/_edge_route_backend_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_backend_module_get_request.md b/docs/api/examples/_edge_route_backend_module_get_request.md new file mode 100644 index 000000000..53d57d18a --- /dev/null +++ b/docs/api/examples/_edge_route_backend_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazTLmO5kCxKE6Ve0iMrz5EgN/routes/edghtsrt_2otazP3yqzgnWWSqNMjOsIgncou/backend +``` diff --git a/docs/api/examples/_edge_route_backend_module_get_response.md b/docs/api/examples/_edge_route_backend_module_get_response.md new file mode 100644 index 000000000..7498d83f0 --- /dev/null +++ b/docs/api/examples/_edge_route_backend_module_get_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "backend": { + "id": "bkdtg_2otazTpwSwO8vxkuTKML9MBCocY", + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazTpwSwO8vxkuTKML9MBCocY" + }, + "enabled": true +} +``` diff --git a/docs/api/examples/_edge_route_backend_module_replace_request.md b/docs/api/examples/_edge_route_backend_module_replace_request.md new file mode 100644 index 000000000..8b862692b --- /dev/null +++ b/docs/api/examples/_edge_route_backend_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"backend_id":"bkdtg_2otazTpwSwO8vxkuTKML9MBCocY","enabled":true}' \ +https://api.ngrok.com/edges/https/edghts_2otazTLmO5kCxKE6Ve0iMrz5EgN/routes/edghtsrt_2otazP3yqzgnWWSqNMjOsIgncou/backend +``` diff --git a/docs/api/examples/_edge_route_backend_module_replace_response.md b/docs/api/examples/_edge_route_backend_module_replace_response.md new file mode 100644 index 000000000..7498d83f0 --- /dev/null +++ b/docs/api/examples/_edge_route_backend_module_replace_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "backend": { + "id": "bkdtg_2otazTpwSwO8vxkuTKML9MBCocY", + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazTpwSwO8vxkuTKML9MBCocY" + }, + "enabled": true +} +``` diff --git a/docs/api/examples/_edge_route_circuit_breaker_module_delete_request.md b/docs/api/examples/_edge_route_circuit_breaker_module_delete_request.md new file mode 100644 index 000000000..560627946 --- /dev/null +++ b/docs/api/examples/_edge_route_circuit_breaker_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazWXyNzOT1FsPCCsQRgJUIKk/routes/edghtsrt_2otazc6pb9GIftgJNCKFkqdkb7B/circuit_breaker +``` diff --git a/docs/api/examples/_edge_route_circuit_breaker_module_delete_response.md b/docs/api/examples/_edge_route_circuit_breaker_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_circuit_breaker_module_get_request.md b/docs/api/examples/_edge_route_circuit_breaker_module_get_request.md new file mode 100644 index 000000000..8bd31b543 --- /dev/null +++ b/docs/api/examples/_edge_route_circuit_breaker_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazWXyNzOT1FsPCCsQRgJUIKk/routes/edghtsrt_2otazc6pb9GIftgJNCKFkqdkb7B/circuit_breaker +``` diff --git a/docs/api/examples/_edge_route_circuit_breaker_module_get_response.md b/docs/api/examples/_edge_route_circuit_breaker_module_get_response.md new file mode 100644 index 000000000..b56bbca40 --- /dev/null +++ b/docs/api/examples/_edge_route_circuit_breaker_module_get_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "error_threshold_percentage": 0.2, + "num_buckets": 5, + "rolling_window": 300, + "tripped_duration": 120, + "volume_threshold": 20 +} +``` diff --git a/docs/api/examples/_edge_route_circuit_breaker_module_replace_request.md b/docs/api/examples/_edge_route_circuit_breaker_module_replace_request.md new file mode 100644 index 000000000..700760d46 --- /dev/null +++ b/docs/api/examples/_edge_route_circuit_breaker_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"error_threshold_percentage":0.2,"num_buckets":5,"rolling_window":300,"tripped_duration":120,"volume_threshold":20}' \ +https://api.ngrok.com/edges/https/edghts_2otazWXyNzOT1FsPCCsQRgJUIKk/routes/edghtsrt_2otazc6pb9GIftgJNCKFkqdkb7B/circuit_breaker +``` diff --git a/docs/api/examples/_edge_route_circuit_breaker_module_replace_response.md b/docs/api/examples/_edge_route_circuit_breaker_module_replace_response.md new file mode 100644 index 000000000..b56bbca40 --- /dev/null +++ b/docs/api/examples/_edge_route_circuit_breaker_module_replace_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "error_threshold_percentage": 0.2, + "num_buckets": 5, + "rolling_window": 300, + "tripped_duration": 120, + "volume_threshold": 20 +} +``` diff --git a/docs/api/examples/_edge_route_compression_module_delete_request.md b/docs/api/examples/_edge_route_compression_module_delete_request.md new file mode 100644 index 000000000..208336832 --- /dev/null +++ b/docs/api/examples/_edge_route_compression_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazbp6zQndnH8WmBhXpWuBuGB/routes/edghtsrt_2otazZ3CYgIfeZWlSgCcqZanPTP/compression +``` diff --git a/docs/api/examples/_edge_route_compression_module_delete_response.md b/docs/api/examples/_edge_route_compression_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_compression_module_get_request.md b/docs/api/examples/_edge_route_compression_module_get_request.md new file mode 100644 index 000000000..6e6da285c --- /dev/null +++ b/docs/api/examples/_edge_route_compression_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazbp6zQndnH8WmBhXpWuBuGB/routes/edghtsrt_2otazZ3CYgIfeZWlSgCcqZanPTP/compression +``` diff --git a/docs/api/examples/_edge_route_compression_module_get_response.md b/docs/api/examples/_edge_route_compression_module_get_response.md new file mode 100644 index 000000000..fdfe95fc3 --- /dev/null +++ b/docs/api/examples/_edge_route_compression_module_get_response.md @@ -0,0 +1,9 @@ + + +#### Example Response + +```json +{ + "enabled": true +} +``` diff --git a/docs/api/examples/_edge_route_compression_module_replace_request.md b/docs/api/examples/_edge_route_compression_module_replace_request.md new file mode 100644 index 000000000..cb9072b7b --- /dev/null +++ b/docs/api/examples/_edge_route_compression_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true}' \ +https://api.ngrok.com/edges/https/edghts_2otazbp6zQndnH8WmBhXpWuBuGB/routes/edghtsrt_2otazZ3CYgIfeZWlSgCcqZanPTP/compression +``` diff --git a/docs/api/examples/_edge_route_compression_module_replace_response.md b/docs/api/examples/_edge_route_compression_module_replace_response.md new file mode 100644 index 000000000..fdfe95fc3 --- /dev/null +++ b/docs/api/examples/_edge_route_compression_module_replace_response.md @@ -0,0 +1,9 @@ + + +#### Example Response + +```json +{ + "enabled": true +} +``` diff --git a/docs/api/examples/_edge_route_ip_restriction_module_delete_request.md b/docs/api/examples/_edge_route_ip_restriction_module_delete_request.md new file mode 100644 index 000000000..fa0e2ae80 --- /dev/null +++ b/docs/api/examples/_edge_route_ip_restriction_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazcWSYILeefUXhye0JRQGGqs/routes/edghtsrt_2otazZ3W9OJRvA8djdPz6gbN2QF/ip_restriction +``` diff --git a/docs/api/examples/_edge_route_ip_restriction_module_delete_response.md b/docs/api/examples/_edge_route_ip_restriction_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_ip_restriction_module_get_request.md b/docs/api/examples/_edge_route_ip_restriction_module_get_request.md new file mode 100644 index 000000000..d5d69e132 --- /dev/null +++ b/docs/api/examples/_edge_route_ip_restriction_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazcWSYILeefUXhye0JRQGGqs/routes/edghtsrt_2otazZ3W9OJRvA8djdPz6gbN2QF/ip_restriction +``` diff --git a/docs/api/examples/_edge_route_ip_restriction_module_get_response.md b/docs/api/examples/_edge_route_ip_restriction_module_get_response.md new file mode 100644 index 000000000..5d497f653 --- /dev/null +++ b/docs/api/examples/_edge_route_ip_restriction_module_get_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otazYfkCuar9pDQrYdhjebo670", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazYfkCuar9pDQrYdhjebo670" + }, + { + "id": "ipp_2otazbcIH9dmA1n0v33xH4O2E9R", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazbcIH9dmA1n0v33xH4O2E9R" + } + ] +} +``` diff --git a/docs/api/examples/_edge_route_ip_restriction_module_replace_request.md b/docs/api/examples/_edge_route_ip_restriction_module_replace_request.md new file mode 100644 index 000000000..249fc0864 --- /dev/null +++ b/docs/api/examples/_edge_route_ip_restriction_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"ip_policy_ids":["ipp_2otazYfkCuar9pDQrYdhjebo670","ipp_2otazbcIH9dmA1n0v33xH4O2E9R"]}' \ +https://api.ngrok.com/edges/https/edghts_2otazcWSYILeefUXhye0JRQGGqs/routes/edghtsrt_2otazZ3W9OJRvA8djdPz6gbN2QF/ip_restriction +``` diff --git a/docs/api/examples/_edge_route_ip_restriction_module_replace_response.md b/docs/api/examples/_edge_route_ip_restriction_module_replace_response.md new file mode 100644 index 000000000..5d497f653 --- /dev/null +++ b/docs/api/examples/_edge_route_ip_restriction_module_replace_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otazYfkCuar9pDQrYdhjebo670", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazYfkCuar9pDQrYdhjebo670" + }, + { + "id": "ipp_2otazbcIH9dmA1n0v33xH4O2E9R", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazbcIH9dmA1n0v33xH4O2E9R" + } + ] +} +``` diff --git a/docs/api/examples/_edge_route_o_auth_module_delete_request.md b/docs/api/examples/_edge_route_o_auth_module_delete_request.md new file mode 100644 index 000000000..31985a122 --- /dev/null +++ b/docs/api/examples/_edge_route_o_auth_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazagRF2wKxmJpjMhexHnJZFK/routes/edghtsrt_2otazW0RKvtoFgQ7Msjt1AAj27j/oauth +``` diff --git a/docs/api/examples/_edge_route_o_auth_module_delete_response.md b/docs/api/examples/_edge_route_o_auth_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_o_auth_module_get_request.md b/docs/api/examples/_edge_route_o_auth_module_get_request.md new file mode 100644 index 000000000..c30d0b16f --- /dev/null +++ b/docs/api/examples/_edge_route_o_auth_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazagRF2wKxmJpjMhexHnJZFK/routes/edghtsrt_2otazW0RKvtoFgQ7Msjt1AAj27j/oauth +``` diff --git a/docs/api/examples/_edge_route_o_auth_module_get_response.md b/docs/api/examples/_edge_route_o_auth_module_get_response.md new file mode 100644 index 000000000..81c6cb6ea --- /dev/null +++ b/docs/api/examples/_edge_route_o_auth_module_get_response.md @@ -0,0 +1,34 @@ + + +#### Example Response + +```json +{ + "auth_check_interval": 0, + "cookie_prefix": "ngrok.", + "enabled": true, + "inactivity_timeout": 0, + "maximum_duration": 0, + "options_passthrough": false, + "provider": { + "amazon": null, + "facebook": null, + "github": null, + "gitlab": null, + "google": { + "client_id": "client-id", + "client_secret": "client-secret", + "email_addresses": ["alan@example.com"], + "email_domains": [], + "scopes": [ + "profile", + "email", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "linkedin": null, + "microsoft": null, + "twitch": null + } +} +``` diff --git a/docs/api/examples/_edge_route_o_auth_module_replace_request.md b/docs/api/examples/_edge_route_o_auth_module_replace_request.md new file mode 100644 index 000000000..2985420f5 --- /dev/null +++ b/docs/api/examples/_edge_route_o_auth_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"provider":{"google":{"client_id":"client-id","client_secret":"client-secret","email_addresses":["alan@example.com"],"scopes":["profile","email","https://www.googleapis.com/auth/userinfo.email"]}}}' \ +https://api.ngrok.com/edges/https/edghts_2otazagRF2wKxmJpjMhexHnJZFK/routes/edghtsrt_2otazW0RKvtoFgQ7Msjt1AAj27j/oauth +``` diff --git a/docs/api/examples/_edge_route_o_auth_module_replace_response.md b/docs/api/examples/_edge_route_o_auth_module_replace_response.md new file mode 100644 index 000000000..81c6cb6ea --- /dev/null +++ b/docs/api/examples/_edge_route_o_auth_module_replace_response.md @@ -0,0 +1,34 @@ + + +#### Example Response + +```json +{ + "auth_check_interval": 0, + "cookie_prefix": "ngrok.", + "enabled": true, + "inactivity_timeout": 0, + "maximum_duration": 0, + "options_passthrough": false, + "provider": { + "amazon": null, + "facebook": null, + "github": null, + "gitlab": null, + "google": { + "client_id": "client-id", + "client_secret": "client-secret", + "email_addresses": ["alan@example.com"], + "email_domains": [], + "scopes": [ + "profile", + "email", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "linkedin": null, + "microsoft": null, + "twitch": null + } +} +``` diff --git a/docs/api/examples/_edge_route_oidc_module_delete_request.md b/docs/api/examples/_edge_route_oidc_module_delete_request.md new file mode 100644 index 000000000..ef4795ca7 --- /dev/null +++ b/docs/api/examples/_edge_route_oidc_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazhfBrwCwznR5T7dLBQXFGkI/routes/edghtsrt_2otazkKJVtXu3LHK8IJwU2qGbgZ/oidc +``` diff --git a/docs/api/examples/_edge_route_oidc_module_delete_response.md b/docs/api/examples/_edge_route_oidc_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_oidc_module_get_request.md b/docs/api/examples/_edge_route_oidc_module_get_request.md new file mode 100644 index 000000000..b7fd1520a --- /dev/null +++ b/docs/api/examples/_edge_route_oidc_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazhfBrwCwznR5T7dLBQXFGkI/routes/edghtsrt_2otazkKJVtXu3LHK8IJwU2qGbgZ/oidc +``` diff --git a/docs/api/examples/_edge_route_oidc_module_get_response.md b/docs/api/examples/_edge_route_oidc_module_get_response.md new file mode 100644 index 000000000..4e160f567 --- /dev/null +++ b/docs/api/examples/_edge_route_oidc_module_get_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "client_id": "some-client-id", + "client_secret": "some-client-secret", + "cookie_prefix": "", + "enabled": true, + "inactivity_timeout": 0, + "issuer": "https://accounts.google.com", + "maximum_duration": 0, + "options_passthrough": false, + "scopes": ["profile"] +} +``` diff --git a/docs/api/examples/_edge_route_oidc_module_replace_request.md b/docs/api/examples/_edge_route_oidc_module_replace_request.md new file mode 100644 index 000000000..ee1ab9786 --- /dev/null +++ b/docs/api/examples/_edge_route_oidc_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"client_id":"some-client-id","client_secret":"some-client-secret","enabled":true,"issuer":"https://accounts.google.com","scopes":["profile"]}' \ +https://api.ngrok.com/edges/https/edghts_2otazhfBrwCwznR5T7dLBQXFGkI/routes/edghtsrt_2otazkKJVtXu3LHK8IJwU2qGbgZ/oidc +``` diff --git a/docs/api/examples/_edge_route_oidc_module_replace_response.md b/docs/api/examples/_edge_route_oidc_module_replace_response.md new file mode 100644 index 000000000..4e160f567 --- /dev/null +++ b/docs/api/examples/_edge_route_oidc_module_replace_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "client_id": "some-client-id", + "client_secret": "some-client-secret", + "cookie_prefix": "", + "enabled": true, + "inactivity_timeout": 0, + "issuer": "https://accounts.google.com", + "maximum_duration": 0, + "options_passthrough": false, + "scopes": ["profile"] +} +``` diff --git a/docs/api/examples/_edge_route_request_headers_module_delete_request.md b/docs/api/examples/_edge_route_request_headers_module_delete_request.md new file mode 100644 index 000000000..5ec842932 --- /dev/null +++ b/docs/api/examples/_edge_route_request_headers_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otaze3wvPWP8QP3AQg3n1y6T6H/routes/edghtsrt_2otaziJhRSqXFbhRsV9hWbR2Yy9/request_headers +``` diff --git a/docs/api/examples/_edge_route_request_headers_module_delete_response.md b/docs/api/examples/_edge_route_request_headers_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_request_headers_module_get_request.md b/docs/api/examples/_edge_route_request_headers_module_get_request.md new file mode 100644 index 000000000..b6285387d --- /dev/null +++ b/docs/api/examples/_edge_route_request_headers_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otaze3wvPWP8QP3AQg3n1y6T6H/routes/edghtsrt_2otaziJhRSqXFbhRsV9hWbR2Yy9/request_headers +``` diff --git a/docs/api/examples/_edge_route_request_headers_module_get_response.md b/docs/api/examples/_edge_route_request_headers_module_get_response.md new file mode 100644 index 000000000..03643279b --- /dev/null +++ b/docs/api/examples/_edge_route_request_headers_module_get_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "add": { + "x-frontend": "ngrok" + }, + "enabled": true, + "remove": ["cache-control"] +} +``` diff --git a/docs/api/examples/_edge_route_request_headers_module_replace_request.md b/docs/api/examples/_edge_route_request_headers_module_replace_request.md new file mode 100644 index 000000000..ddc0a0c68 --- /dev/null +++ b/docs/api/examples/_edge_route_request_headers_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"add":{"x-frontend":"ngrok"},"enabled":true,"remove":["cache-control"]}' \ +https://api.ngrok.com/edges/https/edghts_2otaze3wvPWP8QP3AQg3n1y6T6H/routes/edghtsrt_2otaziJhRSqXFbhRsV9hWbR2Yy9/request_headers +``` diff --git a/docs/api/examples/_edge_route_request_headers_module_replace_response.md b/docs/api/examples/_edge_route_request_headers_module_replace_response.md new file mode 100644 index 000000000..03643279b --- /dev/null +++ b/docs/api/examples/_edge_route_request_headers_module_replace_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "add": { + "x-frontend": "ngrok" + }, + "enabled": true, + "remove": ["cache-control"] +} +``` diff --git a/docs/api/examples/_edge_route_response_headers_module_delete_request.md b/docs/api/examples/_edge_route_response_headers_module_delete_request.md new file mode 100644 index 000000000..f40eec254 --- /dev/null +++ b/docs/api/examples/_edge_route_response_headers_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazkGFNu0wBgXLUwR0zZo2Imo/routes/edghtsrt_2otazh2VHp77c7EoDxZ2mxvm4jZ/response_headers +``` diff --git a/docs/api/examples/_edge_route_response_headers_module_delete_response.md b/docs/api/examples/_edge_route_response_headers_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_response_headers_module_get_request.md b/docs/api/examples/_edge_route_response_headers_module_get_request.md new file mode 100644 index 000000000..d1924ac66 --- /dev/null +++ b/docs/api/examples/_edge_route_response_headers_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazkGFNu0wBgXLUwR0zZo2Imo/routes/edghtsrt_2otazh2VHp77c7EoDxZ2mxvm4jZ/response_headers +``` diff --git a/docs/api/examples/_edge_route_response_headers_module_get_response.md b/docs/api/examples/_edge_route_response_headers_module_get_response.md new file mode 100644 index 000000000..9397e5e89 --- /dev/null +++ b/docs/api/examples/_edge_route_response_headers_module_get_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "add": { + "content-security-policy": "script-src 'self'", + "x-frame-options": "DENY" + }, + "enabled": true, + "remove": [] +} +``` diff --git a/docs/api/examples/_edge_route_response_headers_module_replace_request.md b/docs/api/examples/_edge_route_response_headers_module_replace_request.md new file mode 100644 index 000000000..ed1b37c63 --- /dev/null +++ b/docs/api/examples/_edge_route_response_headers_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"add":{"Content-Security-Policy":"script-src 'self'","X-Frame-Options":"DENY"},"enabled":true}' \ +https://api.ngrok.com/edges/https/edghts_2otazkGFNu0wBgXLUwR0zZo2Imo/routes/edghtsrt_2otazh2VHp77c7EoDxZ2mxvm4jZ/response_headers +``` diff --git a/docs/api/examples/_edge_route_response_headers_module_replace_response.md b/docs/api/examples/_edge_route_response_headers_module_replace_response.md new file mode 100644 index 000000000..9397e5e89 --- /dev/null +++ b/docs/api/examples/_edge_route_response_headers_module_replace_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "add": { + "content-security-policy": "script-src 'self'", + "x-frame-options": "DENY" + }, + "enabled": true, + "remove": [] +} +``` diff --git a/docs/api/examples/_edge_route_saml_module_delete_request.md b/docs/api/examples/_edge_route_saml_module_delete_request.md new file mode 100644 index 000000000..501a9a5fe --- /dev/null +++ b/docs/api/examples/_edge_route_saml_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazeUDGd1REtla611qxC4mANp/routes/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63/saml +``` diff --git a/docs/api/examples/_edge_route_saml_module_delete_response.md b/docs/api/examples/_edge_route_saml_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_saml_module_get_request.md b/docs/api/examples/_edge_route_saml_module_get_request.md new file mode 100644 index 000000000..09df0b30b --- /dev/null +++ b/docs/api/examples/_edge_route_saml_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazeUDGd1REtla611qxC4mANp/routes/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63/saml +``` diff --git a/docs/api/examples/_edge_route_saml_module_get_response.md b/docs/api/examples/_edge_route_saml_module_get_response.md new file mode 100644 index 000000000..a50600f55 --- /dev/null +++ b/docs/api/examples/_edge_route_saml_module_get_response.md @@ -0,0 +1,24 @@ + + +#### Example Response + +```json +{ + "allow_idp_initiated": true, + "assertion_consumer_service_url": "https://idp.local-ngrok.com/saml/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63/acs", + "authorized_groups": [], + "cookie_prefix": "", + "enabled": true, + "entity_id": "https://idp.local-ngrok.com/saml/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63", + "force_authn": false, + "idp_metadata": "\nurn:oasis:names:tc:SAML:2.0:nameid-format:transient\n", + "idp_metadata_url": "", + "inactivity_timeout": 0, + "maximum_duration": 0, + "metadata_url": "https://idp.local-ngrok.com/saml/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63", + "nameid_format": "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent", + "options_passthrough": false, + "request_signing_certificate_pem": "-----BEGIN CERTIFICATE-----\nMIIEBDCCAuygAwIBAgIRAOztd2CE3+DrEzi5B0VEpi4wDQYJKoZIhvcNAQELBQAw\ngaAxTjBMBgNVBAoMRWh0dHBzOi8vaWRwLmxvY2FsLW5ncm9rLmNvbS9zYW1sL2Vk\nZ2h0c3J0XzJvdGF6amNwZXlCQXJMdHd3ZGdLanNVT0o2MzFOMEwGA1UEAwxFaHR0\ncHM6Ly9pZHAubG9jYWwtbmdyb2suY29tL3NhbWwvZWRnaHRzcnRfMm90YXpqY3Bl\neUJBckx0d3dkZ0tqc1VPSjYzMCAXDTI0MTExNTE3MjYzMFoYDzIwNTkxMTA3MTcy\nNjMwWjCBoDFOMEwGA1UECgxFaHR0cHM6Ly9pZHAubG9jYWwtbmdyb2suY29tL3Nh\nbWwvZWRnaHRzcnRfMm90YXpqY3BleUJBckx0d3dkZ0tqc1VPSjYzMU4wTAYDVQQD\nDEVodHRwczovL2lkcC5sb2NhbC1uZ3Jvay5jb20vc2FtbC9lZGdodHNydF8yb3Rh\nempjcGV5QkFyTHR3d2RnS2pzVU9KNjMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw\nggEKAoIBAQC6nC/6u26y7jlHPtA53pKJ9C4acpOL93/Q9KShoqQggnfXRq5/Wo7g\n53Dqyhd9ZCT5RZawWlWiPQGveTUkdRBMkJAoYk2oPPjd7maOHBnw6PSAhrWEU/58\n0hNZ4DHwLVKgAaSTW0wEBSVIIiCWJ3FMjF6c5+VTJMH/QZ0CclIVlgglc/MSEU0I\nb2qiZDcKKdrwe+Ot+d+SAK/js2WEoyaHoqGkCsrnkzFnscmDwexIIwIALJhGrzo5\n1zv0w57iusSvTKeDmgPi+/vG8VIFZqGYN6HprenWve8lGhWA5gWOzVYjrOZ06KoI\nFTsLdMXO48FZtoIDfWNkEBzyB7HbhFNBAgMBAAGjNTAzMA4GA1UdDwEB/wQEAwIH\ngDATBgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEB\nCwUAA4IBAQBBxbLLwboaQMCNbu7pqT3rtZPX42SUJYbmbwQPj/RePHGfj2aNjLdX\nXBBOCDtPySL5vZgtlJpmzF+Ab1fEYwP2giA9BGr9YAQ198oKmCbrt1GDwFwKAR93\nek7qPlSnqJbfzzD6BOG3vTHF88TPPSbPnbDld5k9c7tpzJHfTEEae8/UE/I1ReW8\nQG+DSC3POYDfwPPR37eJ7K4DKgWrXOJU5432dpEQ6fX9iSdMuwR7KAqDxnNc3wr2\nq1dbMVCrytafqGZlRpzlpb8j3QNR5d3l8JTdzDZzI0Yskzn1TkedieBweuJJom2b\nF7++xyZyEW1tahbwe25adbmpZ+6FgE71\n-----END CERTIFICATE-----\n", + "single_logout_url": "https://idp.local-ngrok.com/saml/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63/slo" +} +``` diff --git a/docs/api/examples/_edge_route_saml_module_replace_request.md b/docs/api/examples/_edge_route_saml_module_replace_request.md new file mode 100644 index 000000000..d675446cc --- /dev/null +++ b/docs/api/examples/_edge_route_saml_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"idp_metadata":"\nurn:oasis:names:tc:SAML:2.0:nameid-format:transient\n"}' \ +https://api.ngrok.com/edges/https/edghts_2otazeUDGd1REtla611qxC4mANp/routes/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63/saml +``` diff --git a/docs/api/examples/_edge_route_saml_module_replace_response.md b/docs/api/examples/_edge_route_saml_module_replace_response.md new file mode 100644 index 000000000..a50600f55 --- /dev/null +++ b/docs/api/examples/_edge_route_saml_module_replace_response.md @@ -0,0 +1,24 @@ + + +#### Example Response + +```json +{ + "allow_idp_initiated": true, + "assertion_consumer_service_url": "https://idp.local-ngrok.com/saml/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63/acs", + "authorized_groups": [], + "cookie_prefix": "", + "enabled": true, + "entity_id": "https://idp.local-ngrok.com/saml/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63", + "force_authn": false, + "idp_metadata": "\nurn:oasis:names:tc:SAML:2.0:nameid-format:transient\n", + "idp_metadata_url": "", + "inactivity_timeout": 0, + "maximum_duration": 0, + "metadata_url": "https://idp.local-ngrok.com/saml/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63", + "nameid_format": "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent", + "options_passthrough": false, + "request_signing_certificate_pem": "-----BEGIN CERTIFICATE-----\nMIIEBDCCAuygAwIBAgIRAOztd2CE3+DrEzi5B0VEpi4wDQYJKoZIhvcNAQELBQAw\ngaAxTjBMBgNVBAoMRWh0dHBzOi8vaWRwLmxvY2FsLW5ncm9rLmNvbS9zYW1sL2Vk\nZ2h0c3J0XzJvdGF6amNwZXlCQXJMdHd3ZGdLanNVT0o2MzFOMEwGA1UEAwxFaHR0\ncHM6Ly9pZHAubG9jYWwtbmdyb2suY29tL3NhbWwvZWRnaHRzcnRfMm90YXpqY3Bl\neUJBckx0d3dkZ0tqc1VPSjYzMCAXDTI0MTExNTE3MjYzMFoYDzIwNTkxMTA3MTcy\nNjMwWjCBoDFOMEwGA1UECgxFaHR0cHM6Ly9pZHAubG9jYWwtbmdyb2suY29tL3Nh\nbWwvZWRnaHRzcnRfMm90YXpqY3BleUJBckx0d3dkZ0tqc1VPSjYzMU4wTAYDVQQD\nDEVodHRwczovL2lkcC5sb2NhbC1uZ3Jvay5jb20vc2FtbC9lZGdodHNydF8yb3Rh\nempjcGV5QkFyTHR3d2RnS2pzVU9KNjMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw\nggEKAoIBAQC6nC/6u26y7jlHPtA53pKJ9C4acpOL93/Q9KShoqQggnfXRq5/Wo7g\n53Dqyhd9ZCT5RZawWlWiPQGveTUkdRBMkJAoYk2oPPjd7maOHBnw6PSAhrWEU/58\n0hNZ4DHwLVKgAaSTW0wEBSVIIiCWJ3FMjF6c5+VTJMH/QZ0CclIVlgglc/MSEU0I\nb2qiZDcKKdrwe+Ot+d+SAK/js2WEoyaHoqGkCsrnkzFnscmDwexIIwIALJhGrzo5\n1zv0w57iusSvTKeDmgPi+/vG8VIFZqGYN6HprenWve8lGhWA5gWOzVYjrOZ06KoI\nFTsLdMXO48FZtoIDfWNkEBzyB7HbhFNBAgMBAAGjNTAzMA4GA1UdDwEB/wQEAwIH\ngDATBgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEB\nCwUAA4IBAQBBxbLLwboaQMCNbu7pqT3rtZPX42SUJYbmbwQPj/RePHGfj2aNjLdX\nXBBOCDtPySL5vZgtlJpmzF+Ab1fEYwP2giA9BGr9YAQ198oKmCbrt1GDwFwKAR93\nek7qPlSnqJbfzzD6BOG3vTHF88TPPSbPnbDld5k9c7tpzJHfTEEae8/UE/I1ReW8\nQG+DSC3POYDfwPPR37eJ7K4DKgWrXOJU5432dpEQ6fX9iSdMuwR7KAqDxnNc3wr2\nq1dbMVCrytafqGZlRpzlpb8j3QNR5d3l8JTdzDZzI0Yskzn1TkedieBweuJJom2b\nF7++xyZyEW1tahbwe25adbmpZ+6FgE71\n-----END CERTIFICATE-----\n", + "single_logout_url": "https://idp.local-ngrok.com/saml/edghtsrt_2otazjcpeyBArLtwwdgKjsUOJ63/slo" +} +``` diff --git a/docs/api/examples/_edge_route_traffic_policy_module_delete_request.md b/docs/api/examples/_edge_route_traffic_policy_module_delete_request.md new file mode 100644 index 000000000..5d1343429 --- /dev/null +++ b/docs/api/examples/_edge_route_traffic_policy_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazeaI9M0Z0Gp0dbnmmlsGQIA/routes/edghtsrt_2otazjvrLAi5OVLmSiATFA3G9DM/traffic_policy +``` diff --git a/docs/api/examples/_edge_route_traffic_policy_module_delete_response.md b/docs/api/examples/_edge_route_traffic_policy_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_traffic_policy_module_get_request.md b/docs/api/examples/_edge_route_traffic_policy_module_get_request.md new file mode 100644 index 000000000..39f3e0223 --- /dev/null +++ b/docs/api/examples/_edge_route_traffic_policy_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazeaI9M0Z0Gp0dbnmmlsGQIA/routes/edghtsrt_2otazjvrLAi5OVLmSiATFA3G9DM/traffic_policy +``` diff --git a/docs/api/examples/_edge_route_traffic_policy_module_get_response.md b/docs/api/examples/_edge_route_traffic_policy_module_get_response.md new file mode 100644 index 000000000..6e464e4ea --- /dev/null +++ b/docs/api/examples/_edge_route_traffic_policy_module_get_response.md @@ -0,0 +1,10 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "value": "{\n\t\"on_http_request\":[\n\t\t{\n\t\t\t\"name\":\"Rewrite /products API Calls\",\n\t\t\t\"expressions\":[\"req.url.path == '/products'\"],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"url-rewrite\",\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"from\": \"/products/?([.*]+)?\",\n\t\t\t\t\t\t\"to\": \"/products.php?query=$1\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"name\":\"Block POST Requests With Large Content Length From Specific Countries\",\n\t\t\t\"expressions\":[\n\t\t\t\t\"req.method == 'POST' && req.content_length > 10000\",\n\t\t\t\t\"conn.geo.country_code in ['BR', 'CN', 'CU', 'IR', 'NG', 'RO', 'RU', 'SD', 'SY', 'UA']\"\n\t\t\t],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"custom-response\",\n\t\t\t\t\t\"config\":{\n\t\t\t\t\t\t\"status_code\":401,\n\t\t\t\t\t\t\"headers\":{\n\t\t\t\t\t\t\t\"content-type\":\"text/plain\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"content\":\"access denied\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"name\":\"Block AI Crawler Bots\",\n\t\t\t\"expressions\":[\"'ChatGPT' in req.headers['user-agent'] || 'GPTBot' in req.headers['user-agent']\"],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"deny\",\n\t\t\t\t\t\"config\":{\n\t\t\t\t\t\t\"status_code\":400\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t],\n\t\"on_http_response\":[\n\t\t{\n\t\t\t\"name\":\"Brotli Compress Responses\",\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"compress-response\",\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"algorithms\":[\"br\"]\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n}" +} +``` diff --git a/docs/api/examples/_edge_route_traffic_policy_module_replace_request.md b/docs/api/examples/_edge_route_traffic_policy_module_replace_request.md new file mode 100644 index 000000000..49428903b --- /dev/null +++ b/docs/api/examples/_edge_route_traffic_policy_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"value":"{\n\t\"on_http_request\":[\n\t\t{\n\t\t\t\"name\":\"Rewrite /products API Calls\",\n\t\t\t\"expressions\":[\"req.url.path == '/products'\"],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"url-rewrite\",\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"from\": \"/products/?([.*]+)?\",\n\t\t\t\t\t\t\"to\": \"/products.php?query=$1\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"name\":\"Block POST Requests With Large Content Length From Specific Countries\",\n\t\t\t\"expressions\":[\n\t\t\t\t\"req.method == 'POST' && req.content_length > 10000\",\n\t\t\t\t\"conn.geo.country_code in ['BR', 'CN', 'CU', 'IR', 'NG', 'RO', 'RU', 'SD', 'SY', 'UA']\"\n\t\t\t],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"custom-response\",\n\t\t\t\t\t\"config\":{\n\t\t\t\t\t\t\"status_code\":401,\n\t\t\t\t\t\t\"headers\":{\n\t\t\t\t\t\t\t\"content-type\":\"text/plain\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"content\":\"access denied\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"name\":\"Block AI Crawler Bots\",\n\t\t\t\"expressions\":[\"'ChatGPT' in req.headers['user-agent'] || 'GPTBot' in req.headers['user-agent']\"],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"deny\",\n\t\t\t\t\t\"config\":{\n\t\t\t\t\t\t\"status_code\":400\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t],\n\t\"on_http_response\":[\n\t\t{\n\t\t\t\"name\":\"Brotli Compress Responses\",\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"compress-response\",\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"algorithms\":[\"br\"]\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n}"}' \ +https://api.ngrok.com/edges/https/edghts_2otazeaI9M0Z0Gp0dbnmmlsGQIA/routes/edghtsrt_2otazjvrLAi5OVLmSiATFA3G9DM/traffic_policy +``` diff --git a/docs/api/examples/_edge_route_traffic_policy_module_replace_response.md b/docs/api/examples/_edge_route_traffic_policy_module_replace_response.md new file mode 100644 index 000000000..6e464e4ea --- /dev/null +++ b/docs/api/examples/_edge_route_traffic_policy_module_replace_response.md @@ -0,0 +1,10 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "value": "{\n\t\"on_http_request\":[\n\t\t{\n\t\t\t\"name\":\"Rewrite /products API Calls\",\n\t\t\t\"expressions\":[\"req.url.path == '/products'\"],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"url-rewrite\",\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"from\": \"/products/?([.*]+)?\",\n\t\t\t\t\t\t\"to\": \"/products.php?query=$1\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"name\":\"Block POST Requests With Large Content Length From Specific Countries\",\n\t\t\t\"expressions\":[\n\t\t\t\t\"req.method == 'POST' && req.content_length > 10000\",\n\t\t\t\t\"conn.geo.country_code in ['BR', 'CN', 'CU', 'IR', 'NG', 'RO', 'RU', 'SD', 'SY', 'UA']\"\n\t\t\t],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"custom-response\",\n\t\t\t\t\t\"config\":{\n\t\t\t\t\t\t\"status_code\":401,\n\t\t\t\t\t\t\"headers\":{\n\t\t\t\t\t\t\t\"content-type\":\"text/plain\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"content\":\"access denied\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"name\":\"Block AI Crawler Bots\",\n\t\t\t\"expressions\":[\"'ChatGPT' in req.headers['user-agent'] || 'GPTBot' in req.headers['user-agent']\"],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"deny\",\n\t\t\t\t\t\"config\":{\n\t\t\t\t\t\t\"status_code\":400\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t],\n\t\"on_http_response\":[\n\t\t{\n\t\t\t\"name\":\"Brotli Compress Responses\",\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"compress-response\",\n\t\t\t\t\t\"config\": {\n\t\t\t\t\t\t\"algorithms\":[\"br\"]\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n}" +} +``` diff --git a/docs/api/examples/_edge_route_user_agent_filter_module_delete_request.md b/docs/api/examples/_edge_route_user_agent_filter_module_delete_request.md new file mode 100644 index 000000000..401042bae --- /dev/null +++ b/docs/api/examples/_edge_route_user_agent_filter_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazlGK3UktgLVRaxeE7lYLXqr/routes/edghtsrt_2otazq47m9HL1xRC6M3SSgSDlac/user_agent_filter +``` diff --git a/docs/api/examples/_edge_route_user_agent_filter_module_delete_response.md b/docs/api/examples/_edge_route_user_agent_filter_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_user_agent_filter_module_get_request.md b/docs/api/examples/_edge_route_user_agent_filter_module_get_request.md new file mode 100644 index 000000000..b3a32a24f --- /dev/null +++ b/docs/api/examples/_edge_route_user_agent_filter_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazlGK3UktgLVRaxeE7lYLXqr/routes/edghtsrt_2otazq47m9HL1xRC6M3SSgSDlac/user_agent_filter +``` diff --git a/docs/api/examples/_edge_route_user_agent_filter_module_get_response.md b/docs/api/examples/_edge_route_user_agent_filter_module_get_response.md new file mode 100644 index 000000000..49a0de6ed --- /dev/null +++ b/docs/api/examples/_edge_route_user_agent_filter_module_get_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "allow": ["(Pingdom\\.com_bot_version_)(\\d+)\\.(\\d+)"], + "deny": ["(made_up_bot)/(\\d+)\\.(\\d+)"], + "enabled": true +} +``` diff --git a/docs/api/examples/_edge_route_user_agent_filter_module_replace_request.md b/docs/api/examples/_edge_route_user_agent_filter_module_replace_request.md new file mode 100644 index 000000000..bfd720b33 --- /dev/null +++ b/docs/api/examples/_edge_route_user_agent_filter_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"allow":["(Pingdom\\.com_bot_version_)(\\d+)\\.(\\d+)"],"deny":["(made_up_bot)/(\\d+)\\.(\\d+)"],"enabled":true}' \ +https://api.ngrok.com/edges/https/edghts_2otazlGK3UktgLVRaxeE7lYLXqr/routes/edghtsrt_2otazq47m9HL1xRC6M3SSgSDlac/user_agent_filter +``` diff --git a/docs/api/examples/_edge_route_user_agent_filter_module_replace_response.md b/docs/api/examples/_edge_route_user_agent_filter_module_replace_response.md new file mode 100644 index 000000000..49a0de6ed --- /dev/null +++ b/docs/api/examples/_edge_route_user_agent_filter_module_replace_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "allow": ["(Pingdom\\.com_bot_version_)(\\d+)\\.(\\d+)"], + "deny": ["(made_up_bot)/(\\d+)\\.(\\d+)"], + "enabled": true +} +``` diff --git a/docs/api/examples/_edge_route_webhook_verification_module_delete_request.md b/docs/api/examples/_edge_route_webhook_verification_module_delete_request.md new file mode 100644 index 000000000..6ff4ea253 --- /dev/null +++ b/docs/api/examples/_edge_route_webhook_verification_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazqv6EHtQMmXye8xPjlvioBA/routes/edghtsrt_2otazoZQoWrdgNYeftw5e5CBYiU/webhook_verification +``` diff --git a/docs/api/examples/_edge_route_webhook_verification_module_delete_response.md b/docs/api/examples/_edge_route_webhook_verification_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_webhook_verification_module_get_request.md b/docs/api/examples/_edge_route_webhook_verification_module_get_request.md new file mode 100644 index 000000000..d07113458 --- /dev/null +++ b/docs/api/examples/_edge_route_webhook_verification_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazqv6EHtQMmXye8xPjlvioBA/routes/edghtsrt_2otazoZQoWrdgNYeftw5e5CBYiU/webhook_verification +``` diff --git a/docs/api/examples/_edge_route_webhook_verification_module_get_response.md b/docs/api/examples/_edge_route_webhook_verification_module_get_response.md new file mode 100644 index 000000000..999761990 --- /dev/null +++ b/docs/api/examples/_edge_route_webhook_verification_module_get_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "provider": "TWILIO", + "secret": "secret_token" +} +``` diff --git a/docs/api/examples/_edge_route_webhook_verification_module_replace_request.md b/docs/api/examples/_edge_route_webhook_verification_module_replace_request.md new file mode 100644 index 000000000..bb011fa5b --- /dev/null +++ b/docs/api/examples/_edge_route_webhook_verification_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"provider":"TWILIO","secret":"secret_token"}' \ +https://api.ngrok.com/edges/https/edghts_2otazqv6EHtQMmXye8xPjlvioBA/routes/edghtsrt_2otazoZQoWrdgNYeftw5e5CBYiU/webhook_verification +``` diff --git a/docs/api/examples/_edge_route_webhook_verification_module_replace_response.md b/docs/api/examples/_edge_route_webhook_verification_module_replace_response.md new file mode 100644 index 000000000..999761990 --- /dev/null +++ b/docs/api/examples/_edge_route_webhook_verification_module_replace_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "provider": "TWILIO", + "secret": "secret_token" +} +``` diff --git a/docs/api/examples/_edge_route_websocket_tcp_converter_module_delete_request.md b/docs/api/examples/_edge_route_websocket_tcp_converter_module_delete_request.md new file mode 100644 index 000000000..20cc01ae3 --- /dev/null +++ b/docs/api/examples/_edge_route_websocket_tcp_converter_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazmoRD4ELBxNDxfRH5aXXne1/routes/edghtsrt_2otaznBAx4VwzYDiDSZLoeJp2tD/websocket_tcp_converter +``` diff --git a/docs/api/examples/_edge_route_websocket_tcp_converter_module_delete_response.md b/docs/api/examples/_edge_route_websocket_tcp_converter_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edge_route_websocket_tcp_converter_module_get_request.md b/docs/api/examples/_edge_route_websocket_tcp_converter_module_get_request.md new file mode 100644 index 000000000..80275c29a --- /dev/null +++ b/docs/api/examples/_edge_route_websocket_tcp_converter_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazmoRD4ELBxNDxfRH5aXXne1/routes/edghtsrt_2otaznBAx4VwzYDiDSZLoeJp2tD/websocket_tcp_converter +``` diff --git a/docs/api/examples/_edge_route_websocket_tcp_converter_module_get_response.md b/docs/api/examples/_edge_route_websocket_tcp_converter_module_get_response.md new file mode 100644 index 000000000..fdfe95fc3 --- /dev/null +++ b/docs/api/examples/_edge_route_websocket_tcp_converter_module_get_response.md @@ -0,0 +1,9 @@ + + +#### Example Response + +```json +{ + "enabled": true +} +``` diff --git a/docs/api/examples/_edge_route_websocket_tcp_converter_module_replace_request.md b/docs/api/examples/_edge_route_websocket_tcp_converter_module_replace_request.md new file mode 100644 index 000000000..cffbaada5 --- /dev/null +++ b/docs/api/examples/_edge_route_websocket_tcp_converter_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true}' \ +https://api.ngrok.com/edges/https/edghts_2otazmoRD4ELBxNDxfRH5aXXne1/routes/edghtsrt_2otaznBAx4VwzYDiDSZLoeJp2tD/websocket_tcp_converter +``` diff --git a/docs/api/examples/_edge_route_websocket_tcp_converter_module_replace_response.md b/docs/api/examples/_edge_route_websocket_tcp_converter_module_replace_response.md new file mode 100644 index 000000000..fdfe95fc3 --- /dev/null +++ b/docs/api/examples/_edge_route_websocket_tcp_converter_module_replace_response.md @@ -0,0 +1,9 @@ + + +#### Example Response + +```json +{ + "enabled": true +} +``` diff --git a/docs/api/examples/_edges_https_create_request.md b/docs/api/examples/_edges_https_create_request.md new file mode 100644 index 000000000..1ea100ba0 --- /dev/null +++ b/docs/api/examples/_edges_https_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"acme https edge","hostports":["example.com:443"],"metadata":"{\"environment\": \"staging\"}"}' \ +https://api.ngrok.com/edges/https +``` diff --git a/docs/api/examples/_edges_https_create_response.md b/docs/api/examples/_edges_https_create_response.md new file mode 100644 index 000000000..498ca8ba9 --- /dev/null +++ b/docs/api/examples/_edges_https_create_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:27Z", + "description": "acme https edge", + "hostports": ["example.com:443"], + "id": "edghts_2otazPpjJs9lnyY6Sj25qKEQMSO", + "metadata": "{\"environment\": \"staging\"}", + "mutual_tls": null, + "routes": [], + "tls_termination": null, + "uri": "https://api.ngrok.com/edges/https/edghts_2otazPpjJs9lnyY6Sj25qKEQMSO" +} +``` diff --git a/docs/api/examples/_edges_https_delete_request.md b/docs/api/examples/_edges_https_delete_request.md new file mode 100644 index 000000000..faa81ecaf --- /dev/null +++ b/docs/api/examples/_edges_https_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazPpjJs9lnyY6Sj25qKEQMSO +``` diff --git a/docs/api/examples/_edges_https_delete_response.md b/docs/api/examples/_edges_https_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edges_https_get_request.md b/docs/api/examples/_edges_https_get_request.md new file mode 100644 index 000000000..f1375d2b9 --- /dev/null +++ b/docs/api/examples/_edges_https_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazPpjJs9lnyY6Sj25qKEQMSO +``` diff --git a/docs/api/examples/_edges_https_get_response.md b/docs/api/examples/_edges_https_get_response.md new file mode 100644 index 000000000..498ca8ba9 --- /dev/null +++ b/docs/api/examples/_edges_https_get_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:27Z", + "description": "acme https edge", + "hostports": ["example.com:443"], + "id": "edghts_2otazPpjJs9lnyY6Sj25qKEQMSO", + "metadata": "{\"environment\": \"staging\"}", + "mutual_tls": null, + "routes": [], + "tls_termination": null, + "uri": "https://api.ngrok.com/edges/https/edghts_2otazPpjJs9lnyY6Sj25qKEQMSO" +} +``` diff --git a/docs/api/examples/_edges_https_list_request.md b/docs/api/examples/_edges_https_list_request.md new file mode 100644 index 000000000..661521639 --- /dev/null +++ b/docs/api/examples/_edges_https_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https +``` diff --git a/docs/api/examples/_edges_https_list_response.md b/docs/api/examples/_edges_https_list_response.md new file mode 100644 index 000000000..258a97f0e --- /dev/null +++ b/docs/api/examples/_edges_https_list_response.md @@ -0,0 +1,23 @@ + + +#### Example Response + +```json +{ + "https_edges": [ + { + "created_at": "2024-11-15T17:26:27Z", + "description": "acme https edge", + "hostports": ["example.com:443"], + "id": "edghts_2otazPpjJs9lnyY6Sj25qKEQMSO", + "metadata": "{\"environment\": \"staging\"}", + "mutual_tls": null, + "routes": [], + "tls_termination": null, + "uri": "https://api.ngrok.com/edges/https/edghts_2otazPpjJs9lnyY6Sj25qKEQMSO" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/edges/https" +} +``` diff --git a/docs/api/examples/_edges_https_routes_create_request.md b/docs/api/examples/_edges_https_routes_create_request.md new file mode 100644 index 000000000..49206c7ca --- /dev/null +++ b/docs/api/examples/_edges_https_routes_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"acme edge route","match":"/","match_type":"path_prefix","metadata":"{\"environment\": \"staging\"}"}' \ +https://api.ngrok.com/edges/https/edghts_2otazTM9nR88Ngsm0ruhEPiMWn1/routes +``` diff --git a/docs/api/examples/_edges_https_routes_create_response.md b/docs/api/examples/_edges_https_routes_create_response.md new file mode 100644 index 000000000..39c98a150 --- /dev/null +++ b/docs/api/examples/_edges_https_routes_create_response.md @@ -0,0 +1,30 @@ + + +#### Example Response + +```json +{ + "backend": null, + "circuit_breaker": null, + "compression": null, + "created_at": "2024-11-15T17:26:27Z", + "description": "acme edge route", + "edge_id": "edghts_2otazTM9nR88Ngsm0ruhEPiMWn1", + "id": "edghtsrt_2otazP4FLVn2U22aXC2m4J2VShj", + "ip_restriction": null, + "match": "/", + "match_type": "path_prefix", + "metadata": "{\"environment\": \"staging\"}", + "oauth": null, + "oidc": null, + "policy": null, + "request_headers": null, + "response_headers": null, + "saml": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/https/edghts_2otazTM9nR88Ngsm0ruhEPiMWn1/routes/edghtsrt_2otazP4FLVn2U22aXC2m4J2VShj", + "user_agent_filter": null, + "webhook_verification": null, + "websocket_tcp_converter": null +} +``` diff --git a/docs/api/examples/_edges_https_routes_delete_request.md b/docs/api/examples/_edges_https_routes_delete_request.md new file mode 100644 index 000000000..cf5ec0989 --- /dev/null +++ b/docs/api/examples/_edges_https_routes_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazTM9nR88Ngsm0ruhEPiMWn1/routes/edghtsrt_2otazP4FLVn2U22aXC2m4J2VShj +``` diff --git a/docs/api/examples/_edges_https_routes_delete_response.md b/docs/api/examples/_edges_https_routes_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edges_https_routes_get_request.md b/docs/api/examples/_edges_https_routes_get_request.md new file mode 100644 index 000000000..69ab13920 --- /dev/null +++ b/docs/api/examples/_edges_https_routes_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazTM9nR88Ngsm0ruhEPiMWn1/routes/edghtsrt_2otazP4FLVn2U22aXC2m4J2VShj +``` diff --git a/docs/api/examples/_edges_https_routes_get_response.md b/docs/api/examples/_edges_https_routes_get_response.md new file mode 100644 index 000000000..39c98a150 --- /dev/null +++ b/docs/api/examples/_edges_https_routes_get_response.md @@ -0,0 +1,30 @@ + + +#### Example Response + +```json +{ + "backend": null, + "circuit_breaker": null, + "compression": null, + "created_at": "2024-11-15T17:26:27Z", + "description": "acme edge route", + "edge_id": "edghts_2otazTM9nR88Ngsm0ruhEPiMWn1", + "id": "edghtsrt_2otazP4FLVn2U22aXC2m4J2VShj", + "ip_restriction": null, + "match": "/", + "match_type": "path_prefix", + "metadata": "{\"environment\": \"staging\"}", + "oauth": null, + "oidc": null, + "policy": null, + "request_headers": null, + "response_headers": null, + "saml": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/https/edghts_2otazTM9nR88Ngsm0ruhEPiMWn1/routes/edghtsrt_2otazP4FLVn2U22aXC2m4J2VShj", + "user_agent_filter": null, + "webhook_verification": null, + "websocket_tcp_converter": null +} +``` diff --git a/docs/api/examples/_edges_https_routes_update_request.md b/docs/api/examples/_edges_https_routes_update_request.md new file mode 100644 index 000000000..5515e454d --- /dev/null +++ b/docs/api/examples/_edges_https_routes_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"environment\": \"production\"}"}' \ +https://api.ngrok.com/edges/https/edghts_2otazTM9nR88Ngsm0ruhEPiMWn1/routes/edghtsrt_2otazP4FLVn2U22aXC2m4J2VShj +``` diff --git a/docs/api/examples/_edges_https_routes_update_response.md b/docs/api/examples/_edges_https_routes_update_response.md new file mode 100644 index 000000000..83ed90e44 --- /dev/null +++ b/docs/api/examples/_edges_https_routes_update_response.md @@ -0,0 +1,30 @@ + + +#### Example Response + +```json +{ + "backend": null, + "circuit_breaker": null, + "compression": null, + "created_at": "2024-11-15T17:26:27Z", + "description": "acme edge route", + "edge_id": "edghts_2otazTM9nR88Ngsm0ruhEPiMWn1", + "id": "edghtsrt_2otazP4FLVn2U22aXC2m4J2VShj", + "ip_restriction": null, + "match": "/", + "match_type": "path_prefix", + "metadata": "{\"environment\": \"production\"}", + "oauth": null, + "oidc": null, + "policy": null, + "request_headers": null, + "response_headers": null, + "saml": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/https/edghts_2otazTM9nR88Ngsm0ruhEPiMWn1/routes/edghtsrt_2otazP4FLVn2U22aXC2m4J2VShj", + "user_agent_filter": null, + "webhook_verification": null, + "websocket_tcp_converter": null +} +``` diff --git a/docs/api/examples/_edges_https_update_request.md b/docs/api/examples/_edges_https_update_request.md new file mode 100644 index 000000000..7244d1190 --- /dev/null +++ b/docs/api/examples/_edges_https_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"environment\": \"production\"}"}' \ +https://api.ngrok.com/edges/https/edghts_2otazPpjJs9lnyY6Sj25qKEQMSO +``` diff --git a/docs/api/examples/_edges_https_update_response.md b/docs/api/examples/_edges_https_update_response.md new file mode 100644 index 000000000..e73048b07 --- /dev/null +++ b/docs/api/examples/_edges_https_update_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:27Z", + "description": "acme https edge", + "hostports": ["example.com:443"], + "id": "edghts_2otazPpjJs9lnyY6Sj25qKEQMSO", + "metadata": "{\"environment\": \"production\"}", + "mutual_tls": null, + "routes": [], + "tls_termination": null, + "uri": "https://api.ngrok.com/edges/https/edghts_2otazPpjJs9lnyY6Sj25qKEQMSO" +} +``` diff --git a/docs/api/examples/_edges_tcp_create_request.md b/docs/api/examples/_edges_tcp_create_request.md new file mode 100644 index 000000000..4b4c3acc5 --- /dev/null +++ b/docs/api/examples/_edges_tcp_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"acme tcp edge","metadata":"{\"environment\": \"staging\"}"}' \ +https://api.ngrok.com/edges/tcp +``` diff --git a/docs/api/examples/_edges_tcp_create_response.md b/docs/api/examples/_edges_tcp_create_response.md new file mode 100644 index 000000000..fe46a7eb2 --- /dev/null +++ b/docs/api/examples/_edges_tcp_create_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "backend": null, + "created_at": "2024-11-15T17:26:30Z", + "description": "acme tcp edge", + "hostports": null, + "id": "edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl", + "ip_restriction": null, + "metadata": "{\"environment\": \"staging\"}", + "policy": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/tcp/edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl" +} +``` diff --git a/docs/api/examples/_edges_tcp_delete_request.md b/docs/api/examples/_edges_tcp_delete_request.md new file mode 100644 index 000000000..2b1625a2f --- /dev/null +++ b/docs/api/examples/_edges_tcp_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tcp/edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl +``` diff --git a/docs/api/examples/_edges_tcp_delete_response.md b/docs/api/examples/_edges_tcp_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edges_tcp_get_request.md b/docs/api/examples/_edges_tcp_get_request.md new file mode 100644 index 000000000..73dc6eadb --- /dev/null +++ b/docs/api/examples/_edges_tcp_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tcp/edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl +``` diff --git a/docs/api/examples/_edges_tcp_get_response.md b/docs/api/examples/_edges_tcp_get_response.md new file mode 100644 index 000000000..fe46a7eb2 --- /dev/null +++ b/docs/api/examples/_edges_tcp_get_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "backend": null, + "created_at": "2024-11-15T17:26:30Z", + "description": "acme tcp edge", + "hostports": null, + "id": "edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl", + "ip_restriction": null, + "metadata": "{\"environment\": \"staging\"}", + "policy": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/tcp/edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl" +} +``` diff --git a/docs/api/examples/_edges_tcp_list_request.md b/docs/api/examples/_edges_tcp_list_request.md new file mode 100644 index 000000000..446503b11 --- /dev/null +++ b/docs/api/examples/_edges_tcp_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tcp +``` diff --git a/docs/api/examples/_edges_tcp_list_response.md b/docs/api/examples/_edges_tcp_list_response.md new file mode 100644 index 000000000..0bc9d0e8a --- /dev/null +++ b/docs/api/examples/_edges_tcp_list_response.md @@ -0,0 +1,24 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "tcp_edges": [ + { + "backend": null, + "created_at": "2024-11-15T17:26:30Z", + "description": "acme tcp edge", + "hostports": null, + "id": "edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl", + "ip_restriction": null, + "metadata": "{\"environment\": \"staging\"}", + "policy": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/tcp/edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl" + } + ], + "uri": "https://api.ngrok.com/edges/tcp" +} +``` diff --git a/docs/api/examples/_edges_tcp_update_request.md b/docs/api/examples/_edges_tcp_update_request.md new file mode 100644 index 000000000..b83dde559 --- /dev/null +++ b/docs/api/examples/_edges_tcp_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"environment\": \"production\"}"}' \ +https://api.ngrok.com/edges/tcp/edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl +``` diff --git a/docs/api/examples/_edges_tcp_update_response.md b/docs/api/examples/_edges_tcp_update_response.md new file mode 100644 index 000000000..e84775453 --- /dev/null +++ b/docs/api/examples/_edges_tcp_update_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "backend": null, + "created_at": "2024-11-15T17:26:30Z", + "description": "acme tcp edge", + "hostports": null, + "id": "edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl", + "ip_restriction": null, + "metadata": "{\"environment\": \"production\"}", + "policy": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/tcp/edgtcp_2otazq9JKkYruIfuzzsYWuUk9bl" +} +``` diff --git a/docs/api/examples/_edges_tls_create_request.md b/docs/api/examples/_edges_tls_create_request.md new file mode 100644 index 000000000..13acfcdda --- /dev/null +++ b/docs/api/examples/_edges_tls_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"acme tls edge","hostports":["example.com:443"],"metadata":"{\"environment\": \"staging\"}"}' \ +https://api.ngrok.com/edges/tls +``` diff --git a/docs/api/examples/_edges_tls_create_response.md b/docs/api/examples/_edges_tls_create_response.md new file mode 100644 index 000000000..d3cd41423 --- /dev/null +++ b/docs/api/examples/_edges_tls_create_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "backend": null, + "created_at": "2024-11-15T17:26:30Z", + "description": "acme tls edge", + "hostports": ["example.com:443"], + "id": "edgtls_2otazqgYbucWhye87UkOjpmhLmF", + "ip_restriction": null, + "metadata": "{\"environment\": \"staging\"}", + "mutual_tls": null, + "policy": null, + "tls_termination": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/tls/edgtls_2otazqgYbucWhye87UkOjpmhLmF" +} +``` diff --git a/docs/api/examples/_edges_tls_delete_request.md b/docs/api/examples/_edges_tls_delete_request.md new file mode 100644 index 000000000..93339bc48 --- /dev/null +++ b/docs/api/examples/_edges_tls_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otazqgYbucWhye87UkOjpmhLmF +``` diff --git a/docs/api/examples/_edges_tls_delete_response.md b/docs/api/examples/_edges_tls_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_edges_tls_get_request.md b/docs/api/examples/_edges_tls_get_request.md new file mode 100644 index 000000000..cfa2fc370 --- /dev/null +++ b/docs/api/examples/_edges_tls_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otazqgYbucWhye87UkOjpmhLmF +``` diff --git a/docs/api/examples/_edges_tls_get_response.md b/docs/api/examples/_edges_tls_get_response.md new file mode 100644 index 000000000..d3cd41423 --- /dev/null +++ b/docs/api/examples/_edges_tls_get_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "backend": null, + "created_at": "2024-11-15T17:26:30Z", + "description": "acme tls edge", + "hostports": ["example.com:443"], + "id": "edgtls_2otazqgYbucWhye87UkOjpmhLmF", + "ip_restriction": null, + "metadata": "{\"environment\": \"staging\"}", + "mutual_tls": null, + "policy": null, + "tls_termination": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/tls/edgtls_2otazqgYbucWhye87UkOjpmhLmF" +} +``` diff --git a/docs/api/examples/_edges_tls_list_request.md b/docs/api/examples/_edges_tls_list_request.md new file mode 100644 index 000000000..da1d207e3 --- /dev/null +++ b/docs/api/examples/_edges_tls_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls +``` diff --git a/docs/api/examples/_edges_tls_list_response.md b/docs/api/examples/_edges_tls_list_response.md new file mode 100644 index 000000000..e441e3d78 --- /dev/null +++ b/docs/api/examples/_edges_tls_list_response.md @@ -0,0 +1,45 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "tls_edges": [ + { + "backend": null, + "created_at": "2024-11-15T17:26:30Z", + "description": "acme tls edge", + "hostports": ["example.com:443"], + "id": "edgtls_2otazqgYbucWhye87UkOjpmhLmF", + "ip_restriction": null, + "metadata": "{\"environment\": \"staging\"}", + "mutual_tls": null, + "policy": null, + "tls_termination": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/tls/edgtls_2otazqgYbucWhye87UkOjpmhLmF" + }, + { + "backend": { + "backend": { + "id": "bkdhr_2otayQoKLN6hs9P1uvflQ4iBfdE", + "uri": "https://api.ngrok.com/backends/http_response/bkdhr_2otayQoKLN6hs9P1uvflQ4iBfdE" + }, + "enabled": true + }, + "created_at": "2024-11-15T17:26:19Z", + "description": "acme tls edge", + "hostports": ["endpoint-example2.com:443"], + "id": "edgtls_2otayO9m98zAAYh05BrJj7WbfhZ", + "ip_restriction": null, + "mutual_tls": null, + "policy": null, + "tls_termination": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/tls/edgtls_2otayO9m98zAAYh05BrJj7WbfhZ" + } + ], + "uri": "https://api.ngrok.com/edges/tls" +} +``` diff --git a/docs/api/examples/_edges_tls_update_request.md b/docs/api/examples/_edges_tls_update_request.md new file mode 100644 index 000000000..aac2b09bd --- /dev/null +++ b/docs/api/examples/_edges_tls_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"environment\": \"production\"}"}' \ +https://api.ngrok.com/edges/tls/edgtls_2otazqgYbucWhye87UkOjpmhLmF +``` diff --git a/docs/api/examples/_edges_tls_update_response.md b/docs/api/examples/_edges_tls_update_response.md new file mode 100644 index 000000000..e29232bea --- /dev/null +++ b/docs/api/examples/_edges_tls_update_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "backend": null, + "created_at": "2024-11-15T17:26:30Z", + "description": "acme tls edge", + "hostports": ["example.com:443"], + "id": "edgtls_2otazqgYbucWhye87UkOjpmhLmF", + "ip_restriction": null, + "metadata": "{\"environment\": \"production\"}", + "mutual_tls": null, + "policy": null, + "tls_termination": null, + "traffic_policy": null, + "uri": "https://api.ngrok.com/edges/tls/edgtls_2otazqgYbucWhye87UkOjpmhLmF" +} +``` diff --git a/docs/api/examples/_endpoint_basic_auth_module_delete_request.md b/docs/api/examples/_endpoint_basic_auth_module_delete_request.md new file mode 100644 index 000000000..91b5a49ff --- /dev/null +++ b/docs/api/examples/_endpoint_basic_auth_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/basic_auth +``` diff --git a/docs/api/examples/_endpoint_basic_auth_module_delete_response.md b/docs/api/examples/_endpoint_basic_auth_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_basic_auth_module_get_request.md b/docs/api/examples/_endpoint_basic_auth_module_get_request.md new file mode 100644 index 000000000..03c8df664 --- /dev/null +++ b/docs/api/examples/_endpoint_basic_auth_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/basic_auth +``` diff --git a/docs/api/examples/_endpoint_basic_auth_module_get_response.md b/docs/api/examples/_endpoint_basic_auth_module_get_response.md new file mode 100644 index 000000000..4324c02dc --- /dev/null +++ b/docs/api/examples/_endpoint_basic_auth_module_get_response.md @@ -0,0 +1,12 @@ + + +#### Example Response + +```json +{ + "allow_options": true, + "auth_provider_id": "agent", + "enabled": true, + "realm": "" +} +``` diff --git a/docs/api/examples/_endpoint_basic_auth_module_replace_request.md b/docs/api/examples/_endpoint_basic_auth_module_replace_request.md new file mode 100644 index 000000000..531f28ac1 --- /dev/null +++ b/docs/api/examples/_endpoint_basic_auth_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"allow_options":true,"auth_provider_id":"agent"}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/basic_auth +``` diff --git a/docs/api/examples/_endpoint_basic_auth_module_replace_response.md b/docs/api/examples/_endpoint_basic_auth_module_replace_response.md new file mode 100644 index 000000000..4324c02dc --- /dev/null +++ b/docs/api/examples/_endpoint_basic_auth_module_replace_response.md @@ -0,0 +1,12 @@ + + +#### Example Response + +```json +{ + "allow_options": true, + "auth_provider_id": "agent", + "enabled": true, + "realm": "" +} +``` diff --git a/docs/api/examples/_endpoint_circuit_breaker_module_delete_request.md b/docs/api/examples/_endpoint_circuit_breaker_module_delete_request.md new file mode 100644 index 000000000..64eb50c0e --- /dev/null +++ b/docs/api/examples/_endpoint_circuit_breaker_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/circuit_breaker +``` diff --git a/docs/api/examples/_endpoint_circuit_breaker_module_delete_response.md b/docs/api/examples/_endpoint_circuit_breaker_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_circuit_breaker_module_get_request.md b/docs/api/examples/_endpoint_circuit_breaker_module_get_request.md new file mode 100644 index 000000000..20de1491a --- /dev/null +++ b/docs/api/examples/_endpoint_circuit_breaker_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/circuit_breaker +``` diff --git a/docs/api/examples/_endpoint_circuit_breaker_module_get_response.md b/docs/api/examples/_endpoint_circuit_breaker_module_get_response.md new file mode 100644 index 000000000..b56bbca40 --- /dev/null +++ b/docs/api/examples/_endpoint_circuit_breaker_module_get_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "error_threshold_percentage": 0.2, + "num_buckets": 5, + "rolling_window": 300, + "tripped_duration": 120, + "volume_threshold": 20 +} +``` diff --git a/docs/api/examples/_endpoint_circuit_breaker_module_replace_request.md b/docs/api/examples/_endpoint_circuit_breaker_module_replace_request.md new file mode 100644 index 000000000..06d1e901b --- /dev/null +++ b/docs/api/examples/_endpoint_circuit_breaker_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"error_threshold_percentage":0.2,"num_buckets":5,"rolling_window":300,"tripped_duration":120,"volume_threshold":20}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/circuit_breaker +``` diff --git a/docs/api/examples/_endpoint_circuit_breaker_module_replace_response.md b/docs/api/examples/_endpoint_circuit_breaker_module_replace_response.md new file mode 100644 index 000000000..b56bbca40 --- /dev/null +++ b/docs/api/examples/_endpoint_circuit_breaker_module_replace_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "error_threshold_percentage": 0.2, + "num_buckets": 5, + "rolling_window": 300, + "tripped_duration": 120, + "volume_threshold": 20 +} +``` diff --git a/docs/api/examples/_endpoint_compression_module_delete_request.md b/docs/api/examples/_endpoint_compression_module_delete_request.md new file mode 100644 index 000000000..5abcdf972 --- /dev/null +++ b/docs/api/examples/_endpoint_compression_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/compression +``` diff --git a/docs/api/examples/_endpoint_compression_module_delete_response.md b/docs/api/examples/_endpoint_compression_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_compression_module_get_request.md b/docs/api/examples/_endpoint_compression_module_get_request.md new file mode 100644 index 000000000..f25478f68 --- /dev/null +++ b/docs/api/examples/_endpoint_compression_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/compression +``` diff --git a/docs/api/examples/_endpoint_compression_module_get_response.md b/docs/api/examples/_endpoint_compression_module_get_response.md new file mode 100644 index 000000000..2317802fe --- /dev/null +++ b/docs/api/examples/_endpoint_compression_module_get_response.md @@ -0,0 +1,9 @@ + + +#### Example Response + +```json +{ + "enabled": false +} +``` diff --git a/docs/api/examples/_endpoint_compression_module_replace_request.md b/docs/api/examples/_endpoint_compression_module_replace_request.md new file mode 100644 index 000000000..427b559b2 --- /dev/null +++ b/docs/api/examples/_endpoint_compression_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":false}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/compression +``` diff --git a/docs/api/examples/_endpoint_compression_module_replace_response.md b/docs/api/examples/_endpoint_compression_module_replace_response.md new file mode 100644 index 000000000..2317802fe --- /dev/null +++ b/docs/api/examples/_endpoint_compression_module_replace_response.md @@ -0,0 +1,9 @@ + + +#### Example Response + +```json +{ + "enabled": false +} +``` diff --git a/docs/api/examples/_endpoint_configurations_create_request.md b/docs/api/examples/_endpoint_configurations_create_request.md new file mode 100644 index 000000000..3f964b549 --- /dev/null +++ b/docs/api/examples/_endpoint_configurations_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"app servers","request_headers":{"add":{"x-frontend":"ngrok"},"remove":["cache-control"]},"type":"https"}' \ +https://api.ngrok.com/endpoint_configurations +``` diff --git a/docs/api/examples/_endpoint_configurations_create_response.md b/docs/api/examples/_endpoint_configurations_create_response.md new file mode 100644 index 000000000..03601e933 --- /dev/null +++ b/docs/api/examples/_endpoint_configurations_create_response.md @@ -0,0 +1,32 @@ + + +#### Example Response + +```json +{ + "backend": null, + "basic_auth": null, + "circuit_breaker": null, + "compression": null, + "created_at": "2024-11-15T17:26:02Z", + "description": "app servers", + "id": "ec_2otawF3Dam5BN6S9LYsI2QYfKgw", + "ip_policy": null, + "mutual_tls": null, + "oauth": null, + "oidc": null, + "request_headers": { + "add": { + "x-frontend": "ngrok" + }, + "enabled": true, + "remove": ["cache-control"] + }, + "response_headers": null, + "saml": null, + "tls_termination": null, + "type": "https", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawF3Dam5BN6S9LYsI2QYfKgw", + "webhook_validation": null +} +``` diff --git a/docs/api/examples/_endpoint_configurations_delete_request.md b/docs/api/examples/_endpoint_configurations_delete_request.md new file mode 100644 index 000000000..c9b34da2f --- /dev/null +++ b/docs/api/examples/_endpoint_configurations_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otawF3Dam5BN6S9LYsI2QYfKgw +``` diff --git a/docs/api/examples/_endpoint_configurations_delete_response.md b/docs/api/examples/_endpoint_configurations_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_configurations_get_request.md b/docs/api/examples/_endpoint_configurations_get_request.md new file mode 100644 index 000000000..da6581136 --- /dev/null +++ b/docs/api/examples/_endpoint_configurations_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otawF3Dam5BN6S9LYsI2QYfKgw +``` diff --git a/docs/api/examples/_endpoint_configurations_get_response.md b/docs/api/examples/_endpoint_configurations_get_response.md new file mode 100644 index 000000000..b1cbacb3f --- /dev/null +++ b/docs/api/examples/_endpoint_configurations_get_response.md @@ -0,0 +1,40 @@ + + +#### Example Response + +```json +{ + "backend": null, + "basic_auth": null, + "circuit_breaker": null, + "compression": null, + "created_at": "2024-11-15T17:26:02Z", + "description": "app servers", + "id": "ec_2otawF3Dam5BN6S9LYsI2QYfKgw", + "ip_policy": { + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otawLkyswiZMPFXJJSlUChDV5A", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otawLkyswiZMPFXJJSlUChDV5A" + } + ] + }, + "mutual_tls": null, + "oauth": null, + "oidc": null, + "request_headers": { + "add": { + "x-frontend": "ngrok" + }, + "enabled": true, + "remove": ["cache-control"] + }, + "response_headers": null, + "saml": null, + "tls_termination": null, + "type": "https", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawF3Dam5BN6S9LYsI2QYfKgw", + "webhook_validation": null +} +``` diff --git a/docs/api/examples/_endpoint_configurations_list_request.md b/docs/api/examples/_endpoint_configurations_list_request.md new file mode 100644 index 000000000..aae4dd75f --- /dev/null +++ b/docs/api/examples/_endpoint_configurations_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations +``` diff --git a/docs/api/examples/_endpoint_configurations_list_response.md b/docs/api/examples/_endpoint_configurations_list_response.md new file mode 100644 index 000000000..05e7acc1d --- /dev/null +++ b/docs/api/examples/_endpoint_configurations_list_response.md @@ -0,0 +1,74 @@ + + +#### Example Response + +```json +{ + "endpoint_configurations": [ + { + "backend": null, + "basic_auth": null, + "circuit_breaker": null, + "compression": null, + "created_at": "2024-11-15T17:26:02Z", + "description": "app servers", + "id": "ec_2otawF3Dam5BN6S9LYsI2QYfKgw", + "ip_policy": null, + "mutual_tls": null, + "oauth": null, + "oidc": null, + "request_headers": { + "add": { + "x-frontend": "ngrok" + }, + "enabled": true, + "remove": ["cache-control"] + }, + "response_headers": null, + "saml": null, + "tls_termination": null, + "type": "https", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawF3Dam5BN6S9LYsI2QYfKgw", + "webhook_validation": null + }, + { + "backend": null, + "basic_auth": null, + "circuit_breaker": { + "enabled": true, + "error_threshold_percentage": 0.2, + "num_buckets": 0, + "rolling_window": 0, + "tripped_duration": 0, + "volume_threshold": 0 + }, + "compression": { + "enabled": true + }, + "created_at": "2024-11-15T17:26:02Z", + "description": "web servers", + "id": "ec_2otawEzjrx0g8Orl4Lih0xY9gPQ", + "ip_policy": null, + "mutual_tls": null, + "oauth": null, + "oidc": null, + "request_headers": null, + "response_headers": { + "add": { + "content-security-policy": "script-src 'self'", + "x-frame-options": "DENY" + }, + "enabled": true, + "remove": [] + }, + "saml": null, + "tls_termination": null, + "type": "https", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawEzjrx0g8Orl4Lih0xY9gPQ", + "webhook_validation": null + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/endpoint_configurations" +} +``` diff --git a/docs/api/examples/_endpoint_configurations_update_request.md b/docs/api/examples/_endpoint_configurations_update_request.md new file mode 100644 index 000000000..7d7a58863 --- /dev/null +++ b/docs/api/examples/_endpoint_configurations_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"ip_policy":{"ip_policy_ids":["ipp_2otawLkyswiZMPFXJJSlUChDV5A"]}}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otawF3Dam5BN6S9LYsI2QYfKgw +``` diff --git a/docs/api/examples/_endpoint_configurations_update_response.md b/docs/api/examples/_endpoint_configurations_update_response.md new file mode 100644 index 000000000..b1cbacb3f --- /dev/null +++ b/docs/api/examples/_endpoint_configurations_update_response.md @@ -0,0 +1,40 @@ + + +#### Example Response + +```json +{ + "backend": null, + "basic_auth": null, + "circuit_breaker": null, + "compression": null, + "created_at": "2024-11-15T17:26:02Z", + "description": "app servers", + "id": "ec_2otawF3Dam5BN6S9LYsI2QYfKgw", + "ip_policy": { + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otawLkyswiZMPFXJJSlUChDV5A", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otawLkyswiZMPFXJJSlUChDV5A" + } + ] + }, + "mutual_tls": null, + "oauth": null, + "oidc": null, + "request_headers": { + "add": { + "x-frontend": "ngrok" + }, + "enabled": true, + "remove": ["cache-control"] + }, + "response_headers": null, + "saml": null, + "tls_termination": null, + "type": "https", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawF3Dam5BN6S9LYsI2QYfKgw", + "webhook_validation": null +} +``` diff --git a/docs/api/examples/_endpoint_ip_policy_module_delete_request.md b/docs/api/examples/_endpoint_ip_policy_module_delete_request.md new file mode 100644 index 000000000..65d693884 --- /dev/null +++ b/docs/api/examples/_endpoint_ip_policy_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/ip_policy +``` diff --git a/docs/api/examples/_endpoint_ip_policy_module_delete_response.md b/docs/api/examples/_endpoint_ip_policy_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_ip_policy_module_get_request.md b/docs/api/examples/_endpoint_ip_policy_module_get_request.md new file mode 100644 index 000000000..8c7ed5cbc --- /dev/null +++ b/docs/api/examples/_endpoint_ip_policy_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/ip_policy +``` diff --git a/docs/api/examples/_endpoint_ip_policy_module_get_response.md b/docs/api/examples/_endpoint_ip_policy_module_get_response.md new file mode 100644 index 000000000..b5c193109 --- /dev/null +++ b/docs/api/examples/_endpoint_ip_policy_module_get_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otazEJdD3zNAW07vvavoG4Nrxi", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazEJdD3zNAW07vvavoG4Nrxi" + } + ] +} +``` diff --git a/docs/api/examples/_endpoint_ip_policy_module_replace_request.md b/docs/api/examples/_endpoint_ip_policy_module_replace_request.md new file mode 100644 index 000000000..29b3d4f5c --- /dev/null +++ b/docs/api/examples/_endpoint_ip_policy_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"ip_policy_ids":["ipp_2otazEJdD3zNAW07vvavoG4Nrxi"]}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/ip_policy +``` diff --git a/docs/api/examples/_endpoint_ip_policy_module_replace_response.md b/docs/api/examples/_endpoint_ip_policy_module_replace_response.md new file mode 100644 index 000000000..b5c193109 --- /dev/null +++ b/docs/api/examples/_endpoint_ip_policy_module_replace_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otazEJdD3zNAW07vvavoG4Nrxi", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazEJdD3zNAW07vvavoG4Nrxi" + } + ] +} +``` diff --git a/docs/api/examples/_endpoint_mutual_tls_module_delete_request.md b/docs/api/examples/_endpoint_mutual_tls_module_delete_request.md new file mode 100644 index 000000000..a1c24fd14 --- /dev/null +++ b/docs/api/examples/_endpoint_mutual_tls_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/mutual_tls +``` diff --git a/docs/api/examples/_endpoint_mutual_tls_module_delete_response.md b/docs/api/examples/_endpoint_mutual_tls_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_mutual_tls_module_get_request.md b/docs/api/examples/_endpoint_mutual_tls_module_get_request.md new file mode 100644 index 000000000..5995e4120 --- /dev/null +++ b/docs/api/examples/_endpoint_mutual_tls_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/mutual_tls +``` diff --git a/docs/api/examples/_endpoint_mutual_tls_module_get_response.md b/docs/api/examples/_endpoint_mutual_tls_module_get_response.md new file mode 100644 index 000000000..38db5d0b4 --- /dev/null +++ b/docs/api/examples/_endpoint_mutual_tls_module_get_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "certificate_authorities": [ + { + "id": "ca_2otazMWXefts6w9KiQIExV8bnO3", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazMWXefts6w9KiQIExV8bnO3" + } + ], + "enabled": true +} +``` diff --git a/docs/api/examples/_endpoint_mutual_tls_module_replace_request.md b/docs/api/examples/_endpoint_mutual_tls_module_replace_request.md new file mode 100644 index 000000000..96c38b917 --- /dev/null +++ b/docs/api/examples/_endpoint_mutual_tls_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"certificate_authority_ids":["ca_2otazMWXefts6w9KiQIExV8bnO3"],"enabled":true}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/mutual_tls +``` diff --git a/docs/api/examples/_endpoint_mutual_tls_module_replace_response.md b/docs/api/examples/_endpoint_mutual_tls_module_replace_response.md new file mode 100644 index 000000000..38db5d0b4 --- /dev/null +++ b/docs/api/examples/_endpoint_mutual_tls_module_replace_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "certificate_authorities": [ + { + "id": "ca_2otazMWXefts6w9KiQIExV8bnO3", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazMWXefts6w9KiQIExV8bnO3" + } + ], + "enabled": true +} +``` diff --git a/docs/api/examples/_endpoint_o_auth_module_delete_request.md b/docs/api/examples/_endpoint_o_auth_module_delete_request.md new file mode 100644 index 000000000..7665c62b8 --- /dev/null +++ b/docs/api/examples/_endpoint_o_auth_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/oauth +``` diff --git a/docs/api/examples/_endpoint_o_auth_module_delete_response.md b/docs/api/examples/_endpoint_o_auth_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_o_auth_module_get_request.md b/docs/api/examples/_endpoint_o_auth_module_get_request.md new file mode 100644 index 000000000..dfa340c4d --- /dev/null +++ b/docs/api/examples/_endpoint_o_auth_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/oauth +``` diff --git a/docs/api/examples/_endpoint_o_auth_module_get_response.md b/docs/api/examples/_endpoint_o_auth_module_get_response.md new file mode 100644 index 000000000..11952498b --- /dev/null +++ b/docs/api/examples/_endpoint_o_auth_module_get_response.md @@ -0,0 +1,34 @@ + + +#### Example Response + +```json +{ + "auth_check_interval": 0, + "cookie_prefix": "ngrok.", + "enabled": true, + "inactivity_timeout": 0, + "maximum_duration": 0, + "options_passthrough": true, + "provider": { + "amazon": null, + "facebook": null, + "github": null, + "gitlab": null, + "google": { + "client_id": "client-id", + "client_secret": "client-secret", + "email_addresses": ["alan@example.com"], + "email_domains": [], + "scopes": [ + "profile", + "email", + "https://www.googleapis.com/auth/gmail.compose" + ] + }, + "linkedin": null, + "microsoft": null, + "twitch": null + } +} +``` diff --git a/docs/api/examples/_endpoint_o_auth_module_replace_request.md b/docs/api/examples/_endpoint_o_auth_module_replace_request.md new file mode 100644 index 000000000..50f254f53 --- /dev/null +++ b/docs/api/examples/_endpoint_o_auth_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"options_passthrough":true,"provider":{"google":{"client_id":"client-id","client_secret":"client-secret","email_addresses":["alan@example.com"],"scopes":["profile","email","https://www.googleapis.com/auth/gmail.compose"]}}}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/oauth +``` diff --git a/docs/api/examples/_endpoint_o_auth_module_replace_response.md b/docs/api/examples/_endpoint_o_auth_module_replace_response.md new file mode 100644 index 000000000..11952498b --- /dev/null +++ b/docs/api/examples/_endpoint_o_auth_module_replace_response.md @@ -0,0 +1,34 @@ + + +#### Example Response + +```json +{ + "auth_check_interval": 0, + "cookie_prefix": "ngrok.", + "enabled": true, + "inactivity_timeout": 0, + "maximum_duration": 0, + "options_passthrough": true, + "provider": { + "amazon": null, + "facebook": null, + "github": null, + "gitlab": null, + "google": { + "client_id": "client-id", + "client_secret": "client-secret", + "email_addresses": ["alan@example.com"], + "email_domains": [], + "scopes": [ + "profile", + "email", + "https://www.googleapis.com/auth/gmail.compose" + ] + }, + "linkedin": null, + "microsoft": null, + "twitch": null + } +} +``` diff --git a/docs/api/examples/_endpoint_oidc_module_delete_request.md b/docs/api/examples/_endpoint_oidc_module_delete_request.md new file mode 100644 index 000000000..e10f772c8 --- /dev/null +++ b/docs/api/examples/_endpoint_oidc_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/oidc +``` diff --git a/docs/api/examples/_endpoint_oidc_module_delete_response.md b/docs/api/examples/_endpoint_oidc_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_oidc_module_get_request.md b/docs/api/examples/_endpoint_oidc_module_get_request.md new file mode 100644 index 000000000..f908e8984 --- /dev/null +++ b/docs/api/examples/_endpoint_oidc_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/oidc +``` diff --git a/docs/api/examples/_endpoint_oidc_module_get_response.md b/docs/api/examples/_endpoint_oidc_module_get_response.md new file mode 100644 index 000000000..4e160f567 --- /dev/null +++ b/docs/api/examples/_endpoint_oidc_module_get_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "client_id": "some-client-id", + "client_secret": "some-client-secret", + "cookie_prefix": "", + "enabled": true, + "inactivity_timeout": 0, + "issuer": "https://accounts.google.com", + "maximum_duration": 0, + "options_passthrough": false, + "scopes": ["profile"] +} +``` diff --git a/docs/api/examples/_endpoint_oidc_module_replace_request.md b/docs/api/examples/_endpoint_oidc_module_replace_request.md new file mode 100644 index 000000000..fa0c7d3e4 --- /dev/null +++ b/docs/api/examples/_endpoint_oidc_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"client_id":"some-client-id","client_secret":"some-client-secret","enabled":true,"issuer":"https://accounts.google.com","scopes":["profile"]}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/oidc +``` diff --git a/docs/api/examples/_endpoint_oidc_module_replace_response.md b/docs/api/examples/_endpoint_oidc_module_replace_response.md new file mode 100644 index 000000000..4e160f567 --- /dev/null +++ b/docs/api/examples/_endpoint_oidc_module_replace_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "client_id": "some-client-id", + "client_secret": "some-client-secret", + "cookie_prefix": "", + "enabled": true, + "inactivity_timeout": 0, + "issuer": "https://accounts.google.com", + "maximum_duration": 0, + "options_passthrough": false, + "scopes": ["profile"] +} +``` diff --git a/docs/api/examples/_endpoint_request_headers_module_delete_request.md b/docs/api/examples/_endpoint_request_headers_module_delete_request.md new file mode 100644 index 000000000..37fb59db5 --- /dev/null +++ b/docs/api/examples/_endpoint_request_headers_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/request_headers +``` diff --git a/docs/api/examples/_endpoint_request_headers_module_delete_response.md b/docs/api/examples/_endpoint_request_headers_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_request_headers_module_get_request.md b/docs/api/examples/_endpoint_request_headers_module_get_request.md new file mode 100644 index 000000000..31f652b78 --- /dev/null +++ b/docs/api/examples/_endpoint_request_headers_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/request_headers +``` diff --git a/docs/api/examples/_endpoint_request_headers_module_get_response.md b/docs/api/examples/_endpoint_request_headers_module_get_response.md new file mode 100644 index 000000000..1a81c6475 --- /dev/null +++ b/docs/api/examples/_endpoint_request_headers_module_get_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "add": { + "x-baz": "qux", + "x-foo": "bar" + }, + "enabled": true, + "remove": ["x-internal-header"] +} +``` diff --git a/docs/api/examples/_endpoint_request_headers_module_replace_request.md b/docs/api/examples/_endpoint_request_headers_module_replace_request.md new file mode 100644 index 000000000..eee533de2 --- /dev/null +++ b/docs/api/examples/_endpoint_request_headers_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"add":{"X-Baz":"qux","X-Foo":"bar"},"remove":["X-Internal-Header"]}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/request_headers +``` diff --git a/docs/api/examples/_endpoint_request_headers_module_replace_response.md b/docs/api/examples/_endpoint_request_headers_module_replace_response.md new file mode 100644 index 000000000..1a81c6475 --- /dev/null +++ b/docs/api/examples/_endpoint_request_headers_module_replace_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "add": { + "x-baz": "qux", + "x-foo": "bar" + }, + "enabled": true, + "remove": ["x-internal-header"] +} +``` diff --git a/docs/api/examples/_endpoint_response_headers_module_delete_request.md b/docs/api/examples/_endpoint_response_headers_module_delete_request.md new file mode 100644 index 000000000..da52e598f --- /dev/null +++ b/docs/api/examples/_endpoint_response_headers_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/response_headers +``` diff --git a/docs/api/examples/_endpoint_response_headers_module_delete_response.md b/docs/api/examples/_endpoint_response_headers_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_response_headers_module_get_request.md b/docs/api/examples/_endpoint_response_headers_module_get_request.md new file mode 100644 index 000000000..19add1f73 --- /dev/null +++ b/docs/api/examples/_endpoint_response_headers_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/response_headers +``` diff --git a/docs/api/examples/_endpoint_response_headers_module_get_response.md b/docs/api/examples/_endpoint_response_headers_module_get_response.md new file mode 100644 index 000000000..81740b9d0 --- /dev/null +++ b/docs/api/examples/_endpoint_response_headers_module_get_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "add": { + "cache-control": "no-cache, no-store", + "x-xss-protection": "1; mode=block" + }, + "enabled": true, + "remove": [] +} +``` diff --git a/docs/api/examples/_endpoint_response_headers_module_replace_request.md b/docs/api/examples/_endpoint_response_headers_module_replace_request.md new file mode 100644 index 000000000..95813889e --- /dev/null +++ b/docs/api/examples/_endpoint_response_headers_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"add":{"Cache-Control":"no-cache, no-store","X-XSS-Protection":"1; mode=block"}}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/response_headers +``` diff --git a/docs/api/examples/_endpoint_response_headers_module_replace_response.md b/docs/api/examples/_endpoint_response_headers_module_replace_response.md new file mode 100644 index 000000000..81740b9d0 --- /dev/null +++ b/docs/api/examples/_endpoint_response_headers_module_replace_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "add": { + "cache-control": "no-cache, no-store", + "x-xss-protection": "1; mode=block" + }, + "enabled": true, + "remove": [] +} +``` diff --git a/docs/api/examples/_endpoint_saml_module_delete_request.md b/docs/api/examples/_endpoint_saml_module_delete_request.md new file mode 100644 index 000000000..015fde101 --- /dev/null +++ b/docs/api/examples/_endpoint_saml_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/saml +``` diff --git a/docs/api/examples/_endpoint_saml_module_delete_response.md b/docs/api/examples/_endpoint_saml_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_saml_module_get_request.md b/docs/api/examples/_endpoint_saml_module_get_request.md new file mode 100644 index 000000000..a31ff09ba --- /dev/null +++ b/docs/api/examples/_endpoint_saml_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/saml +``` diff --git a/docs/api/examples/_endpoint_saml_module_get_response.md b/docs/api/examples/_endpoint_saml_module_get_response.md new file mode 100644 index 000000000..b50e9ccad --- /dev/null +++ b/docs/api/examples/_endpoint_saml_module_get_response.md @@ -0,0 +1,24 @@ + + +#### Example Response + +```json +{ + "allow_idp_initiated": true, + "assertion_consumer_service_url": "https://idp.local-ngrok.com/saml/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/acs", + "authorized_groups": [], + "cookie_prefix": "", + "enabled": true, + "entity_id": "https://idp.local-ngrok.com/saml/ec_2otazDf3Ymc6yKOhrzOVUVLrs09", + "force_authn": false, + "idp_metadata": "\nurn:oasis:names:tc:SAML:2.0:nameid-format:transient\n", + "idp_metadata_url": "", + "inactivity_timeout": 0, + "maximum_duration": 0, + "metadata_url": "https://idp.local-ngrok.com/saml/ec_2otazDf3Ymc6yKOhrzOVUVLrs09", + "nameid_format": "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent", + "options_passthrough": false, + "request_signing_certificate_pem": "-----BEGIN CERTIFICATE-----\nMIID7DCCAtSgAwIBAgIRAIq90kdOXb6ZWFvNQsfjJ9wwDQYJKoZIhvcNAQELBQAw\ngZQxSDBGBgNVBAoMP2h0dHBzOi8vaWRwLmxvY2FsLW5ncm9rLmNvbS9zYW1sL2Vj\nXzJvdGF6RGYzWW1jNnlLT2hyek9WVVZMcnMwOTFIMEYGA1UEAww/aHR0cHM6Ly9p\nZHAubG9jYWwtbmdyb2suY29tL3NhbWwvZWNfMm90YXpEZjNZbWM2eUtPaHJ6T1ZV\nVkxyczA5MCAXDTI0MTExNTE3MjYyNloYDzIwNTkxMTA3MTcyNjI2WjCBlDFIMEYG\nA1UECgw/aHR0cHM6Ly9pZHAubG9jYWwtbmdyb2suY29tL3NhbWwvZWNfMm90YXpE\nZjNZbWM2eUtPaHJ6T1ZVVkxyczA5MUgwRgYDVQQDDD9odHRwczovL2lkcC5sb2Nh\nbC1uZ3Jvay5jb20vc2FtbC9lY18yb3RhekRmM1ltYzZ5S09ocnpPVlVWTHJzMDkw\nggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCdvRp34e5GJ8hLm/V4KCKo\nRlp9bgICx0fVn70Y8+gH/s8ytjaKx+fcHLiu6N8VbdeYB7hBaQro2McZlGSXNUk5\n7VkYbkb+zWmi2eKBQQWtu282D5puv1jDl/HIkb4MPxd+wBwS8forEMOs94Jm1twS\nZ5OWQL+dvU8LfF71h7ssny+p6HUP/9vNm/HekK5d5G4ys7TmY8b0WnsFZp/Si9sd\ncK5J9374yOE+x0DY3ungcWe1Vn2dih5nvPb6JQ3b8Y0VgcJyyvOu9EB6uE0xkBWL\na2hjZVniOeJoxJZAgysVSWQc2BkrWhblP3WBlHS3DR20sREO81jZIIHy5PE+Xn1R\nAgMBAAGjNTAzMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDATAM\nBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQBMEtXYq6vi/ZQz0s5jPzrq\ndzDc817g8DG+YaXtBIEWLMqF7blvSueCcDev98PkleiIKM/snIw49I1SAdQWl5Lt\nt13QEZzc29EO98U5/eoZRfamId7PW8+w4IXe9rMDd+MU43aCWyc9ZAV0cYNnhmx6\n8KZC+J/vO91FLcu8BofmUgvZnTUFuhwqXk+riscjP3Y7wQielKxv4zSghrRQk7SN\nkU6Fc8XJneDJZapPSNtE8vvhe3UbicySYitId099EUZrb0l9Ay3kof6U4CadfiYS\nFfjbdkAaqQhqzPzC9SzDw8/VC5IP+ljLU0zMhKFqaBd5yDxP2RWo3uWfXtofDO/2\n-----END CERTIFICATE-----\n", + "single_logout_url": "https://idp.local-ngrok.com/saml/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/slo" +} +``` diff --git a/docs/api/examples/_endpoint_saml_module_replace_request.md b/docs/api/examples/_endpoint_saml_module_replace_request.md new file mode 100644 index 000000000..98fa11729 --- /dev/null +++ b/docs/api/examples/_endpoint_saml_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"idp_metadata":"\nurn:oasis:names:tc:SAML:2.0:nameid-format:transient\n"}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/saml +``` diff --git a/docs/api/examples/_endpoint_saml_module_replace_response.md b/docs/api/examples/_endpoint_saml_module_replace_response.md new file mode 100644 index 000000000..b50e9ccad --- /dev/null +++ b/docs/api/examples/_endpoint_saml_module_replace_response.md @@ -0,0 +1,24 @@ + + +#### Example Response + +```json +{ + "allow_idp_initiated": true, + "assertion_consumer_service_url": "https://idp.local-ngrok.com/saml/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/acs", + "authorized_groups": [], + "cookie_prefix": "", + "enabled": true, + "entity_id": "https://idp.local-ngrok.com/saml/ec_2otazDf3Ymc6yKOhrzOVUVLrs09", + "force_authn": false, + "idp_metadata": "\nurn:oasis:names:tc:SAML:2.0:nameid-format:transient\n", + "idp_metadata_url": "", + "inactivity_timeout": 0, + "maximum_duration": 0, + "metadata_url": "https://idp.local-ngrok.com/saml/ec_2otazDf3Ymc6yKOhrzOVUVLrs09", + "nameid_format": "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent", + "options_passthrough": false, + "request_signing_certificate_pem": "-----BEGIN CERTIFICATE-----\nMIID7DCCAtSgAwIBAgIRAIq90kdOXb6ZWFvNQsfjJ9wwDQYJKoZIhvcNAQELBQAw\ngZQxSDBGBgNVBAoMP2h0dHBzOi8vaWRwLmxvY2FsLW5ncm9rLmNvbS9zYW1sL2Vj\nXzJvdGF6RGYzWW1jNnlLT2hyek9WVVZMcnMwOTFIMEYGA1UEAww/aHR0cHM6Ly9p\nZHAubG9jYWwtbmdyb2suY29tL3NhbWwvZWNfMm90YXpEZjNZbWM2eUtPaHJ6T1ZV\nVkxyczA5MCAXDTI0MTExNTE3MjYyNloYDzIwNTkxMTA3MTcyNjI2WjCBlDFIMEYG\nA1UECgw/aHR0cHM6Ly9pZHAubG9jYWwtbmdyb2suY29tL3NhbWwvZWNfMm90YXpE\nZjNZbWM2eUtPaHJ6T1ZVVkxyczA5MUgwRgYDVQQDDD9odHRwczovL2lkcC5sb2Nh\nbC1uZ3Jvay5jb20vc2FtbC9lY18yb3RhekRmM1ltYzZ5S09ocnpPVlVWTHJzMDkw\nggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCdvRp34e5GJ8hLm/V4KCKo\nRlp9bgICx0fVn70Y8+gH/s8ytjaKx+fcHLiu6N8VbdeYB7hBaQro2McZlGSXNUk5\n7VkYbkb+zWmi2eKBQQWtu282D5puv1jDl/HIkb4MPxd+wBwS8forEMOs94Jm1twS\nZ5OWQL+dvU8LfF71h7ssny+p6HUP/9vNm/HekK5d5G4ys7TmY8b0WnsFZp/Si9sd\ncK5J9374yOE+x0DY3ungcWe1Vn2dih5nvPb6JQ3b8Y0VgcJyyvOu9EB6uE0xkBWL\na2hjZVniOeJoxJZAgysVSWQc2BkrWhblP3WBlHS3DR20sREO81jZIIHy5PE+Xn1R\nAgMBAAGjNTAzMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDATAM\nBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQBMEtXYq6vi/ZQz0s5jPzrq\ndzDc817g8DG+YaXtBIEWLMqF7blvSueCcDev98PkleiIKM/snIw49I1SAdQWl5Lt\nt13QEZzc29EO98U5/eoZRfamId7PW8+w4IXe9rMDd+MU43aCWyc9ZAV0cYNnhmx6\n8KZC+J/vO91FLcu8BofmUgvZnTUFuhwqXk+riscjP3Y7wQielKxv4zSghrRQk7SN\nkU6Fc8XJneDJZapPSNtE8vvhe3UbicySYitId099EUZrb0l9Ay3kof6U4CadfiYS\nFfjbdkAaqQhqzPzC9SzDw8/VC5IP+ljLU0zMhKFqaBd5yDxP2RWo3uWfXtofDO/2\n-----END CERTIFICATE-----\n", + "single_logout_url": "https://idp.local-ngrok.com/saml/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/slo" +} +``` diff --git a/docs/api/examples/_endpoint_tls_termination_module_delete_request.md b/docs/api/examples/_endpoint_tls_termination_module_delete_request.md new file mode 100644 index 000000000..018e8300d --- /dev/null +++ b/docs/api/examples/_endpoint_tls_termination_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/tls_termination +``` diff --git a/docs/api/examples/_endpoint_tls_termination_module_delete_response.md b/docs/api/examples/_endpoint_tls_termination_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_tls_termination_module_get_request.md b/docs/api/examples/_endpoint_tls_termination_module_get_request.md new file mode 100644 index 000000000..5d6dae003 --- /dev/null +++ b/docs/api/examples/_endpoint_tls_termination_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/tls_termination +``` diff --git a/docs/api/examples/_endpoint_tls_termination_module_get_response.md b/docs/api/examples/_endpoint_tls_termination_module_get_response.md new file mode 100644 index 000000000..479c4532c --- /dev/null +++ b/docs/api/examples/_endpoint_tls_termination_module_get_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "min_version": "1.2", + "terminate_at": "edge" +} +``` diff --git a/docs/api/examples/_endpoint_tls_termination_module_replace_request.md b/docs/api/examples/_endpoint_tls_termination_module_replace_request.md new file mode 100644 index 000000000..39e485dbd --- /dev/null +++ b/docs/api/examples/_endpoint_tls_termination_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"min_version":"1.2","terminate_at":"edge"}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/tls_termination +``` diff --git a/docs/api/examples/_endpoint_tls_termination_module_replace_response.md b/docs/api/examples/_endpoint_tls_termination_module_replace_response.md new file mode 100644 index 000000000..479c4532c --- /dev/null +++ b/docs/api/examples/_endpoint_tls_termination_module_replace_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "min_version": "1.2", + "terminate_at": "edge" +} +``` diff --git a/docs/api/examples/_endpoint_webhook_validation_module_delete_request.md b/docs/api/examples/_endpoint_webhook_validation_module_delete_request.md new file mode 100644 index 000000000..3c44bcd94 --- /dev/null +++ b/docs/api/examples/_endpoint_webhook_validation_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/webhook_validation +``` diff --git a/docs/api/examples/_endpoint_webhook_validation_module_delete_response.md b/docs/api/examples/_endpoint_webhook_validation_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoint_webhook_validation_module_get_request.md b/docs/api/examples/_endpoint_webhook_validation_module_get_request.md new file mode 100644 index 000000000..95a1e017a --- /dev/null +++ b/docs/api/examples/_endpoint_webhook_validation_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/webhook_validation +``` diff --git a/docs/api/examples/_endpoint_webhook_validation_module_get_response.md b/docs/api/examples/_endpoint_webhook_validation_module_get_response.md new file mode 100644 index 000000000..999761990 --- /dev/null +++ b/docs/api/examples/_endpoint_webhook_validation_module_get_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "provider": "TWILIO", + "secret": "secret_token" +} +``` diff --git a/docs/api/examples/_endpoint_webhook_validation_module_replace_request.md b/docs/api/examples/_endpoint_webhook_validation_module_replace_request.md new file mode 100644 index 000000000..0331c73ee --- /dev/null +++ b/docs/api/examples/_endpoint_webhook_validation_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"provider":"TWILIO","secret":"secret_token"}' \ +https://api.ngrok.com/endpoint_configurations/ec_2otazDf3Ymc6yKOhrzOVUVLrs09/webhook_validation +``` diff --git a/docs/api/examples/_endpoint_webhook_validation_module_replace_response.md b/docs/api/examples/_endpoint_webhook_validation_module_replace_response.md new file mode 100644 index 000000000..999761990 --- /dev/null +++ b/docs/api/examples/_endpoint_webhook_validation_module_replace_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "provider": "TWILIO", + "secret": "secret_token" +} +``` diff --git a/docs/api/examples/_endpoints_create_request.md b/docs/api/examples/_endpoints_create_request.md new file mode 100644 index 000000000..25ece71be --- /dev/null +++ b/docs/api/examples/_endpoints_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"bindings":["public"],"description":"sample cloud endpoint","metadata":"{\"environment\": \"staging\"}","traffic_policy":"{\"on_http_request\":[{\"actions\":[{\"type\":\"deny\",\"config\":{\"status_code\":404}}]}]}","type":"cloud","url":"https://endpoint-example2.com:443"}' \ +https://api.ngrok.com/endpoints +``` diff --git a/docs/api/examples/_endpoints_create_response.md b/docs/api/examples/_endpoints_create_response.md new file mode 100644 index 000000000..454afd963 --- /dev/null +++ b/docs/api/examples/_endpoints_create_response.md @@ -0,0 +1,25 @@ + + +#### Example Response + +```json +{ + "bindings": ["public"], + "created_at": "2024-11-15T17:26:24Z", + "description": "sample cloud endpoint", + "domain": { + "id": "rd_2otayRn8tUpTvnhO9FEmOkyvO5e", + "uri": "https://api.ngrok.com/reserved_domains/rd_2otayRn8tUpTvnhO9FEmOkyvO5e" + }, + "hostport": "endpoint-example2.com:443", + "id": "ep_2otaz4XWOpuSj22v4N2sonYC3Wf", + "metadata": "{\"environment\": \"staging\"}", + "proto": "https", + "public_url": "https://endpoint-example2.com", + "traffic_policy": "{\"on_http_request\":[{\"actions\":[{\"type\":\"deny\",\"config\":{\"status_code\":404}}]}]}", + "type": "cloud", + "updated_at": "2024-11-15T17:26:24Z", + "uri": "https://api.ngrok.com/endpoints/ep_2otaz4XWOpuSj22v4N2sonYC3Wf", + "url": "https://endpoint-example2.com" +} +``` diff --git a/docs/api/examples/_endpoints_delete_request.md b/docs/api/examples/_endpoints_delete_request.md new file mode 100644 index 000000000..6f0e56b1d --- /dev/null +++ b/docs/api/examples/_endpoints_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoints/ep_2otaz4XWOpuSj22v4N2sonYC3Wf +``` diff --git a/docs/api/examples/_endpoints_delete_response.md b/docs/api/examples/_endpoints_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_endpoints_get_request.md b/docs/api/examples/_endpoints_get_request.md new file mode 100644 index 000000000..afa495a9a --- /dev/null +++ b/docs/api/examples/_endpoints_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoints/ep_2otaz4XWOpuSj22v4N2sonYC3Wf +``` diff --git a/docs/api/examples/_endpoints_get_response.md b/docs/api/examples/_endpoints_get_response.md new file mode 100644 index 000000000..dafb7c187 --- /dev/null +++ b/docs/api/examples/_endpoints_get_response.md @@ -0,0 +1,27 @@ + + +#### Example Response + +```json +{ + "bindings": ["public"], + "created_at": "2024-11-15T17:26:25Z", + "description": "sample cloud endpoint", + "domain": { + "id": "rd_2otayRn8tUpTvnhO9FEmOkyvO5e", + "uri": "https://api.ngrok.com/reserved_domains/rd_2otayRn8tUpTvnhO9FEmOkyvO5e" + }, + "edge": { + "id": "edgtls_2otayO9m98zAAYh05BrJj7WbfhZ", + "uri": "https://api.ngrok.com/edges/tls/edgtls_2otayO9m98zAAYh05BrJj7WbfhZ" + }, + "hostport": "endpoint-example2.com:443", + "id": "ep_2otaz4XWOpuSj22v4N2sonYC3Wf", + "proto": "https", + "public_url": "https://endpoint-example2.com", + "type": "cloud", + "updated_at": "2024-11-15T17:26:25Z", + "uri": "https://api.ngrok.com/endpoints/ep_2otaz4XWOpuSj22v4N2sonYC3Wf", + "url": "https://endpoint-example2.com" +} +``` diff --git a/docs/api/examples/_endpoints_list_request.md b/docs/api/examples/_endpoints_list_request.md new file mode 100644 index 000000000..c6d019e19 --- /dev/null +++ b/docs/api/examples/_endpoints_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/endpoints +``` diff --git a/docs/api/examples/_endpoints_list_response.md b/docs/api/examples/_endpoints_list_response.md new file mode 100644 index 000000000..81b295f20 --- /dev/null +++ b/docs/api/examples/_endpoints_list_response.md @@ -0,0 +1,55 @@ + + +#### Example Response + +```json +{ + "endpoints": [ + { + "bindings": ["public"], + "created_at": "2024-11-15T17:26:22Z", + "hostport": "91178bbb378f.ngrok.paid:443", + "id": "ep_2otaylvnZ5RtJqJEEXV6Ft3KpMx", + "name": "command_line", + "principal": { + "id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "uri": "" + }, + "proto": "https", + "public_url": "https://91178bbb378f.ngrok.paid", + "tunnel": { + "id": "tn_2otaylvnZ5RtJqJEEXV6Ft3KpMx", + "uri": "https://api.ngrok.com/tunnels/tn_2otaylvnZ5RtJqJEEXV6Ft3KpMx" + }, + "tunnel_session": { + "id": "ts_2otayqZL3gzmWUiXvstqWHY8u3s", + "uri": "https://api.ngrok.com/tunnel_sessions/ts_2otayqZL3gzmWUiXvstqWHY8u3s" + }, + "type": "ephemeral", + "updated_at": "2024-11-15T17:26:22Z", + "upstream_url": "http://localhost:80", + "url": "https://91178bbb378f.ngrok.paid" + }, + { + "bindings": ["public"], + "created_at": "2024-11-15T17:26:20Z", + "domain": { + "id": "rd_2otayRn8tUpTvnhO9FEmOkyvO5e", + "uri": "https://api.ngrok.com/reserved_domains/rd_2otayRn8tUpTvnhO9FEmOkyvO5e" + }, + "edge": { + "id": "edgtls_2otayO9m98zAAYh05BrJj7WbfhZ", + "uri": "https://api.ngrok.com/edges/tls/edgtls_2otayO9m98zAAYh05BrJj7WbfhZ" + }, + "hostport": "endpoint-example2.com:443", + "id": "ep_2otaya2SvpNfZCIu0NjG5py4aUg", + "proto": "tls", + "public_url": "tls://endpoint-example2.com", + "type": "edge", + "updated_at": "2024-11-15T17:26:20Z" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/endpoints" +} +``` diff --git a/docs/api/examples/_endpoints_update_request.md b/docs/api/examples/_endpoints_update_request.md new file mode 100644 index 000000000..34ce4fbca --- /dev/null +++ b/docs/api/examples/_endpoints_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"Sample Cloud Endpoint"}' \ +https://api.ngrok.com/endpoints/ep_2otaz4XWOpuSj22v4N2sonYC3Wf +``` diff --git a/docs/api/examples/_endpoints_update_response.md b/docs/api/examples/_endpoints_update_response.md new file mode 100644 index 000000000..b51944108 --- /dev/null +++ b/docs/api/examples/_endpoints_update_response.md @@ -0,0 +1,25 @@ + + +#### Example Response + +```json +{ + "bindings": ["public"], + "created_at": "2024-11-15T17:26:24Z", + "description": "Sample Cloud Endpoint", + "domain": { + "id": "rd_2otayRn8tUpTvnhO9FEmOkyvO5e", + "uri": "https://api.ngrok.com/reserved_domains/rd_2otayRn8tUpTvnhO9FEmOkyvO5e" + }, + "hostport": "endpoint-example2.com:443", + "id": "ep_2otaz4XWOpuSj22v4N2sonYC3Wf", + "metadata": "{\"environment\": \"staging\"}", + "proto": "https", + "public_url": "https://endpoint-example2.com", + "traffic_policy": "{\"on_http_request\":[{\"actions\":[{\"type\":\"deny\",\"config\":{\"status_code\":404}}]}]}", + "type": "cloud", + "updated_at": "2024-11-15T17:26:25Z", + "uri": "https://api.ngrok.com/endpoints/ep_2otaz4XWOpuSj22v4N2sonYC3Wf", + "url": "https://endpoint-example2.com" +} +``` diff --git a/docs/api/examples/_event_destinations_create_request.md b/docs/api/examples/_event_destinations_create_request.md new file mode 100644 index 000000000..aed53a647 --- /dev/null +++ b/docs/api/examples/_event_destinations_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"kinesis dev stream","format":"json","metadata":"{\"environment\":\"dev\"}","target":{"kinesis":{"auth":{"role":{"role_arn":"arn:aws:iam::123456789012:role/example"}},"stream_arn":"arn:ngrok-local:kinesis:us-east-2:123456789012:stream/mystream2"}}}' \ +https://api.ngrok.com/event_destinations +``` diff --git a/docs/api/examples/_event_destinations_create_response.md b/docs/api/examples/_event_destinations_create_response.md new file mode 100644 index 000000000..7868483bb --- /dev/null +++ b/docs/api/examples/_event_destinations_create_response.md @@ -0,0 +1,29 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "description": "kinesis dev stream", + "format": "json", + "id": "ed_2otazKOTB9LMAYoxJdwWrHXcOGk", + "metadata": "{\"environment\":\"dev\"}", + "target": { + "azure_logs_ingestion": null, + "cloudwatch_logs": null, + "datadog": null, + "firehose": null, + "kinesis": { + "auth": { + "creds": null, + "role": { + "role_arn": "arn:aws:iam::123456789012:role/example" + } + }, + "stream_arn": "arn:ngrok-local:kinesis:us-east-2:123456789012:stream/mystream2" + } + }, + "uri": "https://api.ngrok.com/event_destinations/ed_2otazKOTB9LMAYoxJdwWrHXcOGk" +} +``` diff --git a/docs/api/examples/_event_destinations_delete_request.md b/docs/api/examples/_event_destinations_delete_request.md new file mode 100644 index 000000000..9d25e57b9 --- /dev/null +++ b/docs/api/examples/_event_destinations_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/event_destinations/ed_2otazKOTB9LMAYoxJdwWrHXcOGk +``` diff --git a/docs/api/examples/_event_destinations_delete_response.md b/docs/api/examples/_event_destinations_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_event_destinations_get_request.md b/docs/api/examples/_event_destinations_get_request.md new file mode 100644 index 000000000..7baacbc3e --- /dev/null +++ b/docs/api/examples/_event_destinations_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/event_destinations/ed_2otazKOTB9LMAYoxJdwWrHXcOGk +``` diff --git a/docs/api/examples/_event_destinations_get_response.md b/docs/api/examples/_event_destinations_get_response.md new file mode 100644 index 000000000..9dba0e3ae --- /dev/null +++ b/docs/api/examples/_event_destinations_get_response.md @@ -0,0 +1,29 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "description": "kinesis dev stream 1 of 3", + "format": "json", + "id": "ed_2otazKOTB9LMAYoxJdwWrHXcOGk", + "metadata": "{\"environment\":\"dev\", \"stream\":1}", + "target": { + "azure_logs_ingestion": null, + "cloudwatch_logs": null, + "datadog": null, + "firehose": null, + "kinesis": { + "auth": { + "creds": null, + "role": { + "role_arn": "arn:aws:iam::123456789012:role/example" + } + }, + "stream_arn": "arn:ngrok-local:kinesis:us-east-2:123456789012:stream/mystream2" + } + }, + "uri": "https://api.ngrok.com/event_destinations/ed_2otazKOTB9LMAYoxJdwWrHXcOGk" +} +``` diff --git a/docs/api/examples/_event_destinations_list_request.md b/docs/api/examples/_event_destinations_list_request.md new file mode 100644 index 000000000..6791e7514 --- /dev/null +++ b/docs/api/examples/_event_destinations_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/event_destinations +``` diff --git a/docs/api/examples/_event_destinations_list_response.md b/docs/api/examples/_event_destinations_list_response.md new file mode 100644 index 000000000..9b43f0086 --- /dev/null +++ b/docs/api/examples/_event_destinations_list_response.md @@ -0,0 +1,35 @@ + + +#### Example Response + +```json +{ + "event_destinations": [ + { + "created_at": "2024-11-15T17:26:26Z", + "description": "kinesis dev stream", + "format": "json", + "id": "ed_2otazKOTB9LMAYoxJdwWrHXcOGk", + "metadata": "{\"environment\":\"dev\"}", + "target": { + "azure_logs_ingestion": null, + "cloudwatch_logs": null, + "datadog": null, + "firehose": null, + "kinesis": { + "auth": { + "creds": null, + "role": { + "role_arn": "arn:aws:iam::123456789012:role/example" + } + }, + "stream_arn": "arn:ngrok-local:kinesis:us-east-2:123456789012:stream/mystream2" + } + }, + "uri": "https://api.ngrok.com/event_destinations/ed_2otazKOTB9LMAYoxJdwWrHXcOGk" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/event_destinations" +} +``` diff --git a/docs/api/examples/_event_destinations_update_request.md b/docs/api/examples/_event_destinations_update_request.md new file mode 100644 index 000000000..925a687f1 --- /dev/null +++ b/docs/api/examples/_event_destinations_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"kinesis dev stream 1 of 3","metadata":"{\"environment\":\"dev\", \"stream\":1}"}' \ +https://api.ngrok.com/event_destinations/ed_2otazKOTB9LMAYoxJdwWrHXcOGk +``` diff --git a/docs/api/examples/_event_destinations_update_response.md b/docs/api/examples/_event_destinations_update_response.md new file mode 100644 index 000000000..9dba0e3ae --- /dev/null +++ b/docs/api/examples/_event_destinations_update_response.md @@ -0,0 +1,29 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "description": "kinesis dev stream 1 of 3", + "format": "json", + "id": "ed_2otazKOTB9LMAYoxJdwWrHXcOGk", + "metadata": "{\"environment\":\"dev\", \"stream\":1}", + "target": { + "azure_logs_ingestion": null, + "cloudwatch_logs": null, + "datadog": null, + "firehose": null, + "kinesis": { + "auth": { + "creds": null, + "role": { + "role_arn": "arn:aws:iam::123456789012:role/example" + } + }, + "stream_arn": "arn:ngrok-local:kinesis:us-east-2:123456789012:stream/mystream2" + } + }, + "uri": "https://api.ngrok.com/event_destinations/ed_2otazKOTB9LMAYoxJdwWrHXcOGk" +} +``` diff --git a/docs/api/examples/_event_sources_create_request.md b/docs/api/examples/_event_sources_create_request.md new file mode 100644 index 000000000..179fd91cc --- /dev/null +++ b/docs/api/examples/_event_sources_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"type":"ip_policy_updated.v0"}' \ +https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources +``` diff --git a/docs/api/examples/_event_sources_create_response.md b/docs/api/examples/_event_sources_create_response.md new file mode 100644 index 000000000..cc364a434 --- /dev/null +++ b/docs/api/examples/_event_sources_create_response.md @@ -0,0 +1,10 @@ + + +#### Example Response + +```json +{ + "type": "ip_policy_updated.v0", + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources/ip_policy_updated.v0" +} +``` diff --git a/docs/api/examples/_event_sources_delete_request.md b/docs/api/examples/_event_sources_delete_request.md new file mode 100644 index 000000000..f081e57d2 --- /dev/null +++ b/docs/api/examples/_event_sources_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources/ip_policy_updated.v0 +``` diff --git a/docs/api/examples/_event_sources_delete_response.md b/docs/api/examples/_event_sources_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_event_sources_get_request.md b/docs/api/examples/_event_sources_get_request.md new file mode 100644 index 000000000..23518fd36 --- /dev/null +++ b/docs/api/examples/_event_sources_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources/ip_policy_updated.v0 +``` diff --git a/docs/api/examples/_event_sources_get_response.md b/docs/api/examples/_event_sources_get_response.md new file mode 100644 index 000000000..cc364a434 --- /dev/null +++ b/docs/api/examples/_event_sources_get_response.md @@ -0,0 +1,10 @@ + + +#### Example Response + +```json +{ + "type": "ip_policy_updated.v0", + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources/ip_policy_updated.v0" +} +``` diff --git a/docs/api/examples/_event_sources_list_request.md b/docs/api/examples/_event_sources_list_request.md new file mode 100644 index 000000000..e944d62ce --- /dev/null +++ b/docs/api/examples/_event_sources_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources +``` diff --git a/docs/api/examples/_event_sources_list_response.md b/docs/api/examples/_event_sources_list_response.md new file mode 100644 index 000000000..1d2c4e0ec --- /dev/null +++ b/docs/api/examples/_event_sources_list_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "sources": [ + { + "type": "ip_policy_created.v0", + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources/ip_policy_created.v0" + }, + { + "type": "ip_policy_updated.v0", + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources/ip_policy_updated.v0" + } + ], + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources" +} +``` diff --git a/docs/api/examples/_event_sources_update_request.md b/docs/api/examples/_event_sources_update_request.md new file mode 100644 index 000000000..08be2442c --- /dev/null +++ b/docs/api/examples/_event_sources_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{}' \ +https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources/ip_policy_updated.v0 +``` diff --git a/docs/api/examples/_event_sources_update_response.md b/docs/api/examples/_event_sources_update_response.md new file mode 100644 index 000000000..cc364a434 --- /dev/null +++ b/docs/api/examples/_event_sources_update_response.md @@ -0,0 +1,10 @@ + + +#### Example Response + +```json +{ + "type": "ip_policy_updated.v0", + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazLtM4WTpkcVn593O5bmxySx/sources/ip_policy_updated.v0" +} +``` diff --git a/docs/api/examples/_event_subscriptions_create_request.md b/docs/api/examples/_event_subscriptions_create_request.md new file mode 100644 index 000000000..be39ab9ab --- /dev/null +++ b/docs/api/examples/_event_subscriptions_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"ip policy creations","destination_ids":["ed_2otazJDoRL7RVQPMEBtEw0VI725"],"metadata":"{\"environment\": \"staging\"}","sources":[{"type":"ip_policy_created.v0"}]}' \ +https://api.ngrok.com/event_subscriptions +``` diff --git a/docs/api/examples/_event_subscriptions_create_response.md b/docs/api/examples/_event_subscriptions_create_response.md new file mode 100644 index 000000000..4127715e9 --- /dev/null +++ b/docs/api/examples/_event_subscriptions_create_response.md @@ -0,0 +1,25 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "description": "ip policy creations", + "destinations": [ + { + "id": "ed_2otazJDoRL7RVQPMEBtEw0VI725", + "uri": "https://api.ngrok.com/event_destinations/ed_2otazJDoRL7RVQPMEBtEw0VI725" + } + ], + "id": "esb_2otazJM5hqIr7TCxbfKPxP5H7Ac", + "metadata": "{\"environment\": \"staging\"}", + "sources": [ + { + "type": "ip_policy_created.v0", + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac/sources/ip_policy_created.v0" + } + ], + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac" +} +``` diff --git a/docs/api/examples/_event_subscriptions_delete_request.md b/docs/api/examples/_event_subscriptions_delete_request.md new file mode 100644 index 000000000..bfb9f3993 --- /dev/null +++ b/docs/api/examples/_event_subscriptions_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac +``` diff --git a/docs/api/examples/_event_subscriptions_delete_response.md b/docs/api/examples/_event_subscriptions_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_event_subscriptions_get_request.md b/docs/api/examples/_event_subscriptions_get_request.md new file mode 100644 index 000000000..7b1091f34 --- /dev/null +++ b/docs/api/examples/_event_subscriptions_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac +``` diff --git a/docs/api/examples/_event_subscriptions_get_response.md b/docs/api/examples/_event_subscriptions_get_response.md new file mode 100644 index 000000000..b7a3bc459 --- /dev/null +++ b/docs/api/examples/_event_subscriptions_get_response.md @@ -0,0 +1,25 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "description": "IP Policy Creations", + "destinations": [ + { + "id": "ed_2otazJDoRL7RVQPMEBtEw0VI725", + "uri": "https://api.ngrok.com/event_destinations/ed_2otazJDoRL7RVQPMEBtEw0VI725" + } + ], + "id": "esb_2otazJM5hqIr7TCxbfKPxP5H7Ac", + "metadata": "{\"environment\": \"staging\"}", + "sources": [ + { + "type": "ip_policy_created.v0", + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac/sources/ip_policy_created.v0" + } + ], + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac" +} +``` diff --git a/docs/api/examples/_event_subscriptions_list_request.md b/docs/api/examples/_event_subscriptions_list_request.md new file mode 100644 index 000000000..0e20ec91f --- /dev/null +++ b/docs/api/examples/_event_subscriptions_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/event_subscriptions +``` diff --git a/docs/api/examples/_event_subscriptions_list_response.md b/docs/api/examples/_event_subscriptions_list_response.md new file mode 100644 index 000000000..77cf70c57 --- /dev/null +++ b/docs/api/examples/_event_subscriptions_list_response.md @@ -0,0 +1,31 @@ + + +#### Example Response + +```json +{ + "event_subscriptions": [ + { + "created_at": "2024-11-15T17:26:26Z", + "description": "ip policy creations", + "destinations": [ + { + "id": "ed_2otazJDoRL7RVQPMEBtEw0VI725", + "uri": "https://api.ngrok.com/event_destinations/ed_2otazJDoRL7RVQPMEBtEw0VI725" + } + ], + "id": "esb_2otazJM5hqIr7TCxbfKPxP5H7Ac", + "metadata": "{\"environment\": \"staging\"}", + "sources": [ + { + "type": "ip_policy_created.v0", + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac/sources/ip_policy_created.v0" + } + ], + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/event_subscriptions" +} +``` diff --git a/docs/api/examples/_event_subscriptions_update_request.md b/docs/api/examples/_event_subscriptions_update_request.md new file mode 100644 index 000000000..06fd82e49 --- /dev/null +++ b/docs/api/examples/_event_subscriptions_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"IP Policy Creations"}' \ +https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac +``` diff --git a/docs/api/examples/_event_subscriptions_update_response.md b/docs/api/examples/_event_subscriptions_update_response.md new file mode 100644 index 000000000..b7a3bc459 --- /dev/null +++ b/docs/api/examples/_event_subscriptions_update_response.md @@ -0,0 +1,25 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "description": "IP Policy Creations", + "destinations": [ + { + "id": "ed_2otazJDoRL7RVQPMEBtEw0VI725", + "uri": "https://api.ngrok.com/event_destinations/ed_2otazJDoRL7RVQPMEBtEw0VI725" + } + ], + "id": "esb_2otazJM5hqIr7TCxbfKPxP5H7Ac", + "metadata": "{\"environment\": \"staging\"}", + "sources": [ + { + "type": "ip_policy_created.v0", + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac/sources/ip_policy_created.v0" + } + ], + "uri": "https://api.ngrok.com/event_subscriptions/esb_2otazJM5hqIr7TCxbfKPxP5H7Ac" +} +``` diff --git a/docs/api/examples/_failover_backends_create_request.md b/docs/api/examples/_failover_backends_create_request.md new file mode 100644 index 000000000..e1275cbc1 --- /dev/null +++ b/docs/api/examples/_failover_backends_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"backends":["bkdhr_2otazOowsPVOekffGVhSJr1Qh5E"],"description":"acme failover","metadata":"{\"environment\": \"staging\"}"}' \ +https://api.ngrok.com/backends/failover +``` diff --git a/docs/api/examples/_failover_backends_create_response.md b/docs/api/examples/_failover_backends_create_response.md new file mode 100644 index 000000000..7761d420f --- /dev/null +++ b/docs/api/examples/_failover_backends_create_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "backends": ["bkdhr_2otazOowsPVOekffGVhSJr1Qh5E"], + "created_at": "2024-11-15T17:26:27Z", + "description": "acme failover", + "id": "bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg", + "metadata": "{\"environment\": \"staging\"}", + "uri": "https://api.ngrok.com/backends/failover/bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg" +} +``` diff --git a/docs/api/examples/_failover_backends_delete_request.md b/docs/api/examples/_failover_backends_delete_request.md new file mode 100644 index 000000000..cd2bda445 --- /dev/null +++ b/docs/api/examples/_failover_backends_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/failover/bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg +``` diff --git a/docs/api/examples/_failover_backends_delete_response.md b/docs/api/examples/_failover_backends_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_failover_backends_get_request.md b/docs/api/examples/_failover_backends_get_request.md new file mode 100644 index 000000000..d11256478 --- /dev/null +++ b/docs/api/examples/_failover_backends_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/failover/bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg +``` diff --git a/docs/api/examples/_failover_backends_get_response.md b/docs/api/examples/_failover_backends_get_response.md new file mode 100644 index 000000000..7761d420f --- /dev/null +++ b/docs/api/examples/_failover_backends_get_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "backends": ["bkdhr_2otazOowsPVOekffGVhSJr1Qh5E"], + "created_at": "2024-11-15T17:26:27Z", + "description": "acme failover", + "id": "bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg", + "metadata": "{\"environment\": \"staging\"}", + "uri": "https://api.ngrok.com/backends/failover/bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg" +} +``` diff --git a/docs/api/examples/_failover_backends_list_request.md b/docs/api/examples/_failover_backends_list_request.md new file mode 100644 index 000000000..8169f344c --- /dev/null +++ b/docs/api/examples/_failover_backends_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/failover +``` diff --git a/docs/api/examples/_failover_backends_list_response.md b/docs/api/examples/_failover_backends_list_response.md new file mode 100644 index 000000000..3ca20e9f9 --- /dev/null +++ b/docs/api/examples/_failover_backends_list_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "backends": [ + { + "backends": ["bkdhr_2otazOowsPVOekffGVhSJr1Qh5E"], + "created_at": "2024-11-15T17:26:27Z", + "description": "acme failover", + "id": "bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg", + "metadata": "{\"environment\": \"staging\"}", + "uri": "https://api.ngrok.com/backends/failover/bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/backends/failover" +} +``` diff --git a/docs/api/examples/_failover_backends_update_request.md b/docs/api/examples/_failover_backends_update_request.md new file mode 100644 index 000000000..f20085037 --- /dev/null +++ b/docs/api/examples/_failover_backends_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"environment\": \"production\"}"}' \ +https://api.ngrok.com/backends/failover/bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg +``` diff --git a/docs/api/examples/_failover_backends_update_response.md b/docs/api/examples/_failover_backends_update_response.md new file mode 100644 index 000000000..1561ee1a5 --- /dev/null +++ b/docs/api/examples/_failover_backends_update_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "backends": [], + "created_at": "2024-11-15T17:26:27Z", + "description": "acme failover", + "id": "bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg", + "metadata": "{\"environment\": \"production\"}", + "uri": "https://api.ngrok.com/backends/failover/bkdfo_2otazQb4OD4rRQQjsuRFapN4fvg" +} +``` diff --git a/docs/api/examples/_http_response_backends_create_request.md b/docs/api/examples/_http_response_backends_create_request.md new file mode 100644 index 000000000..bdc9c9784 --- /dev/null +++ b/docs/api/examples/_http_response_backends_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"body":"I'm a teapot","description":"acme http response","headers":{"Content-Type":"text/plain"},"metadata":"{\"environment\": \"staging\"}","status_code":418}' \ +https://api.ngrok.com/backends/http_response +``` diff --git a/docs/api/examples/_http_response_backends_create_response.md b/docs/api/examples/_http_response_backends_create_response.md new file mode 100644 index 000000000..c50c7b939 --- /dev/null +++ b/docs/api/examples/_http_response_backends_create_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "body": "I'm a teapot", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme http response", + "headers": { + "content-type": "text/plain" + }, + "id": "bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS", + "metadata": "{\"environment\": \"staging\"}", + "status_code": 418, + "uri": "https://api.ngrok.com/backends/http_response/bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS" +} +``` diff --git a/docs/api/examples/_http_response_backends_delete_request.md b/docs/api/examples/_http_response_backends_delete_request.md new file mode 100644 index 000000000..8767a2d36 --- /dev/null +++ b/docs/api/examples/_http_response_backends_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/http_response/bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS +``` diff --git a/docs/api/examples/_http_response_backends_delete_response.md b/docs/api/examples/_http_response_backends_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_http_response_backends_get_request.md b/docs/api/examples/_http_response_backends_get_request.md new file mode 100644 index 000000000..35226c3ff --- /dev/null +++ b/docs/api/examples/_http_response_backends_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/http_response/bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS +``` diff --git a/docs/api/examples/_http_response_backends_get_response.md b/docs/api/examples/_http_response_backends_get_response.md new file mode 100644 index 000000000..c50c7b939 --- /dev/null +++ b/docs/api/examples/_http_response_backends_get_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "body": "I'm a teapot", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme http response", + "headers": { + "content-type": "text/plain" + }, + "id": "bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS", + "metadata": "{\"environment\": \"staging\"}", + "status_code": 418, + "uri": "https://api.ngrok.com/backends/http_response/bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS" +} +``` diff --git a/docs/api/examples/_http_response_backends_list_request.md b/docs/api/examples/_http_response_backends_list_request.md new file mode 100644 index 000000000..891538226 --- /dev/null +++ b/docs/api/examples/_http_response_backends_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/http_response +``` diff --git a/docs/api/examples/_http_response_backends_list_response.md b/docs/api/examples/_http_response_backends_list_response.md new file mode 100644 index 000000000..36152eecc --- /dev/null +++ b/docs/api/examples/_http_response_backends_list_response.md @@ -0,0 +1,40 @@ + + +#### Example Response + +```json +{ + "backends": [ + { + "body": "one", + "created_at": "2024-11-15T17:26:27Z", + "headers": null, + "id": "bkdhr_2otazOowsPVOekffGVhSJr1Qh5E", + "status_code": 200, + "uri": "https://api.ngrok.com/backends/http_response/bkdhr_2otazOowsPVOekffGVhSJr1Qh5E" + }, + { + "body": "I'm a teapot", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme http response", + "headers": { + "content-type": "text/plain" + }, + "id": "bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS", + "metadata": "{\"environment\": \"staging\"}", + "status_code": 418, + "uri": "https://api.ngrok.com/backends/http_response/bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS" + }, + { + "body": "one", + "created_at": "2024-11-15T17:26:19Z", + "headers": null, + "id": "bkdhr_2otayQoKLN6hs9P1uvflQ4iBfdE", + "status_code": 200, + "uri": "https://api.ngrok.com/backends/http_response/bkdhr_2otayQoKLN6hs9P1uvflQ4iBfdE" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/backends/http_response" +} +``` diff --git a/docs/api/examples/_http_response_backends_update_request.md b/docs/api/examples/_http_response_backends_update_request.md new file mode 100644 index 000000000..3cca5cdbe --- /dev/null +++ b/docs/api/examples/_http_response_backends_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"environment\": \"production\"}"}' \ +https://api.ngrok.com/backends/http_response/bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS +``` diff --git a/docs/api/examples/_http_response_backends_update_response.md b/docs/api/examples/_http_response_backends_update_response.md new file mode 100644 index 000000000..c79c5e9c9 --- /dev/null +++ b/docs/api/examples/_http_response_backends_update_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "body": "I'm a teapot", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme http response", + "headers": { + "content-type": "text/plain" + }, + "id": "bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS", + "metadata": "{\"environment\": \"production\"}", + "status_code": 418, + "uri": "https://api.ngrok.com/backends/http_response/bkdhr_2otazOAGZbL69FQxEOEBDg1yGVS" +} +``` diff --git a/docs/api/examples/_https_edge_mutual_tls_module_delete_request.md b/docs/api/examples/_https_edge_mutual_tls_module_delete_request.md new file mode 100644 index 000000000..c7ea5d458 --- /dev/null +++ b/docs/api/examples/_https_edge_mutual_tls_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otaztxTWLA3ZgFc30HigkYuDFl/mutual_tls +``` diff --git a/docs/api/examples/_https_edge_mutual_tls_module_delete_response.md b/docs/api/examples/_https_edge_mutual_tls_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_https_edge_mutual_tls_module_get_request.md b/docs/api/examples/_https_edge_mutual_tls_module_get_request.md new file mode 100644 index 000000000..c97d450e2 --- /dev/null +++ b/docs/api/examples/_https_edge_mutual_tls_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otaztxTWLA3ZgFc30HigkYuDFl/mutual_tls +``` diff --git a/docs/api/examples/_https_edge_mutual_tls_module_get_response.md b/docs/api/examples/_https_edge_mutual_tls_module_get_response.md new file mode 100644 index 000000000..5116d3ba4 --- /dev/null +++ b/docs/api/examples/_https_edge_mutual_tls_module_get_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "certificate_authorities": [ + { + "id": "ca_2otazuC8Fi05L7cmrSU3elitG3L", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazuC8Fi05L7cmrSU3elitG3L" + } + ], + "enabled": true +} +``` diff --git a/docs/api/examples/_https_edge_mutual_tls_module_replace_request.md b/docs/api/examples/_https_edge_mutual_tls_module_replace_request.md new file mode 100644 index 000000000..3e6c97415 --- /dev/null +++ b/docs/api/examples/_https_edge_mutual_tls_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"certificate_authority_ids":["ca_2otazuC8Fi05L7cmrSU3elitG3L"],"enabled":true}' \ +https://api.ngrok.com/edges/https/edghts_2otaztxTWLA3ZgFc30HigkYuDFl/mutual_tls +``` diff --git a/docs/api/examples/_https_edge_mutual_tls_module_replace_response.md b/docs/api/examples/_https_edge_mutual_tls_module_replace_response.md new file mode 100644 index 000000000..5116d3ba4 --- /dev/null +++ b/docs/api/examples/_https_edge_mutual_tls_module_replace_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "certificate_authorities": [ + { + "id": "ca_2otazuC8Fi05L7cmrSU3elitG3L", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazuC8Fi05L7cmrSU3elitG3L" + } + ], + "enabled": true +} +``` diff --git a/docs/api/examples/_https_edge_tls_termination_module_delete_request.md b/docs/api/examples/_https_edge_tls_termination_module_delete_request.md new file mode 100644 index 000000000..c54ed6f4a --- /dev/null +++ b/docs/api/examples/_https_edge_tls_termination_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazvLT02QHuFyAIMSLaqT04HT/tls_termination +``` diff --git a/docs/api/examples/_https_edge_tls_termination_module_delete_response.md b/docs/api/examples/_https_edge_tls_termination_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_https_edge_tls_termination_module_get_request.md b/docs/api/examples/_https_edge_tls_termination_module_get_request.md new file mode 100644 index 000000000..d530f74ec --- /dev/null +++ b/docs/api/examples/_https_edge_tls_termination_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/https/edghts_2otazvLT02QHuFyAIMSLaqT04HT/tls_termination +``` diff --git a/docs/api/examples/_https_edge_tls_termination_module_get_response.md b/docs/api/examples/_https_edge_tls_termination_module_get_response.md new file mode 100644 index 000000000..b80c13894 --- /dev/null +++ b/docs/api/examples/_https_edge_tls_termination_module_get_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "min_version": "1.3", + "terminate_at": "edge" +} +``` diff --git a/docs/api/examples/_https_edge_tls_termination_module_replace_request.md b/docs/api/examples/_https_edge_tls_termination_module_replace_request.md new file mode 100644 index 000000000..5665f9abe --- /dev/null +++ b/docs/api/examples/_https_edge_tls_termination_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"min_version":"1.3"}' \ +https://api.ngrok.com/edges/https/edghts_2otazvLT02QHuFyAIMSLaqT04HT/tls_termination +``` diff --git a/docs/api/examples/_https_edge_tls_termination_module_replace_response.md b/docs/api/examples/_https_edge_tls_termination_module_replace_response.md new file mode 100644 index 000000000..b80c13894 --- /dev/null +++ b/docs/api/examples/_https_edge_tls_termination_module_replace_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "min_version": "1.3", + "terminate_at": "edge" +} +``` diff --git a/docs/api/examples/_ip_policies_create_request.md b/docs/api/examples/_ip_policies_create_request.md new file mode 100644 index 000000000..e9360eb48 --- /dev/null +++ b/docs/api/examples/_ip_policies_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"API Outbound Gateway"}' \ +https://api.ngrok.com/ip_policies +``` diff --git a/docs/api/examples/_ip_policies_create_response.md b/docs/api/examples/_ip_policies_create_response.md new file mode 100644 index 000000000..93e0f8ac0 --- /dev/null +++ b/docs/api/examples/_ip_policies_create_response.md @@ -0,0 +1,12 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:02Z", + "description": "API Outbound Gateway", + "id": "ipp_2otawFurLJ2b5JPVu3pvio0467k", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otawFurLJ2b5JPVu3pvio0467k" +} +``` diff --git a/docs/api/examples/_ip_policies_delete_request.md b/docs/api/examples/_ip_policies_delete_request.md new file mode 100644 index 000000000..31bcb88e3 --- /dev/null +++ b/docs/api/examples/_ip_policies_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ip_policies/ipp_2otawFurLJ2b5JPVu3pvio0467k +``` diff --git a/docs/api/examples/_ip_policies_delete_response.md b/docs/api/examples/_ip_policies_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_ip_policies_get_request.md b/docs/api/examples/_ip_policies_get_request.md new file mode 100644 index 000000000..a680f9b55 --- /dev/null +++ b/docs/api/examples/_ip_policies_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ip_policies/ipp_2otawFurLJ2b5JPVu3pvio0467k +``` diff --git a/docs/api/examples/_ip_policies_get_response.md b/docs/api/examples/_ip_policies_get_response.md new file mode 100644 index 000000000..0e3d94de7 --- /dev/null +++ b/docs/api/examples/_ip_policies_get_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:02Z", + "description": "API Outbound Gateway", + "id": "ipp_2otawFurLJ2b5JPVu3pvio0467k", + "metadata": "metadata={\"pod-id\": \"b3d9c464-4f48-4783-a741-d7d7d5db310f\"}", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otawFurLJ2b5JPVu3pvio0467k" +} +``` diff --git a/docs/api/examples/_ip_policies_list_request.md b/docs/api/examples/_ip_policies_list_request.md new file mode 100644 index 000000000..8d8a49778 --- /dev/null +++ b/docs/api/examples/_ip_policies_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ip_policies +``` diff --git a/docs/api/examples/_ip_policies_list_response.md b/docs/api/examples/_ip_policies_list_response.md new file mode 100644 index 000000000..6e9983f24 --- /dev/null +++ b/docs/api/examples/_ip_policies_list_response.md @@ -0,0 +1,24 @@ + + +#### Example Response + +```json +{ + "ip_policies": [ + { + "created_at": "2024-11-15T17:26:02Z", + "description": "API Outbound Gateway", + "id": "ipp_2otawFurLJ2b5JPVu3pvio0467k", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otawFurLJ2b5JPVu3pvio0467k" + }, + { + "created_at": "2024-11-15T17:26:02Z", + "description": "Developer Environments", + "id": "ipp_2otawFbD5Aa9z99GpgRCkGW29I0", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otawFbD5Aa9z99GpgRCkGW29I0" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/ip_policies" +} +``` diff --git a/docs/api/examples/_ip_policies_update_request.md b/docs/api/examples/_ip_policies_update_request.md new file mode 100644 index 000000000..e64382b20 --- /dev/null +++ b/docs/api/examples/_ip_policies_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"metadata={\"pod-id\": \"b3d9c464-4f48-4783-a741-d7d7d5db310f\"}"}' \ +https://api.ngrok.com/ip_policies/ipp_2otawFurLJ2b5JPVu3pvio0467k +``` diff --git a/docs/api/examples/_ip_policies_update_response.md b/docs/api/examples/_ip_policies_update_response.md new file mode 100644 index 000000000..0e3d94de7 --- /dev/null +++ b/docs/api/examples/_ip_policies_update_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:02Z", + "description": "API Outbound Gateway", + "id": "ipp_2otawFurLJ2b5JPVu3pvio0467k", + "metadata": "metadata={\"pod-id\": \"b3d9c464-4f48-4783-a741-d7d7d5db310f\"}", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otawFurLJ2b5JPVu3pvio0467k" +} +``` diff --git a/docs/api/examples/_ip_policy_rules_create_request.md b/docs/api/examples/_ip_policy_rules_create_request.md new file mode 100644 index 000000000..457f85f13 --- /dev/null +++ b/docs/api/examples/_ip_policy_rules_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"action":"allow","cidr":"212.3.14.0/24","description":"nyc office","ip_policy_id":"ipp_2otazD3QphwUci0UObCwfTFzzcL"}' \ +https://api.ngrok.com/ip_policy_rules +``` diff --git a/docs/api/examples/_ip_policy_rules_create_response.md b/docs/api/examples/_ip_policy_rules_create_response.md new file mode 100644 index 000000000..1ed2a6324 --- /dev/null +++ b/docs/api/examples/_ip_policy_rules_create_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "action": "allow", + "cidr": "212.3.14.0/24", + "created_at": "2024-11-15T17:26:25Z", + "description": "nyc office", + "id": "ipr_2otazFu8choMKEBxFCsAgcaPvYK", + "ip_policy": { + "id": "ipp_2otazD3QphwUci0UObCwfTFzzcL", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazD3QphwUci0UObCwfTFzzcL" + }, + "uri": "https://api.ngrok.com/ip_policy_rules/ipr_2otazFu8choMKEBxFCsAgcaPvYK" +} +``` diff --git a/docs/api/examples/_ip_policy_rules_delete_request.md b/docs/api/examples/_ip_policy_rules_delete_request.md new file mode 100644 index 000000000..edb6627b6 --- /dev/null +++ b/docs/api/examples/_ip_policy_rules_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ip_policy_rules/ipr_2otazFu8choMKEBxFCsAgcaPvYK +``` diff --git a/docs/api/examples/_ip_policy_rules_delete_response.md b/docs/api/examples/_ip_policy_rules_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_ip_policy_rules_get_request.md b/docs/api/examples/_ip_policy_rules_get_request.md new file mode 100644 index 000000000..0a09a1ef1 --- /dev/null +++ b/docs/api/examples/_ip_policy_rules_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ip_policy_rules/ipr_2otazFu8choMKEBxFCsAgcaPvYK +``` diff --git a/docs/api/examples/_ip_policy_rules_get_response.md b/docs/api/examples/_ip_policy_rules_get_response.md new file mode 100644 index 000000000..d0987809b --- /dev/null +++ b/docs/api/examples/_ip_policy_rules_get_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "action": "allow", + "cidr": "212.3.15.0/24", + "created_at": "2024-11-15T17:26:25Z", + "description": "nyc office", + "id": "ipr_2otazFu8choMKEBxFCsAgcaPvYK", + "ip_policy": { + "id": "ipp_2otazD3QphwUci0UObCwfTFzzcL", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazD3QphwUci0UObCwfTFzzcL" + }, + "uri": "https://api.ngrok.com/ip_policy_rules/ipr_2otazFu8choMKEBxFCsAgcaPvYK" +} +``` diff --git a/docs/api/examples/_ip_policy_rules_list_request.md b/docs/api/examples/_ip_policy_rules_list_request.md new file mode 100644 index 000000000..a0afefcd6 --- /dev/null +++ b/docs/api/examples/_ip_policy_rules_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ip_policy_rules +``` diff --git a/docs/api/examples/_ip_policy_rules_list_response.md b/docs/api/examples/_ip_policy_rules_list_response.md new file mode 100644 index 000000000..3cc15c0e3 --- /dev/null +++ b/docs/api/examples/_ip_policy_rules_list_response.md @@ -0,0 +1,48 @@ + + +#### Example Response + +```json +{ + "ip_policy_rules": [ + { + "action": "allow", + "cidr": "212.3.14.0/24", + "created_at": "2024-11-15T17:26:25Z", + "description": "nyc office", + "id": "ipr_2otazFu8choMKEBxFCsAgcaPvYK", + "ip_policy": { + "id": "ipp_2otazD3QphwUci0UObCwfTFzzcL", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazD3QphwUci0UObCwfTFzzcL" + }, + "uri": "https://api.ngrok.com/ip_policy_rules/ipr_2otazFu8choMKEBxFCsAgcaPvYK" + }, + { + "action": "allow", + "cidr": "2.2.2.2/32", + "created_at": "2024-11-15T17:26:25Z", + "description": "alan laptop", + "id": "ipr_2otazCDSIR8eF3Y5gqPYviHnfDs", + "ip_policy": { + "id": "ipp_2otazD3QphwUci0UObCwfTFzzcL", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazD3QphwUci0UObCwfTFzzcL" + }, + "uri": "https://api.ngrok.com/ip_policy_rules/ipr_2otazCDSIR8eF3Y5gqPYviHnfDs" + }, + { + "action": "allow", + "cidr": "132.2.19.0/24", + "created_at": "2024-11-15T17:26:25Z", + "description": "sf office", + "id": "ipr_2otazAtXdF1jNYf0SgeKvlOeaJX", + "ip_policy": { + "id": "ipp_2otazD3QphwUci0UObCwfTFzzcL", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazD3QphwUci0UObCwfTFzzcL" + }, + "uri": "https://api.ngrok.com/ip_policy_rules/ipr_2otazAtXdF1jNYf0SgeKvlOeaJX" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/ip_policy_rules" +} +``` diff --git a/docs/api/examples/_ip_policy_rules_update_request.md b/docs/api/examples/_ip_policy_rules_update_request.md new file mode 100644 index 000000000..786dc75b8 --- /dev/null +++ b/docs/api/examples/_ip_policy_rules_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"cidr":"212.3.15.0/24"}' \ +https://api.ngrok.com/ip_policy_rules/ipr_2otazFu8choMKEBxFCsAgcaPvYK +``` diff --git a/docs/api/examples/_ip_policy_rules_update_response.md b/docs/api/examples/_ip_policy_rules_update_response.md new file mode 100644 index 000000000..d0987809b --- /dev/null +++ b/docs/api/examples/_ip_policy_rules_update_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "action": "allow", + "cidr": "212.3.15.0/24", + "created_at": "2024-11-15T17:26:25Z", + "description": "nyc office", + "id": "ipr_2otazFu8choMKEBxFCsAgcaPvYK", + "ip_policy": { + "id": "ipp_2otazD3QphwUci0UObCwfTFzzcL", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazD3QphwUci0UObCwfTFzzcL" + }, + "uri": "https://api.ngrok.com/ip_policy_rules/ipr_2otazFu8choMKEBxFCsAgcaPvYK" +} +``` diff --git a/docs/api/examples/_ip_restrictions_create_request.md b/docs/api/examples/_ip_restrictions_create_request.md new file mode 100644 index 000000000..61f1f8dc5 --- /dev/null +++ b/docs/api/examples/_ip_restrictions_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"ip_policy_ids":["ipp_2otazHAASurOT6BDADJFtOGQngs"],"type":"dashboard"}' \ +https://api.ngrok.com/ip_restrictions +``` diff --git a/docs/api/examples/_ip_restrictions_create_response.md b/docs/api/examples/_ip_restrictions_create_response.md new file mode 100644 index 000000000..dad5fc45e --- /dev/null +++ b/docs/api/examples/_ip_restrictions_create_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "enforced": false, + "id": "ipx_2otazGpt9931HXxeZd2l9aEa9BI", + "ip_policies": [ + { + "id": "ipp_2otazHAASurOT6BDADJFtOGQngs", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazHAASurOT6BDADJFtOGQngs" + } + ], + "type": "dashboard", + "uri": "https://api.ngrok.com/ip_restrictions/ipx_2otazGpt9931HXxeZd2l9aEa9BI" +} +``` diff --git a/docs/api/examples/_ip_restrictions_delete_request.md b/docs/api/examples/_ip_restrictions_delete_request.md new file mode 100644 index 000000000..c5839bf75 --- /dev/null +++ b/docs/api/examples/_ip_restrictions_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ip_restrictions/ipx_2otazGpt9931HXxeZd2l9aEa9BI +``` diff --git a/docs/api/examples/_ip_restrictions_delete_response.md b/docs/api/examples/_ip_restrictions_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_ip_restrictions_get_request.md b/docs/api/examples/_ip_restrictions_get_request.md new file mode 100644 index 000000000..68f90d8f1 --- /dev/null +++ b/docs/api/examples/_ip_restrictions_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ip_restrictions/ipx_2otazGpt9931HXxeZd2l9aEa9BI +``` diff --git a/docs/api/examples/_ip_restrictions_get_response.md b/docs/api/examples/_ip_restrictions_get_response.md new file mode 100644 index 000000000..981dfeb69 --- /dev/null +++ b/docs/api/examples/_ip_restrictions_get_response.md @@ -0,0 +1,23 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "enforced": false, + "id": "ipx_2otazGpt9931HXxeZd2l9aEa9BI", + "ip_policies": [ + { + "id": "ipp_2otazHAASurOT6BDADJFtOGQngs", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazHAASurOT6BDADJFtOGQngs" + }, + { + "id": "ipp_2otazGMmRCPaKw8OnflPs1MNnI3", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazGMmRCPaKw8OnflPs1MNnI3" + } + ], + "type": "dashboard", + "uri": "https://api.ngrok.com/ip_restrictions/ipx_2otazGpt9931HXxeZd2l9aEa9BI" +} +``` diff --git a/docs/api/examples/_ip_restrictions_list_request.md b/docs/api/examples/_ip_restrictions_list_request.md new file mode 100644 index 000000000..3b08bb0da --- /dev/null +++ b/docs/api/examples/_ip_restrictions_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ip_restrictions +``` diff --git a/docs/api/examples/_ip_restrictions_list_response.md b/docs/api/examples/_ip_restrictions_list_response.md new file mode 100644 index 000000000..e45af7f38 --- /dev/null +++ b/docs/api/examples/_ip_restrictions_list_response.md @@ -0,0 +1,25 @@ + + +#### Example Response + +```json +{ + "ip_restrictions": [ + { + "created_at": "2024-11-15T17:26:26Z", + "enforced": false, + "id": "ipx_2otazGpt9931HXxeZd2l9aEa9BI", + "ip_policies": [ + { + "id": "ipp_2otazHAASurOT6BDADJFtOGQngs", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazHAASurOT6BDADJFtOGQngs" + } + ], + "type": "dashboard", + "uri": "https://api.ngrok.com/ip_restrictions/ipx_2otazGpt9931HXxeZd2l9aEa9BI" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/ip_restrictions" +} +``` diff --git a/docs/api/examples/_ip_restrictions_update_request.md b/docs/api/examples/_ip_restrictions_update_request.md new file mode 100644 index 000000000..eb17f29b5 --- /dev/null +++ b/docs/api/examples/_ip_restrictions_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"ip_policy_ids":["ipp_2otazHAASurOT6BDADJFtOGQngs","ipp_2otazGMmRCPaKw8OnflPs1MNnI3"]}' \ +https://api.ngrok.com/ip_restrictions/ipx_2otazGpt9931HXxeZd2l9aEa9BI +``` diff --git a/docs/api/examples/_ip_restrictions_update_response.md b/docs/api/examples/_ip_restrictions_update_response.md new file mode 100644 index 000000000..981dfeb69 --- /dev/null +++ b/docs/api/examples/_ip_restrictions_update_response.md @@ -0,0 +1,23 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "enforced": false, + "id": "ipx_2otazGpt9931HXxeZd2l9aEa9BI", + "ip_policies": [ + { + "id": "ipp_2otazHAASurOT6BDADJFtOGQngs", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazHAASurOT6BDADJFtOGQngs" + }, + { + "id": "ipp_2otazGMmRCPaKw8OnflPs1MNnI3", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazGMmRCPaKw8OnflPs1MNnI3" + } + ], + "type": "dashboard", + "uri": "https://api.ngrok.com/ip_restrictions/ipx_2otazGpt9931HXxeZd2l9aEa9BI" +} +``` diff --git a/docs/api/examples/_reserved_addrs_create_request.md b/docs/api/examples/_reserved_addrs_create_request.md new file mode 100644 index 000000000..630eda828 --- /dev/null +++ b/docs/api/examples/_reserved_addrs_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"SSH for device #001","region":"us"}' \ +https://api.ngrok.com/reserved_addrs +``` diff --git a/docs/api/examples/_reserved_addrs_create_response.md b/docs/api/examples/_reserved_addrs_create_response.md new file mode 100644 index 000000000..ceb8c3cf2 --- /dev/null +++ b/docs/api/examples/_reserved_addrs_create_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "addr": "1.tcp.ngrok.io:20000", + "created_at": "2024-11-15T17:26:03Z", + "description": "SSH for device #001", + "endpoint_configuration": null, + "id": "ra_2otawNLK1WMKvV33Qzdgr0GCJgr", + "region": "us", + "uri": "https://api.ngrok.com/reserved_addrs/ra_2otawNLK1WMKvV33Qzdgr0GCJgr" +} +``` diff --git a/docs/api/examples/_reserved_addrs_delete_endpoint_config_request.md b/docs/api/examples/_reserved_addrs_delete_endpoint_config_request.md new file mode 100644 index 000000000..25dc3ac1b --- /dev/null +++ b/docs/api/examples/_reserved_addrs_delete_endpoint_config_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_addrs/ra_2otawNLK1WMKvV33Qzdgr0GCJgr/endpoint_configuration +``` diff --git a/docs/api/examples/_reserved_addrs_delete_endpoint_config_response.md b/docs/api/examples/_reserved_addrs_delete_endpoint_config_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_reserved_addrs_delete_request.md b/docs/api/examples/_reserved_addrs_delete_request.md new file mode 100644 index 000000000..6214a0967 --- /dev/null +++ b/docs/api/examples/_reserved_addrs_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_addrs/ra_2otawNLK1WMKvV33Qzdgr0GCJgr +``` diff --git a/docs/api/examples/_reserved_addrs_delete_response.md b/docs/api/examples/_reserved_addrs_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_reserved_addrs_get_request.md b/docs/api/examples/_reserved_addrs_get_request.md new file mode 100644 index 000000000..9b3af0c72 --- /dev/null +++ b/docs/api/examples/_reserved_addrs_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_addrs/ra_2otawNLK1WMKvV33Qzdgr0GCJgr +``` diff --git a/docs/api/examples/_reserved_addrs_get_response.md b/docs/api/examples/_reserved_addrs_get_response.md new file mode 100644 index 000000000..e6c458c08 --- /dev/null +++ b/docs/api/examples/_reserved_addrs_get_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "addr": "1.tcp.ngrok.io:20000", + "created_at": "2024-11-15T17:26:03Z", + "description": "SSH for device #001", + "endpoint_configuration": { + "id": "ec_2otawODfALz5UJ3zd4jfosYkMk5", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawODfALz5UJ3zd4jfosYkMk5" + }, + "id": "ra_2otawNLK1WMKvV33Qzdgr0GCJgr", + "metadata": "{\"proto\": \"ssh\"}", + "region": "us", + "uri": "https://api.ngrok.com/reserved_addrs/ra_2otawNLK1WMKvV33Qzdgr0GCJgr" +} +``` diff --git a/docs/api/examples/_reserved_addrs_list_request.md b/docs/api/examples/_reserved_addrs_list_request.md new file mode 100644 index 000000000..91ba67d1f --- /dev/null +++ b/docs/api/examples/_reserved_addrs_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_addrs +``` diff --git a/docs/api/examples/_reserved_addrs_list_response.md b/docs/api/examples/_reserved_addrs_list_response.md new file mode 100644 index 000000000..0d8439471 --- /dev/null +++ b/docs/api/examples/_reserved_addrs_list_response.md @@ -0,0 +1,21 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "reserved_addrs": [ + { + "addr": "1.tcp.ngrok.io:20000", + "created_at": "2024-11-15T17:26:03Z", + "description": "SSH for device #001", + "endpoint_configuration": null, + "id": "ra_2otawNLK1WMKvV33Qzdgr0GCJgr", + "region": "us", + "uri": "https://api.ngrok.com/reserved_addrs/ra_2otawNLK1WMKvV33Qzdgr0GCJgr" + } + ], + "uri": "https://api.ngrok.com/reserved_addrs" +} +``` diff --git a/docs/api/examples/_reserved_addrs_update_request.md b/docs/api/examples/_reserved_addrs_update_request.md new file mode 100644 index 000000000..c0e29f932 --- /dev/null +++ b/docs/api/examples/_reserved_addrs_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"endpoint_configuration_id":"ec_2otawODfALz5UJ3zd4jfosYkMk5","metadata":"{\"proto\": \"ssh\"}"}' \ +https://api.ngrok.com/reserved_addrs/ra_2otawNLK1WMKvV33Qzdgr0GCJgr +``` diff --git a/docs/api/examples/_reserved_addrs_update_response.md b/docs/api/examples/_reserved_addrs_update_response.md new file mode 100644 index 000000000..e6c458c08 --- /dev/null +++ b/docs/api/examples/_reserved_addrs_update_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "addr": "1.tcp.ngrok.io:20000", + "created_at": "2024-11-15T17:26:03Z", + "description": "SSH for device #001", + "endpoint_configuration": { + "id": "ec_2otawODfALz5UJ3zd4jfosYkMk5", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawODfALz5UJ3zd4jfosYkMk5" + }, + "id": "ra_2otawNLK1WMKvV33Qzdgr0GCJgr", + "metadata": "{\"proto\": \"ssh\"}", + "region": "us", + "uri": "https://api.ngrok.com/reserved_addrs/ra_2otawNLK1WMKvV33Qzdgr0GCJgr" +} +``` diff --git a/docs/api/examples/_reserved_domains_create_request.md b/docs/api/examples/_reserved_domains_create_request.md new file mode 100644 index 000000000..407e3a086 --- /dev/null +++ b/docs/api/examples/_reserved_domains_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"certificate_id":"cert_2otawSZAphGXQllehlCkiJ9v7ZA","domain":"myapp.mydomain.com","region":"us"}' \ +https://api.ngrok.com/reserved_domains +``` diff --git a/docs/api/examples/_reserved_domains_create_response.md b/docs/api/examples/_reserved_domains_create_response.md new file mode 100644 index 000000000..2e986307c --- /dev/null +++ b/docs/api/examples/_reserved_domains_create_response.md @@ -0,0 +1,24 @@ + + +#### Example Response + +```json +{ + "acme_challenge_cname_target": null, + "certificate": { + "id": "cert_2otawSZAphGXQllehlCkiJ9v7ZA", + "uri": "https://api.ngrok.com/tls_certificates/cert_2otawSZAphGXQllehlCkiJ9v7ZA" + }, + "certificate_management_policy": null, + "certificate_management_status": null, + "cname_target": "2udamkamcl8pjmrff.2skbva3d9zxgubr2x.local-ngrok-cname.com", + "created_at": "2024-11-15T17:26:03Z", + "domain": "myapp.mydomain.com", + "error_redirect_url": null, + "http_endpoint_configuration": null, + "https_endpoint_configuration": null, + "id": "rd_2otawTEGw7xxS5i7zCYsDfx9yKv", + "region": "", + "uri": "https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv" +} +``` diff --git a/docs/api/examples/_reserved_domains_delete_certificate_management_policy_request.md b/docs/api/examples/_reserved_domains_delete_certificate_management_policy_request.md new file mode 100644 index 000000000..3f1016f09 --- /dev/null +++ b/docs/api/examples/_reserved_domains_delete_certificate_management_policy_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv/certificate_management_policy +``` diff --git a/docs/api/examples/_reserved_domains_delete_certificate_management_policy_response.md b/docs/api/examples/_reserved_domains_delete_certificate_management_policy_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_reserved_domains_delete_certificate_request.md b/docs/api/examples/_reserved_domains_delete_certificate_request.md new file mode 100644 index 000000000..669590e2d --- /dev/null +++ b/docs/api/examples/_reserved_domains_delete_certificate_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv/certificate +``` diff --git a/docs/api/examples/_reserved_domains_delete_certificate_response.md b/docs/api/examples/_reserved_domains_delete_certificate_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_reserved_domains_delete_http_endpoint_config_request.md b/docs/api/examples/_reserved_domains_delete_http_endpoint_config_request.md new file mode 100644 index 000000000..1f32233fe --- /dev/null +++ b/docs/api/examples/_reserved_domains_delete_http_endpoint_config_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv/http_endpoint_configuration +``` diff --git a/docs/api/examples/_reserved_domains_delete_http_endpoint_config_response.md b/docs/api/examples/_reserved_domains_delete_http_endpoint_config_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_reserved_domains_delete_https_endpoint_config_request.md b/docs/api/examples/_reserved_domains_delete_https_endpoint_config_request.md new file mode 100644 index 000000000..b6141ad1f --- /dev/null +++ b/docs/api/examples/_reserved_domains_delete_https_endpoint_config_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv/https_endpoint_configuration +``` diff --git a/docs/api/examples/_reserved_domains_delete_https_endpoint_config_response.md b/docs/api/examples/_reserved_domains_delete_https_endpoint_config_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_reserved_domains_delete_request.md b/docs/api/examples/_reserved_domains_delete_request.md new file mode 100644 index 000000000..1ba4db789 --- /dev/null +++ b/docs/api/examples/_reserved_domains_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv +``` diff --git a/docs/api/examples/_reserved_domains_delete_response.md b/docs/api/examples/_reserved_domains_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_reserved_domains_get_request.md b/docs/api/examples/_reserved_domains_get_request.md new file mode 100644 index 000000000..b687d4209 --- /dev/null +++ b/docs/api/examples/_reserved_domains_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv +``` diff --git a/docs/api/examples/_reserved_domains_get_response.md b/docs/api/examples/_reserved_domains_get_response.md new file mode 100644 index 000000000..252a53dc6 --- /dev/null +++ b/docs/api/examples/_reserved_domains_get_response.md @@ -0,0 +1,32 @@ + + +#### Example Response + +```json +{ + "acme_challenge_cname_target": null, + "certificate": null, + "certificate_management_policy": { + "authority": "letsencrypt", + "private_key_type": "ecdsa" + }, + "certificate_management_status": null, + "cname_target": "2udamkamcl8pjmrff.2skbva3d9zxgubr2x.local-ngrok-cname.com", + "created_at": "2024-11-15T17:26:03Z", + "description": "point-of-sale new york #302", + "domain": "myapp.mydomain.com", + "error_redirect_url": null, + "http_endpoint_configuration": { + "id": "ec_2otawTrkYIcKC4zJE2upGGRm6Td", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawTrkYIcKC4zJE2upGGRm6Td" + }, + "https_endpoint_configuration": { + "id": "ec_2otawTfW5IZEfU7RisgzOA0dj6v", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawTfW5IZEfU7RisgzOA0dj6v" + }, + "id": "rd_2otawTEGw7xxS5i7zCYsDfx9yKv", + "metadata": "{env: \"staging\", \"connector_id\":\"64698fcc-5f5c-4b63-910e-8669d04bd943\"}", + "region": "", + "uri": "https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv" +} +``` diff --git a/docs/api/examples/_reserved_domains_list_request.md b/docs/api/examples/_reserved_domains_list_request.md new file mode 100644 index 000000000..23d2a296e --- /dev/null +++ b/docs/api/examples/_reserved_domains_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/reserved_domains +``` diff --git a/docs/api/examples/_reserved_domains_list_response.md b/docs/api/examples/_reserved_domains_list_response.md new file mode 100644 index 000000000..24e276b73 --- /dev/null +++ b/docs/api/examples/_reserved_domains_list_response.md @@ -0,0 +1,58 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "reserved_domains": [ + { + "acme_challenge_cname_target": null, + "certificate": { + "id": "cert_2otawSZAphGXQllehlCkiJ9v7ZA", + "uri": "https://api.ngrok.com/tls_certificates/cert_2otawSZAphGXQllehlCkiJ9v7ZA" + }, + "certificate_management_policy": null, + "certificate_management_status": null, + "cname_target": "2udamkamcl8pjmrff.2skbva3d9zxgubr2x.local-ngrok-cname.com", + "created_at": "2024-11-15T17:26:03Z", + "domain": "myapp.mydomain.com", + "error_redirect_url": null, + "http_endpoint_configuration": null, + "https_endpoint_configuration": null, + "id": "rd_2otawTEGw7xxS5i7zCYsDfx9yKv", + "region": "", + "uri": "https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv" + }, + { + "acme_challenge_cname_target": null, + "certificate": null, + "certificate_management_policy": { + "authority": "letsencrypt", + "private_key_type": "ecdsa" + }, + "certificate_management_status": { + "provisioning_job": { + "error_code": null, + "msg": "Managed certificate provisioning in progress.", + "retries_at": null, + "started_at": "2024-11-15T17:26:03Z" + }, + "renews_at": null + }, + "cname_target": "4knqktdwka2umyjjc.2skbva3d9zxgubr2x.local-ngrok-cname.com", + "created_at": "2024-11-15T17:26:03Z", + "description": "Device 0001 Dashboard", + "domain": "manage-0002.app.example.com", + "error_redirect_url": null, + "http_endpoint_configuration": null, + "https_endpoint_configuration": null, + "id": "rd_2otawOrM4KRwfzljjyq0PSoOivg", + "metadata": "{\"service\": \"dashboard\"}", + "region": "", + "uri": "https://api.ngrok.com/reserved_domains/rd_2otawOrM4KRwfzljjyq0PSoOivg" + } + ], + "uri": "https://api.ngrok.com/reserved_domains" +} +``` diff --git a/docs/api/examples/_reserved_domains_update_request.md b/docs/api/examples/_reserved_domains_update_request.md new file mode 100644 index 000000000..c0c8be381 --- /dev/null +++ b/docs/api/examples/_reserved_domains_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"certificate_management_policy":{"authority":"letsencrypt"},"description":"point-of-sale new york #302","http_endpoint_configuration_id":"ec_2otawTrkYIcKC4zJE2upGGRm6Td","https_endpoint_configuration_id":"ec_2otawTfW5IZEfU7RisgzOA0dj6v","metadata":"{env: \"staging\", \"connector_id\":\"64698fcc-5f5c-4b63-910e-8669d04bd943\"}"}' \ +https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv +``` diff --git a/docs/api/examples/_reserved_domains_update_response.md b/docs/api/examples/_reserved_domains_update_response.md new file mode 100644 index 000000000..252a53dc6 --- /dev/null +++ b/docs/api/examples/_reserved_domains_update_response.md @@ -0,0 +1,32 @@ + + +#### Example Response + +```json +{ + "acme_challenge_cname_target": null, + "certificate": null, + "certificate_management_policy": { + "authority": "letsencrypt", + "private_key_type": "ecdsa" + }, + "certificate_management_status": null, + "cname_target": "2udamkamcl8pjmrff.2skbva3d9zxgubr2x.local-ngrok-cname.com", + "created_at": "2024-11-15T17:26:03Z", + "description": "point-of-sale new york #302", + "domain": "myapp.mydomain.com", + "error_redirect_url": null, + "http_endpoint_configuration": { + "id": "ec_2otawTrkYIcKC4zJE2upGGRm6Td", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawTrkYIcKC4zJE2upGGRm6Td" + }, + "https_endpoint_configuration": { + "id": "ec_2otawTfW5IZEfU7RisgzOA0dj6v", + "uri": "https://api.ngrok.com/endpoint_configurations/ec_2otawTfW5IZEfU7RisgzOA0dj6v" + }, + "id": "rd_2otawTEGw7xxS5i7zCYsDfx9yKv", + "metadata": "{env: \"staging\", \"connector_id\":\"64698fcc-5f5c-4b63-910e-8669d04bd943\"}", + "region": "", + "uri": "https://api.ngrok.com/reserved_domains/rd_2otawTEGw7xxS5i7zCYsDfx9yKv" +} +``` diff --git a/docs/api/examples/_ssh_certificate_authorities_create_request.md b/docs/api/examples/_ssh_certificate_authorities_create_request.md new file mode 100644 index 000000000..ff893bc5c --- /dev/null +++ b/docs/api/examples/_ssh_certificate_authorities_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"Staging Environment Hosts","private_key_type":"ed25519"}' \ +https://api.ngrok.com/ssh_certificate_authorities +``` diff --git a/docs/api/examples/_ssh_certificate_authorities_create_response.md b/docs/api/examples/_ssh_certificate_authorities_create_response.md new file mode 100644 index 000000000..3ef12388a --- /dev/null +++ b/docs/api/examples/_ssh_certificate_authorities_create_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "description": "Staging Environment Hosts", + "id": "sshca_2otazKpsS8N40p8IA7VXraiSzhg", + "key_type": "ed25519", + "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB79sr7xDTMCRI/Arjl7CVFUW8YtuiUqrDgGHyOJ8/8k", + "uri": "https://api.ngrok.com/ssh_certificate_authorities/sshca_2otazKpsS8N40p8IA7VXraiSzhg" +} +``` diff --git a/docs/api/examples/_ssh_certificate_authorities_delete_request.md b/docs/api/examples/_ssh_certificate_authorities_delete_request.md new file mode 100644 index 000000000..4784ee161 --- /dev/null +++ b/docs/api/examples/_ssh_certificate_authorities_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_certificate_authorities/sshca_2otazKpsS8N40p8IA7VXraiSzhg +``` diff --git a/docs/api/examples/_ssh_certificate_authorities_delete_response.md b/docs/api/examples/_ssh_certificate_authorities_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_ssh_certificate_authorities_get_request.md b/docs/api/examples/_ssh_certificate_authorities_get_request.md new file mode 100644 index 000000000..ec875af43 --- /dev/null +++ b/docs/api/examples/_ssh_certificate_authorities_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_certificate_authorities/sshca_2otazKpsS8N40p8IA7VXraiSzhg +``` diff --git a/docs/api/examples/_ssh_certificate_authorities_get_response.md b/docs/api/examples/_ssh_certificate_authorities_get_response.md new file mode 100644 index 000000000..7adda1861 --- /dev/null +++ b/docs/api/examples/_ssh_certificate_authorities_get_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "description": "Staging Environment Hosts", + "id": "sshca_2otazKpsS8N40p8IA7VXraiSzhg", + "key_type": "ed25519", + "metadata": "{\"region\": \"us-east-1\"}", + "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB79sr7xDTMCRI/Arjl7CVFUW8YtuiUqrDgGHyOJ8/8k", + "uri": "https://api.ngrok.com/ssh_certificate_authorities/sshca_2otazKpsS8N40p8IA7VXraiSzhg" +} +``` diff --git a/docs/api/examples/_ssh_certificate_authorities_list_request.md b/docs/api/examples/_ssh_certificate_authorities_list_request.md new file mode 100644 index 000000000..6d729fd33 --- /dev/null +++ b/docs/api/examples/_ssh_certificate_authorities_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_certificate_authorities +``` diff --git a/docs/api/examples/_ssh_certificate_authorities_list_response.md b/docs/api/examples/_ssh_certificate_authorities_list_response.md new file mode 100644 index 000000000..a7e120257 --- /dev/null +++ b/docs/api/examples/_ssh_certificate_authorities_list_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "ssh_certificate_authorities": [ + { + "created_at": "2024-11-15T17:26:26Z", + "description": "Staging Environment Hosts", + "id": "sshca_2otazKpsS8N40p8IA7VXraiSzhg", + "key_type": "ed25519", + "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB79sr7xDTMCRI/Arjl7CVFUW8YtuiUqrDgGHyOJ8/8k", + "uri": "https://api.ngrok.com/ssh_certificate_authorities/sshca_2otazKpsS8N40p8IA7VXraiSzhg" + } + ], + "uri": "https://api.ngrok.com/ssh_certificate_authorities" +} +``` diff --git a/docs/api/examples/_ssh_certificate_authorities_update_request.md b/docs/api/examples/_ssh_certificate_authorities_update_request.md new file mode 100644 index 000000000..28cb192b4 --- /dev/null +++ b/docs/api/examples/_ssh_certificate_authorities_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"region\": \"us-east-1\"}"}' \ +https://api.ngrok.com/ssh_certificate_authorities/sshca_2otazKpsS8N40p8IA7VXraiSzhg +``` diff --git a/docs/api/examples/_ssh_certificate_authorities_update_response.md b/docs/api/examples/_ssh_certificate_authorities_update_response.md new file mode 100644 index 000000000..7adda1861 --- /dev/null +++ b/docs/api/examples/_ssh_certificate_authorities_update_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:26Z", + "description": "Staging Environment Hosts", + "id": "sshca_2otazKpsS8N40p8IA7VXraiSzhg", + "key_type": "ed25519", + "metadata": "{\"region\": \"us-east-1\"}", + "public_key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB79sr7xDTMCRI/Arjl7CVFUW8YtuiUqrDgGHyOJ8/8k", + "uri": "https://api.ngrok.com/ssh_certificate_authorities/sshca_2otazKpsS8N40p8IA7VXraiSzhg" +} +``` diff --git a/docs/api/examples/_ssh_credentials_create_request.md b/docs/api/examples/_ssh_credentials_create_request.md new file mode 100644 index 000000000..a80a39b0c --- /dev/null +++ b/docs/api/examples/_ssh_credentials_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"acl":["bind:1.tcp.ngrok.io:20002","bind:132.devices.company.com"],"description":"for device #132","public_key":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDmGS49FkSODAcKhn3+/47DW2zEn19BZvzRQ8RZjL3v6hCIX2qXfsFK35EGxNI0wV23H4xXC2gVRPHKU71YnCb50tad3yMBTM6+2yfGsEDasEH/anmBLclChKvuGiT547RskZlpbAbdq3GvbzmY+R/2EBRMOiObpc8XmSzKAd05j28kqN0+rZO65SWId0MXdvJdSCSAnuRqBNd/aXKlu8hBPDcgwbT2lMkuR+ApoBS2FLRBOiQyt2Ol0T7Uuf7lTLlazpGB3uTw5zFYUNXkuuI6cAP8QYuY1Bne/hNrG8t3Aw9a1yc2C4Fz1hJ/4OMRxTQ8SUQf+Rmxs8DryMlMFJ8r device132@example.com"}' \ +https://api.ngrok.com/ssh_credentials +``` diff --git a/docs/api/examples/_ssh_credentials_create_response.md b/docs/api/examples/_ssh_credentials_create_response.md new file mode 100644 index 000000000..951d267af --- /dev/null +++ b/docs/api/examples/_ssh_credentials_create_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "acl": ["bind:1.tcp.ngrok.io:20002", "bind:132.devices.company.com"], + "created_at": "2024-11-15T17:26:25Z", + "description": "for device #132", + "id": "sshcr_2otazBRU4PmEXBTR6clkPiStiHi", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDmGS49FkSODAcKhn3+/47DW2zEn19BZvzRQ8RZjL3v6hCIX2qXfsFK35EGxNI0wV23H4xXC2gVRPHKU71YnCb50tad3yMBTM6+2yfGsEDasEH/anmBLclChKvuGiT547RskZlpbAbdq3GvbzmY+R/2EBRMOiObpc8XmSzKAd05j28kqN0+rZO65SWId0MXdvJdSCSAnuRqBNd/aXKlu8hBPDcgwbT2lMkuR+ApoBS2FLRBOiQyt2Ol0T7Uuf7lTLlazpGB3uTw5zFYUNXkuuI6cAP8QYuY1Bne/hNrG8t3Aw9a1yc2C4Fz1hJ/4OMRxTQ8SUQf+Rmxs8DryMlMFJ8r device132@example.com", + "uri": "https://api.ngrok.com/ssh_credentials/sshcr_2otazBRU4PmEXBTR6clkPiStiHi" +} +``` diff --git a/docs/api/examples/_ssh_credentials_delete_request.md b/docs/api/examples/_ssh_credentials_delete_request.md new file mode 100644 index 000000000..87d6069a8 --- /dev/null +++ b/docs/api/examples/_ssh_credentials_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_credentials/sshcr_2otazBRU4PmEXBTR6clkPiStiHi +``` diff --git a/docs/api/examples/_ssh_credentials_delete_response.md b/docs/api/examples/_ssh_credentials_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_ssh_credentials_get_request.md b/docs/api/examples/_ssh_credentials_get_request.md new file mode 100644 index 000000000..1682483fe --- /dev/null +++ b/docs/api/examples/_ssh_credentials_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_credentials/sshcr_2otazBRU4PmEXBTR6clkPiStiHi +``` diff --git a/docs/api/examples/_ssh_credentials_get_response.md b/docs/api/examples/_ssh_credentials_get_response.md new file mode 100644 index 000000000..7f5fc2463 --- /dev/null +++ b/docs/api/examples/_ssh_credentials_get_response.md @@ -0,0 +1,16 @@ + + +#### Example Response + +```json +{ + "acl": ["bind:1.tcp.ngrok.io:20002", "bind:132.devices.company.com"], + "created_at": "2024-11-15T17:26:25Z", + "description": "my dev machine", + "id": "sshcr_2otazBRU4PmEXBTR6clkPiStiHi", + "metadata": "{\"hostname\": \"macbook.local\"}", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDmGS49FkSODAcKhn3+/47DW2zEn19BZvzRQ8RZjL3v6hCIX2qXfsFK35EGxNI0wV23H4xXC2gVRPHKU71YnCb50tad3yMBTM6+2yfGsEDasEH/anmBLclChKvuGiT547RskZlpbAbdq3GvbzmY+R/2EBRMOiObpc8XmSzKAd05j28kqN0+rZO65SWId0MXdvJdSCSAnuRqBNd/aXKlu8hBPDcgwbT2lMkuR+ApoBS2FLRBOiQyt2Ol0T7Uuf7lTLlazpGB3uTw5zFYUNXkuuI6cAP8QYuY1Bne/hNrG8t3Aw9a1yc2C4Fz1hJ/4OMRxTQ8SUQf+Rmxs8DryMlMFJ8r device132@example.com", + "uri": "https://api.ngrok.com/ssh_credentials/sshcr_2otazBRU4PmEXBTR6clkPiStiHi" +} +``` diff --git a/docs/api/examples/_ssh_credentials_list_request.md b/docs/api/examples/_ssh_credentials_list_request.md new file mode 100644 index 000000000..76763b480 --- /dev/null +++ b/docs/api/examples/_ssh_credentials_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_credentials +``` diff --git a/docs/api/examples/_ssh_credentials_list_response.md b/docs/api/examples/_ssh_credentials_list_response.md new file mode 100644 index 000000000..89522f055 --- /dev/null +++ b/docs/api/examples/_ssh_credentials_list_response.md @@ -0,0 +1,21 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "ssh_credentials": [ + { + "acl": ["bind:1.tcp.ngrok.io:20002", "bind:132.devices.company.com"], + "created_at": "2024-11-15T17:26:25Z", + "description": "for device #132", + "id": "sshcr_2otazBRU4PmEXBTR6clkPiStiHi", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDmGS49FkSODAcKhn3+/47DW2zEn19BZvzRQ8RZjL3v6hCIX2qXfsFK35EGxNI0wV23H4xXC2gVRPHKU71YnCb50tad3yMBTM6+2yfGsEDasEH/anmBLclChKvuGiT547RskZlpbAbdq3GvbzmY+R/2EBRMOiObpc8XmSzKAd05j28kqN0+rZO65SWId0MXdvJdSCSAnuRqBNd/aXKlu8hBPDcgwbT2lMkuR+ApoBS2FLRBOiQyt2Ol0T7Uuf7lTLlazpGB3uTw5zFYUNXkuuI6cAP8QYuY1Bne/hNrG8t3Aw9a1yc2C4Fz1hJ/4OMRxTQ8SUQf+Rmxs8DryMlMFJ8r device132@example.com", + "uri": "https://api.ngrok.com/ssh_credentials/sshcr_2otazBRU4PmEXBTR6clkPiStiHi" + } + ], + "uri": "https://api.ngrok.com/ssh_credentials" +} +``` diff --git a/docs/api/examples/_ssh_credentials_update_request.md b/docs/api/examples/_ssh_credentials_update_request.md new file mode 100644 index 000000000..877d63431 --- /dev/null +++ b/docs/api/examples/_ssh_credentials_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"my dev machine","metadata":"{\"hostname\": \"macbook.local\"}"}' \ +https://api.ngrok.com/ssh_credentials/sshcr_2otazBRU4PmEXBTR6clkPiStiHi +``` diff --git a/docs/api/examples/_ssh_credentials_update_response.md b/docs/api/examples/_ssh_credentials_update_response.md new file mode 100644 index 000000000..7f5fc2463 --- /dev/null +++ b/docs/api/examples/_ssh_credentials_update_response.md @@ -0,0 +1,16 @@ + + +#### Example Response + +```json +{ + "acl": ["bind:1.tcp.ngrok.io:20002", "bind:132.devices.company.com"], + "created_at": "2024-11-15T17:26:25Z", + "description": "my dev machine", + "id": "sshcr_2otazBRU4PmEXBTR6clkPiStiHi", + "metadata": "{\"hostname\": \"macbook.local\"}", + "owner_id": "usr_2otawLHkq5cU4yJenLp73PukWVQ", + "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDmGS49FkSODAcKhn3+/47DW2zEn19BZvzRQ8RZjL3v6hCIX2qXfsFK35EGxNI0wV23H4xXC2gVRPHKU71YnCb50tad3yMBTM6+2yfGsEDasEH/anmBLclChKvuGiT547RskZlpbAbdq3GvbzmY+R/2EBRMOiObpc8XmSzKAd05j28kqN0+rZO65SWId0MXdvJdSCSAnuRqBNd/aXKlu8hBPDcgwbT2lMkuR+ApoBS2FLRBOiQyt2Ol0T7Uuf7lTLlazpGB3uTw5zFYUNXkuuI6cAP8QYuY1Bne/hNrG8t3Aw9a1yc2C4Fz1hJ/4OMRxTQ8SUQf+Rmxs8DryMlMFJ8r device132@example.com", + "uri": "https://api.ngrok.com/ssh_credentials/sshcr_2otazBRU4PmEXBTR6clkPiStiHi" +} +``` diff --git a/docs/api/examples/_ssh_host_certificates_create_request.md b/docs/api/examples/_ssh_host_certificates_create_request.md new file mode 100644 index 000000000..9d42fa98a --- /dev/null +++ b/docs/api/examples/_ssh_host_certificates_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"personal server","principals":["inconshreveable.com","10.2.42.9"],"public_key":"ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+Cgk= inconshreveable.com","ssh_certificate_authority_id":"sshca_2otazHAdQio5rWNEzYcdf0iAz2f","valid_until":"2025-02-13T17:26:26Z"}' \ +https://api.ngrok.com/ssh_host_certificates +``` diff --git a/docs/api/examples/_ssh_host_certificates_create_response.md b/docs/api/examples/_ssh_host_certificates_create_response.md new file mode 100644 index 000000000..67ddd643a --- /dev/null +++ b/docs/api/examples/_ssh_host_certificates_create_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "certificate": "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgNnoaRfURPp4L/n0b94sTkTCWzPr/fOmkIdR0WBXmQE4AAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+CgkAAAAAAAAAAAAAAAIAAAAhc2hjcnRfMm90YXpOVVRvQmIzNzgxYTZWZWdGSWFnbnNiAAAAJAAAABNpbmNvbnNocmV2ZWFibGUuY29tAAAACTEwLjIuNDIuOQAAAABnN4RCAAAAAGeuK0IAAAAAAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIGA8uluVSro2NqSb/XteOxF2JV82yrUYlrGHcWHSxMCjAAAAUwAAAAtzc2gtZWQyNTUxOQAAAECq8Li8/B8ShjW+6T9jA3adgiijZGzrET4ScASC7Nsc6EUJIfH97UH2H7ZcLg2QQqSKe4WneMKlGf2Jeb5soHMB shcrt_2otazNUToBb3781a6VegFIagnsb", + "created_at": "2024-11-15T17:26:26Z", + "description": "personal server", + "id": "shcrt_2otazNUToBb3781a6VegFIagnsb", + "key_type": "ecdsa", + "principals": ["inconshreveable.com", "10.2.42.9"], + "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+Cgk= inconshreveable.com", + "ssh_certificate_authority_id": "sshca_2otazHAdQio5rWNEzYcdf0iAz2f", + "uri": "https://api.ngrok.com/ssh_host_certificates/shcrt_2otazNUToBb3781a6VegFIagnsb", + "valid_after": "2024-11-15T17:26:26Z", + "valid_until": "2025-02-13T17:26:26Z" +} +``` diff --git a/docs/api/examples/_ssh_host_certificates_delete_request.md b/docs/api/examples/_ssh_host_certificates_delete_request.md new file mode 100644 index 000000000..48c2272c2 --- /dev/null +++ b/docs/api/examples/_ssh_host_certificates_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_host_certificates/shcrt_2otazNUToBb3781a6VegFIagnsb +``` diff --git a/docs/api/examples/_ssh_host_certificates_delete_response.md b/docs/api/examples/_ssh_host_certificates_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_ssh_host_certificates_get_request.md b/docs/api/examples/_ssh_host_certificates_get_request.md new file mode 100644 index 000000000..b63e23b42 --- /dev/null +++ b/docs/api/examples/_ssh_host_certificates_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_host_certificates/shcrt_2otazNUToBb3781a6VegFIagnsb +``` diff --git a/docs/api/examples/_ssh_host_certificates_get_response.md b/docs/api/examples/_ssh_host_certificates_get_response.md new file mode 100644 index 000000000..8090e86d5 --- /dev/null +++ b/docs/api/examples/_ssh_host_certificates_get_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "certificate": "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgNnoaRfURPp4L/n0b94sTkTCWzPr/fOmkIdR0WBXmQE4AAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+CgkAAAAAAAAAAAAAAAIAAAAhc2hjcnRfMm90YXpOVVRvQmIzNzgxYTZWZWdGSWFnbnNiAAAAJAAAABNpbmNvbnNocmV2ZWFibGUuY29tAAAACTEwLjIuNDIuOQAAAABnN4RCAAAAAGeuK0IAAAAAAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIGA8uluVSro2NqSb/XteOxF2JV82yrUYlrGHcWHSxMCjAAAAUwAAAAtzc2gtZWQyNTUxOQAAAECq8Li8/B8ShjW+6T9jA3adgiijZGzrET4ScASC7Nsc6EUJIfH97UH2H7ZcLg2QQqSKe4WneMKlGf2Jeb5soHMB shcrt_2otazNUToBb3781a6VegFIagnsb", + "created_at": "2024-11-15T17:26:26Z", + "description": "personal server", + "id": "shcrt_2otazNUToBb3781a6VegFIagnsb", + "key_type": "ecdsa", + "metadata": "{\"region\": \"us-west-2\"}", + "principals": ["inconshreveable.com", "10.2.42.9"], + "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+Cgk= inconshreveable.com", + "ssh_certificate_authority_id": "sshca_2otazHAdQio5rWNEzYcdf0iAz2f", + "uri": "https://api.ngrok.com/ssh_host_certificates/shcrt_2otazNUToBb3781a6VegFIagnsb", + "valid_after": "2024-11-15T17:26:26Z", + "valid_until": "2025-02-13T17:26:26Z" +} +``` diff --git a/docs/api/examples/_ssh_host_certificates_list_request.md b/docs/api/examples/_ssh_host_certificates_list_request.md new file mode 100644 index 000000000..2910e844d --- /dev/null +++ b/docs/api/examples/_ssh_host_certificates_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_host_certificates +``` diff --git a/docs/api/examples/_ssh_host_certificates_list_response.md b/docs/api/examples/_ssh_host_certificates_list_response.md new file mode 100644 index 000000000..3e6ee3941 --- /dev/null +++ b/docs/api/examples/_ssh_host_certificates_list_response.md @@ -0,0 +1,25 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "ssh_host_certificates": [ + { + "certificate": "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgNnoaRfURPp4L/n0b94sTkTCWzPr/fOmkIdR0WBXmQE4AAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+CgkAAAAAAAAAAAAAAAIAAAAhc2hjcnRfMm90YXpOVVRvQmIzNzgxYTZWZWdGSWFnbnNiAAAAJAAAABNpbmNvbnNocmV2ZWFibGUuY29tAAAACTEwLjIuNDIuOQAAAABnN4RCAAAAAGeuK0IAAAAAAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIGA8uluVSro2NqSb/XteOxF2JV82yrUYlrGHcWHSxMCjAAAAUwAAAAtzc2gtZWQyNTUxOQAAAECq8Li8/B8ShjW+6T9jA3adgiijZGzrET4ScASC7Nsc6EUJIfH97UH2H7ZcLg2QQqSKe4WneMKlGf2Jeb5soHMB shcrt_2otazNUToBb3781a6VegFIagnsb", + "created_at": "2024-11-15T17:26:26Z", + "description": "personal server", + "id": "shcrt_2otazNUToBb3781a6VegFIagnsb", + "key_type": "ecdsa", + "principals": ["inconshreveable.com", "10.2.42.9"], + "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+Cgk= inconshreveable.com", + "ssh_certificate_authority_id": "sshca_2otazHAdQio5rWNEzYcdf0iAz2f", + "uri": "https://api.ngrok.com/ssh_host_certificates/shcrt_2otazNUToBb3781a6VegFIagnsb", + "valid_after": "2024-11-15T17:26:26Z", + "valid_until": "2025-02-13T17:26:26Z" + } + ], + "uri": "https://api.ngrok.com/ssh_host_certificates" +} +``` diff --git a/docs/api/examples/_ssh_host_certificates_update_request.md b/docs/api/examples/_ssh_host_certificates_update_request.md new file mode 100644 index 000000000..19efa3ba7 --- /dev/null +++ b/docs/api/examples/_ssh_host_certificates_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"region\": \"us-west-2\"}"}' \ +https://api.ngrok.com/ssh_host_certificates/shcrt_2otazNUToBb3781a6VegFIagnsb +``` diff --git a/docs/api/examples/_ssh_host_certificates_update_response.md b/docs/api/examples/_ssh_host_certificates_update_response.md new file mode 100644 index 000000000..8090e86d5 --- /dev/null +++ b/docs/api/examples/_ssh_host_certificates_update_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "certificate": "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgNnoaRfURPp4L/n0b94sTkTCWzPr/fOmkIdR0WBXmQE4AAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+CgkAAAAAAAAAAAAAAAIAAAAhc2hjcnRfMm90YXpOVVRvQmIzNzgxYTZWZWdGSWFnbnNiAAAAJAAAABNpbmNvbnNocmV2ZWFibGUuY29tAAAACTEwLjIuNDIuOQAAAABnN4RCAAAAAGeuK0IAAAAAAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIGA8uluVSro2NqSb/XteOxF2JV82yrUYlrGHcWHSxMCjAAAAUwAAAAtzc2gtZWQyNTUxOQAAAECq8Li8/B8ShjW+6T9jA3adgiijZGzrET4ScASC7Nsc6EUJIfH97UH2H7ZcLg2QQqSKe4WneMKlGf2Jeb5soHMB shcrt_2otazNUToBb3781a6VegFIagnsb", + "created_at": "2024-11-15T17:26:26Z", + "description": "personal server", + "id": "shcrt_2otazNUToBb3781a6VegFIagnsb", + "key_type": "ecdsa", + "metadata": "{\"region\": \"us-west-2\"}", + "principals": ["inconshreveable.com", "10.2.42.9"], + "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI3oSgxrOEJ+tIJ/n6VYtxQIFvynqlOHpfOAJ4x4OfmMYDkbf8dr6RAuUSf+ZC2HMCujta7EjZ9t+6v08Ue+Cgk= inconshreveable.com", + "ssh_certificate_authority_id": "sshca_2otazHAdQio5rWNEzYcdf0iAz2f", + "uri": "https://api.ngrok.com/ssh_host_certificates/shcrt_2otazNUToBb3781a6VegFIagnsb", + "valid_after": "2024-11-15T17:26:26Z", + "valid_until": "2025-02-13T17:26:26Z" +} +``` diff --git a/docs/api/examples/_ssh_user_certificates_create_request.md b/docs/api/examples/_ssh_user_certificates_create_request.md new file mode 100644 index 000000000..2dc8c9afb --- /dev/null +++ b/docs/api/examples/_ssh_user_certificates_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"temporary access to staging machine","principals":["ec2-user","root"],"public_key":"ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0= alan@work-laptop","ssh_certificate_authority_id":"sshca_2otazHsWSQx7vshDaKdSpDoSB5F","valid_until":"2025-02-13T17:26:26Z"}' \ +https://api.ngrok.com/ssh_user_certificates +``` diff --git a/docs/api/examples/_ssh_user_certificates_create_response.md b/docs/api/examples/_ssh_user_certificates_create_response.md new file mode 100644 index 000000000..e6a01401c --- /dev/null +++ b/docs/api/examples/_ssh_user_certificates_create_response.md @@ -0,0 +1,24 @@ + + +#### Example Response + +```json +{ + "certificate": "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgt9HhpeuXiAlFZ8xtlxpE9wQJvsbBP6i4m0pKCjhmiBsAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0AAAAAAAAAAAAAAAEAAAAhc3VjcnRfMm90YXpNYkZxcmgxWDk5OW9hUnl0eXRRVDFlAAAAFAAAAAhlYzItdXNlcgAAAARyb290AAAAAGc3hEIAAAAAZ64rQgAAAAAAAAAoAAAACnBlcm1pdC1wdHkAAAAAAAAADnBlcm1pdC11c2VyLXJjAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIErbTRLXsAQQ/9cIahutglhNBp6glMhftyYUwquNX6UmAAAAUwAAAAtzc2gtZWQyNTUxOQAAAEDwQdptlHTLdBC5OzYO74xfUHOmrPXT+flhpG807q9aq/Lqr4bFTbwSySOJGbPtWw5zW58E8yTxRzPDMEMUI/YI sucrt_2otazMbFqrh1X999oaRytytQT1e", + "created_at": "2024-11-15T17:26:26Z", + "critical_options": {}, + "description": "temporary access to staging machine", + "extensions": { + "permit-pty": "", + "permit-user-rc": "" + }, + "id": "sucrt_2otazMbFqrh1X999oaRytytQT1e", + "key_type": "ecdsa", + "principals": ["ec2-user", "root"], + "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0= alan@work-laptop", + "ssh_certificate_authority_id": "sshca_2otazHsWSQx7vshDaKdSpDoSB5F", + "uri": "https://api.ngrok.com/ssh_user_certificates/sucrt_2otazMbFqrh1X999oaRytytQT1e", + "valid_after": "2024-11-15T17:26:26Z", + "valid_until": "2025-02-13T17:26:26Z" +} +``` diff --git a/docs/api/examples/_ssh_user_certificates_delete_request.md b/docs/api/examples/_ssh_user_certificates_delete_request.md new file mode 100644 index 000000000..db5bfb71c --- /dev/null +++ b/docs/api/examples/_ssh_user_certificates_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_user_certificates/sucrt_2otazMbFqrh1X999oaRytytQT1e +``` diff --git a/docs/api/examples/_ssh_user_certificates_delete_response.md b/docs/api/examples/_ssh_user_certificates_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_ssh_user_certificates_get_request.md b/docs/api/examples/_ssh_user_certificates_get_request.md new file mode 100644 index 000000000..adc73dd38 --- /dev/null +++ b/docs/api/examples/_ssh_user_certificates_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_user_certificates/sucrt_2otazMbFqrh1X999oaRytytQT1e +``` diff --git a/docs/api/examples/_ssh_user_certificates_get_response.md b/docs/api/examples/_ssh_user_certificates_get_response.md new file mode 100644 index 000000000..64f4f9f18 --- /dev/null +++ b/docs/api/examples/_ssh_user_certificates_get_response.md @@ -0,0 +1,25 @@ + + +#### Example Response + +```json +{ + "certificate": "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgt9HhpeuXiAlFZ8xtlxpE9wQJvsbBP6i4m0pKCjhmiBsAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0AAAAAAAAAAAAAAAEAAAAhc3VjcnRfMm90YXpNYkZxcmgxWDk5OW9hUnl0eXRRVDFlAAAAFAAAAAhlYzItdXNlcgAAAARyb290AAAAAGc3hEIAAAAAZ64rQgAAAAAAAAAoAAAACnBlcm1pdC1wdHkAAAAAAAAADnBlcm1pdC11c2VyLXJjAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIErbTRLXsAQQ/9cIahutglhNBp6glMhftyYUwquNX6UmAAAAUwAAAAtzc2gtZWQyNTUxOQAAAEDwQdptlHTLdBC5OzYO74xfUHOmrPXT+flhpG807q9aq/Lqr4bFTbwSySOJGbPtWw5zW58E8yTxRzPDMEMUI/YI sucrt_2otazMbFqrh1X999oaRytytQT1e", + "created_at": "2024-11-15T17:26:26Z", + "critical_options": {}, + "description": "temporary access to staging machine for alan", + "extensions": { + "permit-pty": "", + "permit-user-rc": "" + }, + "id": "sucrt_2otazMbFqrh1X999oaRytytQT1e", + "key_type": "ecdsa", + "metadata": "{\"user_email\": \"alan@example.com\"}", + "principals": ["ec2-user", "root"], + "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0= alan@work-laptop", + "ssh_certificate_authority_id": "sshca_2otazHsWSQx7vshDaKdSpDoSB5F", + "uri": "https://api.ngrok.com/ssh_user_certificates/sucrt_2otazMbFqrh1X999oaRytytQT1e", + "valid_after": "2024-11-15T17:26:26Z", + "valid_until": "2025-02-13T17:26:26Z" +} +``` diff --git a/docs/api/examples/_ssh_user_certificates_list_request.md b/docs/api/examples/_ssh_user_certificates_list_request.md new file mode 100644 index 000000000..51d22b22a --- /dev/null +++ b/docs/api/examples/_ssh_user_certificates_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/ssh_user_certificates +``` diff --git a/docs/api/examples/_ssh_user_certificates_list_response.md b/docs/api/examples/_ssh_user_certificates_list_response.md new file mode 100644 index 000000000..ecf5654c3 --- /dev/null +++ b/docs/api/examples/_ssh_user_certificates_list_response.md @@ -0,0 +1,30 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "ssh_user_certificates": [ + { + "certificate": "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgt9HhpeuXiAlFZ8xtlxpE9wQJvsbBP6i4m0pKCjhmiBsAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0AAAAAAAAAAAAAAAEAAAAhc3VjcnRfMm90YXpNYkZxcmgxWDk5OW9hUnl0eXRRVDFlAAAAFAAAAAhlYzItdXNlcgAAAARyb290AAAAAGc3hEIAAAAAZ64rQgAAAAAAAAAoAAAACnBlcm1pdC1wdHkAAAAAAAAADnBlcm1pdC11c2VyLXJjAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIErbTRLXsAQQ/9cIahutglhNBp6glMhftyYUwquNX6UmAAAAUwAAAAtzc2gtZWQyNTUxOQAAAEDwQdptlHTLdBC5OzYO74xfUHOmrPXT+flhpG807q9aq/Lqr4bFTbwSySOJGbPtWw5zW58E8yTxRzPDMEMUI/YI sucrt_2otazMbFqrh1X999oaRytytQT1e", + "created_at": "2024-11-15T17:26:26Z", + "critical_options": {}, + "description": "temporary access to staging machine", + "extensions": { + "permit-pty": "", + "permit-user-rc": "" + }, + "id": "sucrt_2otazMbFqrh1X999oaRytytQT1e", + "key_type": "ecdsa", + "principals": ["ec2-user", "root"], + "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0= alan@work-laptop", + "ssh_certificate_authority_id": "sshca_2otazHsWSQx7vshDaKdSpDoSB5F", + "uri": "https://api.ngrok.com/ssh_user_certificates/sucrt_2otazMbFqrh1X999oaRytytQT1e", + "valid_after": "2024-11-15T17:26:26Z", + "valid_until": "2025-02-13T17:26:26Z" + } + ], + "uri": "https://api.ngrok.com/ssh_user_certificates" +} +``` diff --git a/docs/api/examples/_ssh_user_certificates_update_request.md b/docs/api/examples/_ssh_user_certificates_update_request.md new file mode 100644 index 000000000..1d7207caf --- /dev/null +++ b/docs/api/examples/_ssh_user_certificates_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"temporary access to staging machine for alan","metadata":"{\"user_email\": \"alan@example.com\"}"}' \ +https://api.ngrok.com/ssh_user_certificates/sucrt_2otazMbFqrh1X999oaRytytQT1e +``` diff --git a/docs/api/examples/_ssh_user_certificates_update_response.md b/docs/api/examples/_ssh_user_certificates_update_response.md new file mode 100644 index 000000000..64f4f9f18 --- /dev/null +++ b/docs/api/examples/_ssh_user_certificates_update_response.md @@ -0,0 +1,25 @@ + + +#### Example Response + +```json +{ + "certificate": "ecdsa-sha2-nistp256-cert-v01@openssh.com AAAAKGVjZHNhLXNoYTItbmlzdHAyNTYtY2VydC12MDFAb3BlbnNzaC5jb20AAAAgt9HhpeuXiAlFZ8xtlxpE9wQJvsbBP6i4m0pKCjhmiBsAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0AAAAAAAAAAAAAAAEAAAAhc3VjcnRfMm90YXpNYkZxcmgxWDk5OW9hUnl0eXRRVDFlAAAAFAAAAAhlYzItdXNlcgAAAARyb290AAAAAGc3hEIAAAAAZ64rQgAAAAAAAAAoAAAACnBlcm1pdC1wdHkAAAAAAAAADnBlcm1pdC11c2VyLXJjAAAAAAAAAAAAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIErbTRLXsAQQ/9cIahutglhNBp6glMhftyYUwquNX6UmAAAAUwAAAAtzc2gtZWQyNTUxOQAAAEDwQdptlHTLdBC5OzYO74xfUHOmrPXT+flhpG807q9aq/Lqr4bFTbwSySOJGbPtWw5zW58E8yTxRzPDMEMUI/YI sucrt_2otazMbFqrh1X999oaRytytQT1e", + "created_at": "2024-11-15T17:26:26Z", + "critical_options": {}, + "description": "temporary access to staging machine for alan", + "extensions": { + "permit-pty": "", + "permit-user-rc": "" + }, + "id": "sucrt_2otazMbFqrh1X999oaRytytQT1e", + "key_type": "ecdsa", + "metadata": "{\"user_email\": \"alan@example.com\"}", + "principals": ["ec2-user", "root"], + "public_key": "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBK58lFzmWlDimDtBz78wVT4oauA8PjY0CiXTCEIsBNC6UwOJvZ0jdSaYNhDaa7dRV84DfBb/gKzqlXC7cVMZjl0= alan@work-laptop", + "ssh_certificate_authority_id": "sshca_2otazHsWSQx7vshDaKdSpDoSB5F", + "uri": "https://api.ngrok.com/ssh_user_certificates/sucrt_2otazMbFqrh1X999oaRytytQT1e", + "valid_after": "2024-11-15T17:26:26Z", + "valid_until": "2025-02-13T17:26:26Z" +} +``` diff --git a/docs/api/examples/_static_backends_create_request.md b/docs/api/examples/_static_backends_create_request.md new file mode 100644 index 000000000..136c4425c --- /dev/null +++ b/docs/api/examples/_static_backends_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"address":"example.com:8080","description":"acme weighted","metadata":"{\"environment\": \"staging\"}","tls":{}}' \ +https://api.ngrok.com/backends/static +``` diff --git a/docs/api/examples/_static_backends_create_response.md b/docs/api/examples/_static_backends_create_response.md new file mode 100644 index 000000000..644abafcc --- /dev/null +++ b/docs/api/examples/_static_backends_create_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "address": "example.com:8080", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdsc_2otazVBuWyK6fI83jt6ihF0Euvz", + "metadata": "{\"environment\": \"staging\"}", + "tls": { + "enabled": false + }, + "uri": "https://api.ngrok.com/backends/static/bkdsc_2otazVBuWyK6fI83jt6ihF0Euvz" +} +``` diff --git a/docs/api/examples/_static_backends_delete_request.md b/docs/api/examples/_static_backends_delete_request.md new file mode 100644 index 000000000..b38dfbacd --- /dev/null +++ b/docs/api/examples/_static_backends_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/static/bkdsc_2otazTNoEKuJ7XljQa2iTrUASdd +``` diff --git a/docs/api/examples/_static_backends_delete_response.md b/docs/api/examples/_static_backends_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_static_backends_get_request.md b/docs/api/examples/_static_backends_get_request.md new file mode 100644 index 000000000..136c4425c --- /dev/null +++ b/docs/api/examples/_static_backends_get_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"address":"example.com:8080","description":"acme weighted","metadata":"{\"environment\": \"staging\"}","tls":{}}' \ +https://api.ngrok.com/backends/static +``` diff --git a/docs/api/examples/_static_backends_get_response.md b/docs/api/examples/_static_backends_get_response.md new file mode 100644 index 000000000..3640139b5 --- /dev/null +++ b/docs/api/examples/_static_backends_get_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "address": "example.com:8080", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdsc_2otazONDedkhUQMvpAT0ZezGNtw", + "metadata": "{\"environment\": \"staging\"}", + "tls": { + "enabled": false + }, + "uri": "https://api.ngrok.com/backends/static/bkdsc_2otazONDedkhUQMvpAT0ZezGNtw" +} +``` diff --git a/docs/api/examples/_static_backends_list_request.md b/docs/api/examples/_static_backends_list_request.md new file mode 100644 index 000000000..e82d144a3 --- /dev/null +++ b/docs/api/examples/_static_backends_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/static +``` diff --git a/docs/api/examples/_static_backends_list_response.md b/docs/api/examples/_static_backends_list_response.md new file mode 100644 index 000000000..bdebdd78f --- /dev/null +++ b/docs/api/examples/_static_backends_list_response.md @@ -0,0 +1,45 @@ + + +#### Example Response + +```json +{ + "backends": [ + { + "address": "example.com:8080", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdsc_2otazVBuWyK6fI83jt6ihF0Euvz", + "metadata": "{\"environment\": \"staging\"}", + "tls": { + "enabled": false + }, + "uri": "https://api.ngrok.com/backends/static/bkdsc_2otazVBuWyK6fI83jt6ihF0Euvz" + }, + { + "address": "example.com:8080", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdsc_2otazTNoEKuJ7XljQa2iTrUASdd", + "metadata": "{\"environment\": \"staging\"}", + "tls": { + "enabled": false + }, + "uri": "https://api.ngrok.com/backends/static/bkdsc_2otazTNoEKuJ7XljQa2iTrUASdd" + }, + { + "address": "example.com:8080", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdsc_2otazONDedkhUQMvpAT0ZezGNtw", + "metadata": "{\"environment\": \"staging\"}", + "tls": { + "enabled": false + }, + "uri": "https://api.ngrok.com/backends/static/bkdsc_2otazONDedkhUQMvpAT0ZezGNtw" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/backends/static" +} +``` diff --git a/docs/api/examples/_static_backends_update_request.md b/docs/api/examples/_static_backends_update_request.md new file mode 100644 index 000000000..bfabc8b04 --- /dev/null +++ b/docs/api/examples/_static_backends_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"address":"example.com:8080","metadata":"{\"environment\": \"production\"}","tls":{}}' \ +https://api.ngrok.com/backends/static/bkdsc_2otazTNoEKuJ7XljQa2iTrUASdd +``` diff --git a/docs/api/examples/_static_backends_update_response.md b/docs/api/examples/_static_backends_update_response.md new file mode 100644 index 000000000..df07dda7d --- /dev/null +++ b/docs/api/examples/_static_backends_update_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "address": "example.com:8080", + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdsc_2otazTNoEKuJ7XljQa2iTrUASdd", + "metadata": "{\"environment\": \"production\"}", + "tls": { + "enabled": false + }, + "uri": "https://api.ngrok.com/backends/static/bkdsc_2otazTNoEKuJ7XljQa2iTrUASdd" +} +``` diff --git a/docs/api/examples/_tcp_edge_backend_module_delete_request.md b/docs/api/examples/_tcp_edge_backend_module_delete_request.md new file mode 100644 index 000000000..9ead943ac --- /dev/null +++ b/docs/api/examples/_tcp_edge_backend_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tcp/edgtcp_2otazx8mHWW2vIsvjyR7M7347QK/backend +``` diff --git a/docs/api/examples/_tcp_edge_backend_module_delete_response.md b/docs/api/examples/_tcp_edge_backend_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tcp_edge_backend_module_get_request.md b/docs/api/examples/_tcp_edge_backend_module_get_request.md new file mode 100644 index 000000000..422162fd6 --- /dev/null +++ b/docs/api/examples/_tcp_edge_backend_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tcp/edgtcp_2otazx8mHWW2vIsvjyR7M7347QK/backend +``` diff --git a/docs/api/examples/_tcp_edge_backend_module_get_response.md b/docs/api/examples/_tcp_edge_backend_module_get_response.md new file mode 100644 index 000000000..f30277337 --- /dev/null +++ b/docs/api/examples/_tcp_edge_backend_module_get_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "backend": { + "id": "bkdtg_2otazy2VuVobwLDZVEzpYV3zIcj", + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazy2VuVobwLDZVEzpYV3zIcj" + }, + "enabled": true +} +``` diff --git a/docs/api/examples/_tcp_edge_backend_module_replace_request.md b/docs/api/examples/_tcp_edge_backend_module_replace_request.md new file mode 100644 index 000000000..c868fab9c --- /dev/null +++ b/docs/api/examples/_tcp_edge_backend_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"backend_id":"bkdtg_2otazy2VuVobwLDZVEzpYV3zIcj","enabled":true}' \ +https://api.ngrok.com/edges/tcp/edgtcp_2otazx8mHWW2vIsvjyR7M7347QK/backend +``` diff --git a/docs/api/examples/_tcp_edge_backend_module_replace_response.md b/docs/api/examples/_tcp_edge_backend_module_replace_response.md new file mode 100644 index 000000000..f30277337 --- /dev/null +++ b/docs/api/examples/_tcp_edge_backend_module_replace_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "backend": { + "id": "bkdtg_2otazy2VuVobwLDZVEzpYV3zIcj", + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazy2VuVobwLDZVEzpYV3zIcj" + }, + "enabled": true +} +``` diff --git a/docs/api/examples/_tcp_edge_ip_restriction_module_delete_request.md b/docs/api/examples/_tcp_edge_ip_restriction_module_delete_request.md new file mode 100644 index 000000000..773369464 --- /dev/null +++ b/docs/api/examples/_tcp_edge_ip_restriction_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tcp/edgtcp_2otb000geR1Qe5eMZRSYRvU5ZiM/ip_restriction +``` diff --git a/docs/api/examples/_tcp_edge_ip_restriction_module_delete_response.md b/docs/api/examples/_tcp_edge_ip_restriction_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tcp_edge_ip_restriction_module_get_request.md b/docs/api/examples/_tcp_edge_ip_restriction_module_get_request.md new file mode 100644 index 000000000..8a99648dc --- /dev/null +++ b/docs/api/examples/_tcp_edge_ip_restriction_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tcp/edgtcp_2otb000geR1Qe5eMZRSYRvU5ZiM/ip_restriction +``` diff --git a/docs/api/examples/_tcp_edge_ip_restriction_module_get_response.md b/docs/api/examples/_tcp_edge_ip_restriction_module_get_response.md new file mode 100644 index 000000000..e42792372 --- /dev/null +++ b/docs/api/examples/_tcp_edge_ip_restriction_module_get_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otaztDDJtQvCLB9dNqCAKGAQoU", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otaztDDJtQvCLB9dNqCAKGAQoU" + } + ] +} +``` diff --git a/docs/api/examples/_tcp_edge_ip_restriction_module_replace_request.md b/docs/api/examples/_tcp_edge_ip_restriction_module_replace_request.md new file mode 100644 index 000000000..46f919b8e --- /dev/null +++ b/docs/api/examples/_tcp_edge_ip_restriction_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"ip_policy_ids":["ipp_2otaztDDJtQvCLB9dNqCAKGAQoU"]}' \ +https://api.ngrok.com/edges/tcp/edgtcp_2otb000geR1Qe5eMZRSYRvU5ZiM/ip_restriction +``` diff --git a/docs/api/examples/_tcp_edge_ip_restriction_module_replace_response.md b/docs/api/examples/_tcp_edge_ip_restriction_module_replace_response.md new file mode 100644 index 000000000..e42792372 --- /dev/null +++ b/docs/api/examples/_tcp_edge_ip_restriction_module_replace_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otaztDDJtQvCLB9dNqCAKGAQoU", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otaztDDJtQvCLB9dNqCAKGAQoU" + } + ] +} +``` diff --git a/docs/api/examples/_tcp_edge_traffic_policy_module_delete_request.md b/docs/api/examples/_tcp_edge_traffic_policy_module_delete_request.md new file mode 100644 index 000000000..8639b39e5 --- /dev/null +++ b/docs/api/examples/_tcp_edge_traffic_policy_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tcp/edgtcp_2otazwPcvbEkqrltNgmwVwFaDz3/traffic_policy +``` diff --git a/docs/api/examples/_tcp_edge_traffic_policy_module_delete_response.md b/docs/api/examples/_tcp_edge_traffic_policy_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tcp_edge_traffic_policy_module_get_request.md b/docs/api/examples/_tcp_edge_traffic_policy_module_get_request.md new file mode 100644 index 000000000..cd5b34dbe --- /dev/null +++ b/docs/api/examples/_tcp_edge_traffic_policy_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tcp/edgtcp_2otazwPcvbEkqrltNgmwVwFaDz3/traffic_policy +``` diff --git a/docs/api/examples/_tcp_edge_traffic_policy_module_get_response.md b/docs/api/examples/_tcp_edge_traffic_policy_module_get_response.md new file mode 100644 index 000000000..931f74585 --- /dev/null +++ b/docs/api/examples/_tcp_edge_traffic_policy_module_get_response.md @@ -0,0 +1,10 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "value": "{\"on_tcp_connect\":[{\"name\":\"Block IP\",\"expressions\":[\"conn.client_ip == '192.0.2.0'\"],\"actions\":[{\"type\":\"deny\"}]}]}" +} +``` diff --git a/docs/api/examples/_tcp_edge_traffic_policy_module_replace_request.md b/docs/api/examples/_tcp_edge_traffic_policy_module_replace_request.md new file mode 100644 index 000000000..218f51f88 --- /dev/null +++ b/docs/api/examples/_tcp_edge_traffic_policy_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"value":"{\"on_tcp_connect\":[{\"name\":\"Block IP\",\"expressions\":[\"conn.client_ip == '192.0.2.0'\"],\"actions\":[{\"type\":\"deny\"}]}]}"}' \ +https://api.ngrok.com/edges/tcp/edgtcp_2otazwPcvbEkqrltNgmwVwFaDz3/traffic_policy +``` diff --git a/docs/api/examples/_tcp_edge_traffic_policy_module_replace_response.md b/docs/api/examples/_tcp_edge_traffic_policy_module_replace_response.md new file mode 100644 index 000000000..931f74585 --- /dev/null +++ b/docs/api/examples/_tcp_edge_traffic_policy_module_replace_response.md @@ -0,0 +1,10 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "value": "{\"on_tcp_connect\":[{\"name\":\"Block IP\",\"expressions\":[\"conn.client_ip == '192.0.2.0'\"],\"actions\":[{\"type\":\"deny\"}]}]}" +} +``` diff --git a/docs/api/examples/_tls_certificates_create_request.md b/docs/api/examples/_tls_certificates_create_request.md new file mode 100644 index 000000000..053485bf2 --- /dev/null +++ b/docs/api/examples/_tls_certificates_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"certificate_pem":"-----BEGIN CERTIFICATE-----\nMIIDDTCCAfWgAwIBAgIUBUunDdA4gjgtEbZA8w9Ljhvl3bEwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjAwMzI0MTgxODE5WhcNMjAw\nNDIzMTgxODE5WjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAPKVkkKYNl3d9cqrz4tIFlwsohED5W4y1dcBixy4\nGANFFnw43nc2wPyKwYXumJqJIFrcW/NkUZL07bd+dou6mT6Gh/zbaTW91IkREPXL\n7b3KfVu4XkFosVXpWs0U6o4GrZ81CLiKBWI+H03x/ij5OSiJ1l71pqLeTJLOydAR\nAl8kpp7axeHU4UbDrAZkW5SnuZTjIKwVg0UNsBg1yNfUOu1Uah3BYaqPgQitC0Yg\nLW+NUGu/T91bkD7tLsVInkQXeQGdXBAqOycfJ7wj8OlIpyuXjTnGFA0izVmbQw5f\nrQnZ0geGyhLamvz9Gcd7mIlD/+/AEN9Lht82tAOzKG98/O8CAwEAAaNTMFEwHQYD\nVR0OBBYEFKv6RsvEC6T+zCtJZwB0FCR1sEkhMB8GA1UdIwQYMBaAFKv6RsvEC6T+\nzCtJZwB0FCR1sEkhMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB\nAC5fBrouinespo5+9AipjhY/HOKTg+OCnppFnSnqeU1eXZZJ0oakdHTpTNxtbQP9\ntOJTA2f3KWvmpNDMohEQXZz8wHDkdbrIXJKVp6zs1pEp+0BIjA4y9mSywa5xuyk0\noGeChRgGqp2JujDyPCb7LEaKKQEEdMqy73QG+jEAh14+wKixlAf1nATBdeCUvssK\n2x1uZMyqjJFB5y/5EdnWQzD4WJkrsCkxsZHVMN1d+dqf2sf3dTRV8fzsFGOG17NS\n6u2n9iGcFdBA82XN8yeLIWhy1t3GWutG1sdxENbFRRXea+iUqzDsmRtkaBma2GLQ\nd6JTpFbsCtwDjP23UEi7SZo=\n-----END CERTIFICATE-----","private_key_pem":"-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDylZJCmDZd3fXK\nq8+LSBZcLKIRA+VuMtXXAYscuBgDRRZ8ON53NsD8isGF7piaiSBa3FvzZFGS9O23\nfnaLupk+hof822k1vdSJERD1y+29yn1buF5BaLFV6VrNFOqOBq2fNQi4igViPh9N\n8f4o+TkoidZe9aai3kySzsnQEQJfJKae2sXh1OFGw6wGZFuUp7mU4yCsFYNFDbAY\nNcjX1DrtVGodwWGqj4EIrQtGIC1vjVBrv0/dW5A+7S7FSJ5EF3kBnVwQKjsnHye8\nI/DpSKcrl405xhQNIs1Zm0MOX60J2dIHhsoS2pr8/RnHe5iJQ//vwBDfS4bfNrQD\nsyhvfPzvAgMBAAECggEBALLv7YE98exvi5zB+0fMFuJK8gkHDLequ93q/4hhqyTO\nU3WyJTdepiAi4fk/NEXZnIopPZJdj2aNUMQnfp43OE7MwYac+hBwRFQOyKnmkSmM\nMcf0SWKKLTUn+piIMzQsbOmhHxuwg6QiGslOFaJ3o9fpRL2rCg3dWDJ6Ypcd1NgE\nK0uy7gg+DwIpU6MeG6lA+HbxbGi+yd2x88Gjn9dGr7FZK34RUDooH60BCX9P8N9X\nT+n10MzzX7ZQOsLfe8FKc1/X8AybI5SYm1GMyfKD4QBt6JG4HKAjPHzBzcIpfN3d\n7BM11Imkrz7LcbUG+F23NVsi6n5IIGT1WqwCRIH2PpECgYEA/SJ5Ra4d0hUS5RYB\nzABquM3sp7JsKxCn7O5PqNLB4TgH9dXtWFhaFVB6juMGyHbvktVH0j4lps/Te0rk\nVU2zU1XxvCTFhtcCYUtNk0cRw6LH8feKiorXHdDRB33t0c47QSD/6AGOjBtxqD7B\n3ZxyR3P+7RdQopLLRFN+FHAnmzsCgYEA9VSGZDFSK+fbg4CgwkWdzuHrAXaUEv0U\novqqWd/yXB9wauEvRHnOrSgW6hFZQiatJOXx0KnalJQzohz/SLGO0MqGtwQbYWVT\nWiJgjUbNeiPEHBeUA6U55lVQr26kQSUWdXEtRbDz+hqV1K+6tTEMzaSPmJiHNgki\nlNMO2gqGQd0CgYBJ268qx5zn2UJEGWG41j5NYbg1TfgFsLxugzI2/heX0TNxZVP1\nPQI7ydmYq2ElSJ6qZxSnoX5255i7FqT8xskV/bOkw83mhAGrxb8Cw+/I90wDq8h+\nl/ggOPdkijfDybq8TBae6SVgd/l3r6f9M1KcypmNMApVBSPN8daNvBOyVQKBgQDo\nsj2utyFrx8Xsm4rf+kxOuPbBMooM4MQ8OmpuSP6G5sMofWLqHmcs0sO5TK9PEYRV\nZU3ST+ml2FSJRdvWRaRi4laZLWoTHZrL+aN/HVM0sMwIoUyhkIy0ruOTIuzlZZpB\n1xHL8qXX6nOHgw8jYdz1CUuyv6owVMXaR77kjer+eQKBgByYZlR/eNTzlot0SdFl\nIbgQ9bV7VLIo+vKzOXE3trfzRJMgUosLTp+5wdSVSW/VBdYZ7Ir3n0bbpY/dGinI\nVShxPbChhCZnhvG2lEEiekI44m5jHSA6hhtRdt/CrhL65Rw2SE5lMEe8htg1UGus\nwzLHWHBl72FjbjdhvEgrq60W\n-----END PRIVATE KEY-----"}' \ +https://api.ngrok.com/tls_certificates +``` diff --git a/docs/api/examples/_tls_certificates_create_response.md b/docs/api/examples/_tls_certificates_create_response.md new file mode 100644 index 000000000..712b423fa --- /dev/null +++ b/docs/api/examples/_tls_certificates_create_response.md @@ -0,0 +1,30 @@ + + +#### Example Response + +```json +{ + "certificate_pem": "-----BEGIN CERTIFICATE-----\nMIIDDTCCAfWgAwIBAgIUBUunDdA4gjgtEbZA8w9Ljhvl3bEwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjAwMzI0MTgxODE5WhcNMjAw\nNDIzMTgxODE5WjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAPKVkkKYNl3d9cqrz4tIFlwsohED5W4y1dcBixy4\nGANFFnw43nc2wPyKwYXumJqJIFrcW/NkUZL07bd+dou6mT6Gh/zbaTW91IkREPXL\n7b3KfVu4XkFosVXpWs0U6o4GrZ81CLiKBWI+H03x/ij5OSiJ1l71pqLeTJLOydAR\nAl8kpp7axeHU4UbDrAZkW5SnuZTjIKwVg0UNsBg1yNfUOu1Uah3BYaqPgQitC0Yg\nLW+NUGu/T91bkD7tLsVInkQXeQGdXBAqOycfJ7wj8OlIpyuXjTnGFA0izVmbQw5f\nrQnZ0geGyhLamvz9Gcd7mIlD/+/AEN9Lht82tAOzKG98/O8CAwEAAaNTMFEwHQYD\nVR0OBBYEFKv6RsvEC6T+zCtJZwB0FCR1sEkhMB8GA1UdIwQYMBaAFKv6RsvEC6T+\nzCtJZwB0FCR1sEkhMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB\nAC5fBrouinespo5+9AipjhY/HOKTg+OCnppFnSnqeU1eXZZJ0oakdHTpTNxtbQP9\ntOJTA2f3KWvmpNDMohEQXZz8wHDkdbrIXJKVp6zs1pEp+0BIjA4y9mSywa5xuyk0\noGeChRgGqp2JujDyPCb7LEaKKQEEdMqy73QG+jEAh14+wKixlAf1nATBdeCUvssK\n2x1uZMyqjJFB5y/5EdnWQzD4WJkrsCkxsZHVMN1d+dqf2sf3dTRV8fzsFGOG17NS\n6u2n9iGcFdBA82XN8yeLIWhy1t3GWutG1sdxENbFRRXea+iUqzDsmRtkaBma2GLQ\nd6JTpFbsCtwDjP23UEi7SZo=\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "extended_key_usages": [], + "id": "cert_2otazNWtk1kdFBfHlFCkNX1fBUu", + "issued_at": null, + "issuer_common_name": "example.com", + "key_usages": [], + "not_after": "2020-04-23T18:18:19Z", + "not_before": "2020-03-24T18:18:19Z", + "private_key_type": "rsa", + "serial_number": "054ba70dd03882382d11b640f30f4b8e1be5ddb1", + "subject_alternative_names": { + "dns_names": [], + "ips": [] + }, + "subject_common_name": "example.com", + "subject_country": "", + "subject_locality": "", + "subject_organization": "", + "subject_organizational_unit": "", + "subject_province": "", + "uri": "https://api.ngrok.com/tls_certificates/cert_2otazNWtk1kdFBfHlFCkNX1fBUu" +} +``` diff --git a/docs/api/examples/_tls_certificates_delete_request.md b/docs/api/examples/_tls_certificates_delete_request.md new file mode 100644 index 000000000..ab37a60bf --- /dev/null +++ b/docs/api/examples/_tls_certificates_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/tls_certificates/cert_2otazNWtk1kdFBfHlFCkNX1fBUu +``` diff --git a/docs/api/examples/_tls_certificates_delete_response.md b/docs/api/examples/_tls_certificates_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tls_certificates_get_request.md b/docs/api/examples/_tls_certificates_get_request.md new file mode 100644 index 000000000..0dd2fe026 --- /dev/null +++ b/docs/api/examples/_tls_certificates_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/tls_certificates/cert_2otazNWtk1kdFBfHlFCkNX1fBUu +``` diff --git a/docs/api/examples/_tls_certificates_get_response.md b/docs/api/examples/_tls_certificates_get_response.md new file mode 100644 index 000000000..974a9dc7c --- /dev/null +++ b/docs/api/examples/_tls_certificates_get_response.md @@ -0,0 +1,31 @@ + + +#### Example Response + +```json +{ + "certificate_pem": "-----BEGIN CERTIFICATE-----\nMIIDDTCCAfWgAwIBAgIUBUunDdA4gjgtEbZA8w9Ljhvl3bEwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjAwMzI0MTgxODE5WhcNMjAw\nNDIzMTgxODE5WjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAPKVkkKYNl3d9cqrz4tIFlwsohED5W4y1dcBixy4\nGANFFnw43nc2wPyKwYXumJqJIFrcW/NkUZL07bd+dou6mT6Gh/zbaTW91IkREPXL\n7b3KfVu4XkFosVXpWs0U6o4GrZ81CLiKBWI+H03x/ij5OSiJ1l71pqLeTJLOydAR\nAl8kpp7axeHU4UbDrAZkW5SnuZTjIKwVg0UNsBg1yNfUOu1Uah3BYaqPgQitC0Yg\nLW+NUGu/T91bkD7tLsVInkQXeQGdXBAqOycfJ7wj8OlIpyuXjTnGFA0izVmbQw5f\nrQnZ0geGyhLamvz9Gcd7mIlD/+/AEN9Lht82tAOzKG98/O8CAwEAAaNTMFEwHQYD\nVR0OBBYEFKv6RsvEC6T+zCtJZwB0FCR1sEkhMB8GA1UdIwQYMBaAFKv6RsvEC6T+\nzCtJZwB0FCR1sEkhMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB\nAC5fBrouinespo5+9AipjhY/HOKTg+OCnppFnSnqeU1eXZZJ0oakdHTpTNxtbQP9\ntOJTA2f3KWvmpNDMohEQXZz8wHDkdbrIXJKVp6zs1pEp+0BIjA4y9mSywa5xuyk0\noGeChRgGqp2JujDyPCb7LEaKKQEEdMqy73QG+jEAh14+wKixlAf1nATBdeCUvssK\n2x1uZMyqjJFB5y/5EdnWQzD4WJkrsCkxsZHVMN1d+dqf2sf3dTRV8fzsFGOG17NS\n6u2n9iGcFdBA82XN8yeLIWhy1t3GWutG1sdxENbFRRXea+iUqzDsmRtkaBma2GLQ\nd6JTpFbsCtwDjP23UEi7SZo=\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "extended_key_usages": [], + "id": "cert_2otazNWtk1kdFBfHlFCkNX1fBUu", + "issued_at": null, + "issuer_common_name": "example.com", + "key_usages": [], + "metadata": "{\"example\": true}", + "not_after": "2020-04-23T18:18:19Z", + "not_before": "2020-03-24T18:18:19Z", + "private_key_type": "rsa", + "serial_number": "054ba70dd03882382d11b640f30f4b8e1be5ddb1", + "subject_alternative_names": { + "dns_names": [], + "ips": [] + }, + "subject_common_name": "example.com", + "subject_country": "", + "subject_locality": "", + "subject_organization": "", + "subject_organizational_unit": "", + "subject_province": "", + "uri": "https://api.ngrok.com/tls_certificates/cert_2otazNWtk1kdFBfHlFCkNX1fBUu" +} +``` diff --git a/docs/api/examples/_tls_certificates_list_request.md b/docs/api/examples/_tls_certificates_list_request.md new file mode 100644 index 000000000..feaa70b9c --- /dev/null +++ b/docs/api/examples/_tls_certificates_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/tls_certificates +``` diff --git a/docs/api/examples/_tls_certificates_list_response.md b/docs/api/examples/_tls_certificates_list_response.md new file mode 100644 index 000000000..6875a65e5 --- /dev/null +++ b/docs/api/examples/_tls_certificates_list_response.md @@ -0,0 +1,60 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "tls_certificates": [ + { + "certificate_pem": "-----BEGIN CERTIFICATE-----\nMIIDDTCCAfWgAwIBAgIUBUunDdA4gjgtEbZA8w9Ljhvl3bEwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjAwMzI0MTgxODE5WhcNMjAw\nNDIzMTgxODE5WjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAPKVkkKYNl3d9cqrz4tIFlwsohED5W4y1dcBixy4\nGANFFnw43nc2wPyKwYXumJqJIFrcW/NkUZL07bd+dou6mT6Gh/zbaTW91IkREPXL\n7b3KfVu4XkFosVXpWs0U6o4GrZ81CLiKBWI+H03x/ij5OSiJ1l71pqLeTJLOydAR\nAl8kpp7axeHU4UbDrAZkW5SnuZTjIKwVg0UNsBg1yNfUOu1Uah3BYaqPgQitC0Yg\nLW+NUGu/T91bkD7tLsVInkQXeQGdXBAqOycfJ7wj8OlIpyuXjTnGFA0izVmbQw5f\nrQnZ0geGyhLamvz9Gcd7mIlD/+/AEN9Lht82tAOzKG98/O8CAwEAAaNTMFEwHQYD\nVR0OBBYEFKv6RsvEC6T+zCtJZwB0FCR1sEkhMB8GA1UdIwQYMBaAFKv6RsvEC6T+\nzCtJZwB0FCR1sEkhMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB\nAC5fBrouinespo5+9AipjhY/HOKTg+OCnppFnSnqeU1eXZZJ0oakdHTpTNxtbQP9\ntOJTA2f3KWvmpNDMohEQXZz8wHDkdbrIXJKVp6zs1pEp+0BIjA4y9mSywa5xuyk0\noGeChRgGqp2JujDyPCb7LEaKKQEEdMqy73QG+jEAh14+wKixlAf1nATBdeCUvssK\n2x1uZMyqjJFB5y/5EdnWQzD4WJkrsCkxsZHVMN1d+dqf2sf3dTRV8fzsFGOG17NS\n6u2n9iGcFdBA82XN8yeLIWhy1t3GWutG1sdxENbFRRXea+iUqzDsmRtkaBma2GLQ\nd6JTpFbsCtwDjP23UEi7SZo=\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:03Z", + "extended_key_usages": [], + "id": "cert_2otawSZAphGXQllehlCkiJ9v7ZA", + "issued_at": null, + "issuer_common_name": "example.com", + "key_usages": [], + "not_after": "2020-04-23T18:18:19Z", + "not_before": "2020-03-24T18:18:19Z", + "private_key_type": "rsa", + "serial_number": "054ba70dd03882382d11b640f30f4b8e1be5ddb1", + "subject_alternative_names": { + "dns_names": [], + "ips": [] + }, + "subject_common_name": "example.com", + "subject_country": "", + "subject_locality": "", + "subject_organization": "", + "subject_organizational_unit": "", + "subject_province": "", + "uri": "https://api.ngrok.com/tls_certificates/cert_2otawSZAphGXQllehlCkiJ9v7ZA" + }, + { + "certificate_pem": "-----BEGIN CERTIFICATE-----\nMIIDDTCCAfWgAwIBAgIUBUunDdA4gjgtEbZA8w9Ljhvl3bEwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjAwMzI0MTgxODE5WhcNMjAw\nNDIzMTgxODE5WjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAPKVkkKYNl3d9cqrz4tIFlwsohED5W4y1dcBixy4\nGANFFnw43nc2wPyKwYXumJqJIFrcW/NkUZL07bd+dou6mT6Gh/zbaTW91IkREPXL\n7b3KfVu4XkFosVXpWs0U6o4GrZ81CLiKBWI+H03x/ij5OSiJ1l71pqLeTJLOydAR\nAl8kpp7axeHU4UbDrAZkW5SnuZTjIKwVg0UNsBg1yNfUOu1Uah3BYaqPgQitC0Yg\nLW+NUGu/T91bkD7tLsVInkQXeQGdXBAqOycfJ7wj8OlIpyuXjTnGFA0izVmbQw5f\nrQnZ0geGyhLamvz9Gcd7mIlD/+/AEN9Lht82tAOzKG98/O8CAwEAAaNTMFEwHQYD\nVR0OBBYEFKv6RsvEC6T+zCtJZwB0FCR1sEkhMB8GA1UdIwQYMBaAFKv6RsvEC6T+\nzCtJZwB0FCR1sEkhMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB\nAC5fBrouinespo5+9AipjhY/HOKTg+OCnppFnSnqeU1eXZZJ0oakdHTpTNxtbQP9\ntOJTA2f3KWvmpNDMohEQXZz8wHDkdbrIXJKVp6zs1pEp+0BIjA4y9mSywa5xuyk0\noGeChRgGqp2JujDyPCb7LEaKKQEEdMqy73QG+jEAh14+wKixlAf1nATBdeCUvssK\n2x1uZMyqjJFB5y/5EdnWQzD4WJkrsCkxsZHVMN1d+dqf2sf3dTRV8fzsFGOG17NS\n6u2n9iGcFdBA82XN8yeLIWhy1t3GWutG1sdxENbFRRXea+iUqzDsmRtkaBma2GLQ\nd6JTpFbsCtwDjP23UEi7SZo=\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "extended_key_usages": [], + "id": "cert_2otazNWtk1kdFBfHlFCkNX1fBUu", + "issued_at": null, + "issuer_common_name": "example.com", + "key_usages": [], + "not_after": "2020-04-23T18:18:19Z", + "not_before": "2020-03-24T18:18:19Z", + "private_key_type": "rsa", + "serial_number": "054ba70dd03882382d11b640f30f4b8e1be5ddb1", + "subject_alternative_names": { + "dns_names": [], + "ips": [] + }, + "subject_common_name": "example.com", + "subject_country": "", + "subject_locality": "", + "subject_organization": "", + "subject_organizational_unit": "", + "subject_province": "", + "uri": "https://api.ngrok.com/tls_certificates/cert_2otazNWtk1kdFBfHlFCkNX1fBUu" + } + ], + "uri": "https://api.ngrok.com/tls_certificates" +} +``` diff --git a/docs/api/examples/_tls_certificates_update_request.md b/docs/api/examples/_tls_certificates_update_request.md new file mode 100644 index 000000000..ec75225a1 --- /dev/null +++ b/docs/api/examples/_tls_certificates_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"example\": true}"}' \ +https://api.ngrok.com/tls_certificates/cert_2otazNWtk1kdFBfHlFCkNX1fBUu +``` diff --git a/docs/api/examples/_tls_certificates_update_response.md b/docs/api/examples/_tls_certificates_update_response.md new file mode 100644 index 000000000..974a9dc7c --- /dev/null +++ b/docs/api/examples/_tls_certificates_update_response.md @@ -0,0 +1,31 @@ + + +#### Example Response + +```json +{ + "certificate_pem": "-----BEGIN CERTIFICATE-----\nMIIDDTCCAfWgAwIBAgIUBUunDdA4gjgtEbZA8w9Ljhvl3bEwDQYJKoZIhvcNAQEL\nBQAwFjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjAwMzI0MTgxODE5WhcNMjAw\nNDIzMTgxODE5WjAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAPKVkkKYNl3d9cqrz4tIFlwsohED5W4y1dcBixy4\nGANFFnw43nc2wPyKwYXumJqJIFrcW/NkUZL07bd+dou6mT6Gh/zbaTW91IkREPXL\n7b3KfVu4XkFosVXpWs0U6o4GrZ81CLiKBWI+H03x/ij5OSiJ1l71pqLeTJLOydAR\nAl8kpp7axeHU4UbDrAZkW5SnuZTjIKwVg0UNsBg1yNfUOu1Uah3BYaqPgQitC0Yg\nLW+NUGu/T91bkD7tLsVInkQXeQGdXBAqOycfJ7wj8OlIpyuXjTnGFA0izVmbQw5f\nrQnZ0geGyhLamvz9Gcd7mIlD/+/AEN9Lht82tAOzKG98/O8CAwEAAaNTMFEwHQYD\nVR0OBBYEFKv6RsvEC6T+zCtJZwB0FCR1sEkhMB8GA1UdIwQYMBaAFKv6RsvEC6T+\nzCtJZwB0FCR1sEkhMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB\nAC5fBrouinespo5+9AipjhY/HOKTg+OCnppFnSnqeU1eXZZJ0oakdHTpTNxtbQP9\ntOJTA2f3KWvmpNDMohEQXZz8wHDkdbrIXJKVp6zs1pEp+0BIjA4y9mSywa5xuyk0\noGeChRgGqp2JujDyPCb7LEaKKQEEdMqy73QG+jEAh14+wKixlAf1nATBdeCUvssK\n2x1uZMyqjJFB5y/5EdnWQzD4WJkrsCkxsZHVMN1d+dqf2sf3dTRV8fzsFGOG17NS\n6u2n9iGcFdBA82XN8yeLIWhy1t3GWutG1sdxENbFRRXea+iUqzDsmRtkaBma2GLQ\nd6JTpFbsCtwDjP23UEi7SZo=\n-----END CERTIFICATE-----\n", + "created_at": "2024-11-15T17:26:26Z", + "extended_key_usages": [], + "id": "cert_2otazNWtk1kdFBfHlFCkNX1fBUu", + "issued_at": null, + "issuer_common_name": "example.com", + "key_usages": [], + "metadata": "{\"example\": true}", + "not_after": "2020-04-23T18:18:19Z", + "not_before": "2020-03-24T18:18:19Z", + "private_key_type": "rsa", + "serial_number": "054ba70dd03882382d11b640f30f4b8e1be5ddb1", + "subject_alternative_names": { + "dns_names": [], + "ips": [] + }, + "subject_common_name": "example.com", + "subject_country": "", + "subject_locality": "", + "subject_organization": "", + "subject_organizational_unit": "", + "subject_province": "", + "uri": "https://api.ngrok.com/tls_certificates/cert_2otazNWtk1kdFBfHlFCkNX1fBUu" +} +``` diff --git a/docs/api/examples/_tls_edge_backend_module_delete_request.md b/docs/api/examples/_tls_edge_backend_module_delete_request.md new file mode 100644 index 000000000..888f86e0d --- /dev/null +++ b/docs/api/examples/_tls_edge_backend_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otazyJ6Z6TtnrvHxecOsz9D9iH/backend +``` diff --git a/docs/api/examples/_tls_edge_backend_module_delete_response.md b/docs/api/examples/_tls_edge_backend_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tls_edge_backend_module_get_request.md b/docs/api/examples/_tls_edge_backend_module_get_request.md new file mode 100644 index 000000000..f3f434b71 --- /dev/null +++ b/docs/api/examples/_tls_edge_backend_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otazyJ6Z6TtnrvHxecOsz9D9iH/backend +``` diff --git a/docs/api/examples/_tls_edge_backend_module_get_response.md b/docs/api/examples/_tls_edge_backend_module_get_response.md new file mode 100644 index 000000000..b84b0efca --- /dev/null +++ b/docs/api/examples/_tls_edge_backend_module_get_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "backend": { + "id": "bkdtg_2otazvF8hyumpQvebPVsceZpQ3e", + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazvF8hyumpQvebPVsceZpQ3e" + }, + "enabled": true +} +``` diff --git a/docs/api/examples/_tls_edge_backend_module_replace_request.md b/docs/api/examples/_tls_edge_backend_module_replace_request.md new file mode 100644 index 000000000..83b3f5979 --- /dev/null +++ b/docs/api/examples/_tls_edge_backend_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"backend_id":"bkdtg_2otazvF8hyumpQvebPVsceZpQ3e","enabled":true}' \ +https://api.ngrok.com/edges/tls/edgtls_2otazyJ6Z6TtnrvHxecOsz9D9iH/backend +``` diff --git a/docs/api/examples/_tls_edge_backend_module_replace_response.md b/docs/api/examples/_tls_edge_backend_module_replace_response.md new file mode 100644 index 000000000..b84b0efca --- /dev/null +++ b/docs/api/examples/_tls_edge_backend_module_replace_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "backend": { + "id": "bkdtg_2otazvF8hyumpQvebPVsceZpQ3e", + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazvF8hyumpQvebPVsceZpQ3e" + }, + "enabled": true +} +``` diff --git a/docs/api/examples/_tls_edge_ip_restriction_module_delete_request.md b/docs/api/examples/_tls_edge_ip_restriction_module_delete_request.md new file mode 100644 index 000000000..802cebf86 --- /dev/null +++ b/docs/api/examples/_tls_edge_ip_restriction_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otaztkdmYkU6w4NRxoswj7WzOv/ip_restriction +``` diff --git a/docs/api/examples/_tls_edge_ip_restriction_module_delete_response.md b/docs/api/examples/_tls_edge_ip_restriction_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tls_edge_ip_restriction_module_get_request.md b/docs/api/examples/_tls_edge_ip_restriction_module_get_request.md new file mode 100644 index 000000000..4d4b283f1 --- /dev/null +++ b/docs/api/examples/_tls_edge_ip_restriction_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otaztkdmYkU6w4NRxoswj7WzOv/ip_restriction +``` diff --git a/docs/api/examples/_tls_edge_ip_restriction_module_get_response.md b/docs/api/examples/_tls_edge_ip_restriction_module_get_response.md new file mode 100644 index 000000000..54d17f345 --- /dev/null +++ b/docs/api/examples/_tls_edge_ip_restriction_module_get_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otazx7retp7Cb5Q7m4wToF13yY", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazx7retp7Cb5Q7m4wToF13yY" + }, + { + "id": "ipp_2otazx8HBkCVYaH2oweA8UXXaIQ", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazx8HBkCVYaH2oweA8UXXaIQ" + } + ] +} +``` diff --git a/docs/api/examples/_tls_edge_ip_restriction_module_replace_request.md b/docs/api/examples/_tls_edge_ip_restriction_module_replace_request.md new file mode 100644 index 000000000..aed835ae9 --- /dev/null +++ b/docs/api/examples/_tls_edge_ip_restriction_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"ip_policy_ids":["ipp_2otazx7retp7Cb5Q7m4wToF13yY","ipp_2otazx8HBkCVYaH2oweA8UXXaIQ"]}' \ +https://api.ngrok.com/edges/tls/edgtls_2otaztkdmYkU6w4NRxoswj7WzOv/ip_restriction +``` diff --git a/docs/api/examples/_tls_edge_ip_restriction_module_replace_response.md b/docs/api/examples/_tls_edge_ip_restriction_module_replace_response.md new file mode 100644 index 000000000..54d17f345 --- /dev/null +++ b/docs/api/examples/_tls_edge_ip_restriction_module_replace_response.md @@ -0,0 +1,19 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "ip_policies": [ + { + "id": "ipp_2otazx7retp7Cb5Q7m4wToF13yY", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazx7retp7Cb5Q7m4wToF13yY" + }, + { + "id": "ipp_2otazx8HBkCVYaH2oweA8UXXaIQ", + "uri": "https://api.ngrok.com/ip_policies/ipp_2otazx8HBkCVYaH2oweA8UXXaIQ" + } + ] +} +``` diff --git a/docs/api/examples/_tls_edge_mutual_tls_module_delete_request.md b/docs/api/examples/_tls_edge_mutual_tls_module_delete_request.md new file mode 100644 index 000000000..9f302228d --- /dev/null +++ b/docs/api/examples/_tls_edge_mutual_tls_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otazwq2kmwcZEVhHv8dKKPqaRO/mutual_tls +``` diff --git a/docs/api/examples/_tls_edge_mutual_tls_module_delete_response.md b/docs/api/examples/_tls_edge_mutual_tls_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tls_edge_mutual_tls_module_get_request.md b/docs/api/examples/_tls_edge_mutual_tls_module_get_request.md new file mode 100644 index 000000000..4f2351b22 --- /dev/null +++ b/docs/api/examples/_tls_edge_mutual_tls_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otazwq2kmwcZEVhHv8dKKPqaRO/mutual_tls +``` diff --git a/docs/api/examples/_tls_edge_mutual_tls_module_get_response.md b/docs/api/examples/_tls_edge_mutual_tls_module_get_response.md new file mode 100644 index 000000000..45b64bf61 --- /dev/null +++ b/docs/api/examples/_tls_edge_mutual_tls_module_get_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "certificate_authorities": [ + { + "id": "ca_2otazzC7Av26wfnZJoHQOipWubJ", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazzC7Av26wfnZJoHQOipWubJ" + } + ], + "enabled": true +} +``` diff --git a/docs/api/examples/_tls_edge_mutual_tls_module_replace_request.md b/docs/api/examples/_tls_edge_mutual_tls_module_replace_request.md new file mode 100644 index 000000000..a15a3a944 --- /dev/null +++ b/docs/api/examples/_tls_edge_mutual_tls_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"certificate_authority_ids":["ca_2otazzC7Av26wfnZJoHQOipWubJ"],"enabled":true}' \ +https://api.ngrok.com/edges/tls/edgtls_2otazwq2kmwcZEVhHv8dKKPqaRO/mutual_tls +``` diff --git a/docs/api/examples/_tls_edge_mutual_tls_module_replace_response.md b/docs/api/examples/_tls_edge_mutual_tls_module_replace_response.md new file mode 100644 index 000000000..45b64bf61 --- /dev/null +++ b/docs/api/examples/_tls_edge_mutual_tls_module_replace_response.md @@ -0,0 +1,15 @@ + + +#### Example Response + +```json +{ + "certificate_authorities": [ + { + "id": "ca_2otazzC7Av26wfnZJoHQOipWubJ", + "uri": "https://api.ngrok.com/certificate_authorities/ca_2otazzC7Av26wfnZJoHQOipWubJ" + } + ], + "enabled": true +} +``` diff --git a/docs/api/examples/_tls_edge_tls_termination_module_delete_request.md b/docs/api/examples/_tls_edge_tls_termination_module_delete_request.md new file mode 100644 index 000000000..9aed1ab77 --- /dev/null +++ b/docs/api/examples/_tls_edge_tls_termination_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otb02IraKEHW55cLYs9Fve2Pyc/tls_termination +``` diff --git a/docs/api/examples/_tls_edge_tls_termination_module_delete_response.md b/docs/api/examples/_tls_edge_tls_termination_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tls_edge_tls_termination_module_get_request.md b/docs/api/examples/_tls_edge_tls_termination_module_get_request.md new file mode 100644 index 000000000..dd6f43e32 --- /dev/null +++ b/docs/api/examples/_tls_edge_tls_termination_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otb02IraKEHW55cLYs9Fve2Pyc/tls_termination +``` diff --git a/docs/api/examples/_tls_edge_tls_termination_module_get_response.md b/docs/api/examples/_tls_edge_tls_termination_module_get_response.md new file mode 100644 index 000000000..b80c13894 --- /dev/null +++ b/docs/api/examples/_tls_edge_tls_termination_module_get_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "min_version": "1.3", + "terminate_at": "edge" +} +``` diff --git a/docs/api/examples/_tls_edge_tls_termination_module_replace_request.md b/docs/api/examples/_tls_edge_tls_termination_module_replace_request.md new file mode 100644 index 000000000..a78d010e7 --- /dev/null +++ b/docs/api/examples/_tls_edge_tls_termination_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"min_version":"1.3","terminate_at":"edge"}' \ +https://api.ngrok.com/edges/tls/edgtls_2otb02IraKEHW55cLYs9Fve2Pyc/tls_termination +``` diff --git a/docs/api/examples/_tls_edge_tls_termination_module_replace_response.md b/docs/api/examples/_tls_edge_tls_termination_module_replace_response.md new file mode 100644 index 000000000..b80c13894 --- /dev/null +++ b/docs/api/examples/_tls_edge_tls_termination_module_replace_response.md @@ -0,0 +1,11 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "min_version": "1.3", + "terminate_at": "edge" +} +``` diff --git a/docs/api/examples/_tls_edge_traffic_policy_module_delete_request.md b/docs/api/examples/_tls_edge_traffic_policy_module_delete_request.md new file mode 100644 index 000000000..1105bcc3e --- /dev/null +++ b/docs/api/examples/_tls_edge_traffic_policy_module_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otb048NBXge0qF9wkSNxvGWkA3/traffic_policy +``` diff --git a/docs/api/examples/_tls_edge_traffic_policy_module_delete_response.md b/docs/api/examples/_tls_edge_traffic_policy_module_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tls_edge_traffic_policy_module_get_request.md b/docs/api/examples/_tls_edge_traffic_policy_module_get_request.md new file mode 100644 index 000000000..27871af11 --- /dev/null +++ b/docs/api/examples/_tls_edge_traffic_policy_module_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/edges/tls/edgtls_2otb048NBXge0qF9wkSNxvGWkA3/traffic_policy +``` diff --git a/docs/api/examples/_tls_edge_traffic_policy_module_get_response.md b/docs/api/examples/_tls_edge_traffic_policy_module_get_response.md new file mode 100644 index 000000000..6fe52e332 --- /dev/null +++ b/docs/api/examples/_tls_edge_traffic_policy_module_get_response.md @@ -0,0 +1,10 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "value": "{\n\t\"on_tcp_connect\": [\n\t\t{\n\t\t\t\"name\": \"Block requests from certain countries\",\n\t\t\t\"expressions\":[\"conn.geo.country_code in ['BR', 'CN', 'CU', 'IR', 'NG', 'RO', 'RU', 'SD', 'SY', 'UA']\"],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"log\",\n\t\t\t\t\t\"config\":{\n\t\t\t\t\t\t\"metadata\":{\n\t\t\t\t\t\t\t\"blockedCountry\":\"${conn.geo.country_code}\",\n\t\t\t\t\t\t\t\"edgeId\": \"edgtls_2otb048NBXge0qF9wkSNxvGWkA3\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"deny\"\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n}" +} +``` diff --git a/docs/api/examples/_tls_edge_traffic_policy_module_replace_request.md b/docs/api/examples/_tls_edge_traffic_policy_module_replace_request.md new file mode 100644 index 000000000..41d129977 --- /dev/null +++ b/docs/api/examples/_tls_edge_traffic_policy_module_replace_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PUT \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"enabled":true,"value":"{\n\t\"on_tcp_connect\": [\n\t\t{\n\t\t\t\"name\": \"Block requests from certain countries\",\n\t\t\t\"expressions\":[\"conn.geo.country_code in ['BR', 'CN', 'CU', 'IR', 'NG', 'RO', 'RU', 'SD', 'SY', 'UA']\"],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"log\",\n\t\t\t\t\t\"config\":{\n\t\t\t\t\t\t\"metadata\":{\n\t\t\t\t\t\t\t\"blockedCountry\":\"${conn.geo.country_code}\",\n\t\t\t\t\t\t\t\"edgeId\": \"edgtls_2otb048NBXge0qF9wkSNxvGWkA3\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"deny\"\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n}"}' \ +https://api.ngrok.com/edges/tls/edgtls_2otb048NBXge0qF9wkSNxvGWkA3/traffic_policy +``` diff --git a/docs/api/examples/_tls_edge_traffic_policy_module_replace_response.md b/docs/api/examples/_tls_edge_traffic_policy_module_replace_response.md new file mode 100644 index 000000000..6fe52e332 --- /dev/null +++ b/docs/api/examples/_tls_edge_traffic_policy_module_replace_response.md @@ -0,0 +1,10 @@ + + +#### Example Response + +```json +{ + "enabled": true, + "value": "{\n\t\"on_tcp_connect\": [\n\t\t{\n\t\t\t\"name\": \"Block requests from certain countries\",\n\t\t\t\"expressions\":[\"conn.geo.country_code in ['BR', 'CN', 'CU', 'IR', 'NG', 'RO', 'RU', 'SD', 'SY', 'UA']\"],\n\t\t\t\"actions\":[\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"log\",\n\t\t\t\t\t\"config\":{\n\t\t\t\t\t\t\"metadata\":{\n\t\t\t\t\t\t\t\"blockedCountry\":\"${conn.geo.country_code}\",\n\t\t\t\t\t\t\t\"edgeId\": \"edgtls_2otb048NBXge0qF9wkSNxvGWkA3\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\":\"deny\"\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n}" +} +``` diff --git a/docs/api/examples/_tunnel_group_backends_create_request.md b/docs/api/examples/_tunnel_group_backends_create_request.md new file mode 100644 index 000000000..97a937ee5 --- /dev/null +++ b/docs/api/examples/_tunnel_group_backends_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"description":"acme tunnel group","labels":{"baz":"qux","foo":"bar"},"metadata":"{\"environment\": \"staging\"}"}' \ +https://api.ngrok.com/backends/tunnel_group +``` diff --git a/docs/api/examples/_tunnel_group_backends_create_response.md b/docs/api/examples/_tunnel_group_backends_create_response.md new file mode 100644 index 000000000..f1c15725d --- /dev/null +++ b/docs/api/examples/_tunnel_group_backends_create_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:27Z", + "description": "acme tunnel group", + "id": "bkdtg_2otazQwDznmooGz87G9aKW81R8l", + "labels": { + "baz": "qux", + "foo": "bar" + }, + "metadata": "{\"environment\": \"staging\"}", + "tunnels": [], + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazQwDznmooGz87G9aKW81R8l" +} +``` diff --git a/docs/api/examples/_tunnel_group_backends_delete_request.md b/docs/api/examples/_tunnel_group_backends_delete_request.md new file mode 100644 index 000000000..1d13736b5 --- /dev/null +++ b/docs/api/examples/_tunnel_group_backends_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazQwDznmooGz87G9aKW81R8l +``` diff --git a/docs/api/examples/_tunnel_group_backends_delete_response.md b/docs/api/examples/_tunnel_group_backends_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_tunnel_group_backends_get_request.md b/docs/api/examples/_tunnel_group_backends_get_request.md new file mode 100644 index 000000000..977eb2d67 --- /dev/null +++ b/docs/api/examples/_tunnel_group_backends_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazQwDznmooGz87G9aKW81R8l +``` diff --git a/docs/api/examples/_tunnel_group_backends_get_response.md b/docs/api/examples/_tunnel_group_backends_get_response.md new file mode 100644 index 000000000..f1c15725d --- /dev/null +++ b/docs/api/examples/_tunnel_group_backends_get_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:27Z", + "description": "acme tunnel group", + "id": "bkdtg_2otazQwDznmooGz87G9aKW81R8l", + "labels": { + "baz": "qux", + "foo": "bar" + }, + "metadata": "{\"environment\": \"staging\"}", + "tunnels": [], + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazQwDznmooGz87G9aKW81R8l" +} +``` diff --git a/docs/api/examples/_tunnel_group_backends_list_request.md b/docs/api/examples/_tunnel_group_backends_list_request.md new file mode 100644 index 000000000..cd8f2bff3 --- /dev/null +++ b/docs/api/examples/_tunnel_group_backends_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/tunnel_group +``` diff --git a/docs/api/examples/_tunnel_group_backends_list_response.md b/docs/api/examples/_tunnel_group_backends_list_response.md new file mode 100644 index 000000000..d2b8e8d8e --- /dev/null +++ b/docs/api/examples/_tunnel_group_backends_list_response.md @@ -0,0 +1,24 @@ + + +#### Example Response + +```json +{ + "backends": [ + { + "created_at": "2024-11-15T17:26:27Z", + "description": "acme tunnel group", + "id": "bkdtg_2otazQwDznmooGz87G9aKW81R8l", + "labels": { + "baz": "qux", + "foo": "bar" + }, + "metadata": "{\"environment\": \"staging\"}", + "tunnels": [], + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazQwDznmooGz87G9aKW81R8l" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/backends/tunnel_group" +} +``` diff --git a/docs/api/examples/_tunnel_group_backends_update_request.md b/docs/api/examples/_tunnel_group_backends_update_request.md new file mode 100644 index 000000000..00a19aedf --- /dev/null +++ b/docs/api/examples/_tunnel_group_backends_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"environment\": \"production\"}"}' \ +https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazQwDznmooGz87G9aKW81R8l +``` diff --git a/docs/api/examples/_tunnel_group_backends_update_response.md b/docs/api/examples/_tunnel_group_backends_update_response.md new file mode 100644 index 000000000..44530242e --- /dev/null +++ b/docs/api/examples/_tunnel_group_backends_update_response.md @@ -0,0 +1,18 @@ + + +#### Example Response + +```json +{ + "created_at": "2024-11-15T17:26:27Z", + "description": "acme tunnel group", + "id": "bkdtg_2otazQwDznmooGz87G9aKW81R8l", + "labels": { + "baz": "qux", + "foo": "bar" + }, + "metadata": "{\"environment\": \"production\"}", + "tunnels": [], + "uri": "https://api.ngrok.com/backends/tunnel_group/bkdtg_2otazQwDznmooGz87G9aKW81R8l" +} +``` diff --git a/docs/api/examples/_tunnel_sessions_get_request.md b/docs/api/examples/_tunnel_sessions_get_request.md new file mode 100644 index 000000000..8368a5924 --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/tunnel_sessions/ts_2otayD2d0icMIbwLqUsRJxjKHTk +``` diff --git a/docs/api/examples/_tunnel_sessions_get_response.md b/docs/api/examples/_tunnel_sessions_get_response.md new file mode 100644 index 000000000..e20b3852c --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_get_response.md @@ -0,0 +1,20 @@ + + +#### Example Response + +```json +{ + "agent_version": "3.1000.0-development", + "credential": { + "id": "cr_2otaxivsVUUGD9YjgjJNpBPBdMQ", + "uri": "https://api.ngrok.com/credentials/cr_2otaxivsVUUGD9YjgjJNpBPBdMQ" + }, + "id": "ts_2otayD2d0icMIbwLqUsRJxjKHTk", + "ip": "10.110.2.2", + "os": "linux", + "region": "us", + "started_at": "2024-11-15T17:26:17Z", + "transport": "ngrok/2", + "uri": "https://api.ngrok.com/tunnel_sessions/ts_2otayD2d0icMIbwLqUsRJxjKHTk" +} +``` diff --git a/docs/api/examples/_tunnel_sessions_list_request.md b/docs/api/examples/_tunnel_sessions_list_request.md new file mode 100644 index 000000000..49eb12dc8 --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/tunnel_sessions +``` diff --git a/docs/api/examples/_tunnel_sessions_list_response.md b/docs/api/examples/_tunnel_sessions_list_response.md new file mode 100644 index 000000000..95b1fa9c2 --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_list_response.md @@ -0,0 +1,26 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "tunnel_sessions": [ + { + "agent_version": "3.1000.0-development", + "credential": { + "id": "cr_2otaxivsVUUGD9YjgjJNpBPBdMQ", + "uri": "https://api.ngrok.com/credentials/cr_2otaxivsVUUGD9YjgjJNpBPBdMQ" + }, + "id": "ts_2otayD2d0icMIbwLqUsRJxjKHTk", + "ip": "10.110.2.2", + "os": "linux", + "region": "us", + "started_at": "2024-11-15T17:26:17Z", + "transport": "ngrok/2", + "uri": "https://api.ngrok.com/tunnel_sessions/ts_2otayD2d0icMIbwLqUsRJxjKHTk" + } + ], + "uri": "https://api.ngrok.com/tunnel_sessions" +} +``` diff --git a/docs/api/examples/_tunnel_sessions_restart_request.md b/docs/api/examples/_tunnel_sessions_restart_request.md new file mode 100644 index 000000000..01612a7c9 --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_restart_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{}' \ +https://api.ngrok.com/tunnel_sessions/ts_1vcl4fYZxXY0zNFbpCloylDCG0S/restart +``` diff --git a/docs/api/examples/_tunnel_sessions_restart_response.md b/docs/api/examples/_tunnel_sessions_restart_response.md new file mode 100644 index 000000000..d26f94e2f --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_restart_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "details": { + "operation_id": "op_2otayJrAK6543GchqhYAgZ4H0bx" + }, + "msg": "Resource not found", + "status_code": 404 +} +``` diff --git a/docs/api/examples/_tunnel_sessions_stop_request.md b/docs/api/examples/_tunnel_sessions_stop_request.md new file mode 100644 index 000000000..9974d54b1 --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_stop_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{}' \ +https://api.ngrok.com/tunnel_sessions/ts_1vcl4fYZxXY0zNFbpCloylDCG0S/stop +``` diff --git a/docs/api/examples/_tunnel_sessions_stop_response.md b/docs/api/examples/_tunnel_sessions_stop_response.md new file mode 100644 index 000000000..015832216 --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_stop_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "details": { + "operation_id": "op_2otayIHEoldIiBx7Ojit9lKWa1c" + }, + "msg": "Resource not found", + "status_code": 404 +} +``` diff --git a/docs/api/examples/_tunnel_sessions_update_request.md b/docs/api/examples/_tunnel_sessions_update_request.md new file mode 100644 index 000000000..1a3c45163 --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{}' \ +https://api.ngrok.com/tunnel_sessions/ts_1vcl4fYZxXY0zNFbpCloylDCG0S/update +``` diff --git a/docs/api/examples/_tunnel_sessions_update_response.md b/docs/api/examples/_tunnel_sessions_update_response.md new file mode 100644 index 000000000..225195880 --- /dev/null +++ b/docs/api/examples/_tunnel_sessions_update_response.md @@ -0,0 +1,13 @@ + + +#### Example Response + +```json +{ + "details": { + "operation_id": "op_2otayHH0ZQIRvt4and1TBnOMk1H" + }, + "msg": "Resource not found", + "status_code": 404 +} +``` diff --git a/docs/api/examples/_tunnels_get_request.md b/docs/api/examples/_tunnels_get_request.md new file mode 100644 index 000000000..0d381610d --- /dev/null +++ b/docs/api/examples/_tunnels_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/tunnels/tn_2otaxYv7ZKxJHgpwFTjOdbqRk5l +``` diff --git a/docs/api/examples/_tunnels_get_response.md b/docs/api/examples/_tunnels_get_response.md new file mode 100644 index 000000000..f46df8c59 --- /dev/null +++ b/docs/api/examples/_tunnels_get_response.md @@ -0,0 +1,22 @@ + + +#### Example Response + +```json +{ + "endpoint": { + "id": "ep_2otaxYv7ZKxJHgpwFTjOdbqRk5l", + "uri": "https://api.ngrok.com/endpoints/ep_2otaxYv7ZKxJHgpwFTjOdbqRk5l" + }, + "forwards_to": "http://localhost:80", + "id": "tn_2otaxYv7ZKxJHgpwFTjOdbqRk5l", + "proto": "https", + "public_url": "https://9ab93dff63f4.ngrok.paid", + "region": "us", + "started_at": "2024-11-15T17:26:12Z", + "tunnel_session": { + "id": "ts_2otaxZkUJUbJ7CdUYTYx6rGw8vf", + "uri": "https://api.ngrok.com/tunnel_sessions/ts_2otaxZkUJUbJ7CdUYTYx6rGw8vf" + } +} +``` diff --git a/docs/api/examples/_tunnels_list_request.md b/docs/api/examples/_tunnels_list_request.md new file mode 100644 index 000000000..a1b2cf4af --- /dev/null +++ b/docs/api/examples/_tunnels_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/tunnels +``` diff --git a/docs/api/examples/_tunnels_list_response.md b/docs/api/examples/_tunnels_list_response.md new file mode 100644 index 000000000..22a1a6a1b --- /dev/null +++ b/docs/api/examples/_tunnels_list_response.md @@ -0,0 +1,42 @@ + + +#### Example Response + +```json +{ + "next_page_uri": null, + "tunnels": [ + { + "endpoint": { + "id": "ep_2otaxYv7ZKxJHgpwFTjOdbqRk5l", + "uri": "https://api.ngrok.com/endpoints/ep_2otaxYv7ZKxJHgpwFTjOdbqRk5l" + }, + "forwards_to": "http://localhost:80", + "id": "tn_2otaxYv7ZKxJHgpwFTjOdbqRk5l", + "proto": "https", + "public_url": "https://9ab93dff63f4.ngrok.paid", + "region": "us", + "started_at": "2024-11-15T17:26:12Z", + "tunnel_session": { + "id": "ts_2otaxZkUJUbJ7CdUYTYx6rGw8vf", + "uri": "https://api.ngrok.com/tunnel_sessions/ts_2otaxZkUJUbJ7CdUYTYx6rGw8vf" + } + }, + { + "forwards_to": "http://localhost:80", + "id": "tn_2otawwH5pTOb2iwRHCTr8lNKhTY", + "labels": { + "baz": "qux", + "foo": "bar" + }, + "region": "us", + "started_at": "2024-11-15T17:26:07Z", + "tunnel_session": { + "id": "ts_2otawwAqDO4mJYhlQRV0F1bVWMQ", + "uri": "https://api.ngrok.com/tunnel_sessions/ts_2otawwAqDO4mJYhlQRV0F1bVWMQ" + } + } + ], + "uri": "https://api.ngrok.com/tunnels" +} +``` diff --git a/docs/api/examples/_weighted_backends_create_request.md b/docs/api/examples/_weighted_backends_create_request.md new file mode 100644 index 000000000..5c7347dad --- /dev/null +++ b/docs/api/examples/_weighted_backends_create_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X POST \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"backends":{"bkdhr_2otazRtJeo4b2Y6bbVzRwhvWg9c":0,"bkdhr_2otazS5DeSAng3UDodWMKCWeeQl":1},"description":"acme weighted","metadata":"{\"environment\": \"staging\"}"}' \ +https://api.ngrok.com/backends/weighted +``` diff --git a/docs/api/examples/_weighted_backends_create_response.md b/docs/api/examples/_weighted_backends_create_response.md new file mode 100644 index 000000000..cda206146 --- /dev/null +++ b/docs/api/examples/_weighted_backends_create_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "backends": { + "bkdhr_2otazRtJeo4b2Y6bbVzRwhvWg9c": 0, + "bkdhr_2otazS5DeSAng3UDodWMKCWeeQl": 1 + }, + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa", + "metadata": "{\"environment\": \"staging\"}", + "uri": "https://api.ngrok.com/backends/weighted/bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa" +} +``` diff --git a/docs/api/examples/_weighted_backends_delete_request.md b/docs/api/examples/_weighted_backends_delete_request.md new file mode 100644 index 000000000..8a43cc6d6 --- /dev/null +++ b/docs/api/examples/_weighted_backends_delete_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X DELETE \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/weighted/bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa +``` diff --git a/docs/api/examples/_weighted_backends_delete_response.md b/docs/api/examples/_weighted_backends_delete_response.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/api/examples/_weighted_backends_get_request.md b/docs/api/examples/_weighted_backends_get_request.md new file mode 100644 index 000000000..160f90a0d --- /dev/null +++ b/docs/api/examples/_weighted_backends_get_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/weighted/bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa +``` diff --git a/docs/api/examples/_weighted_backends_get_response.md b/docs/api/examples/_weighted_backends_get_response.md new file mode 100644 index 000000000..cda206146 --- /dev/null +++ b/docs/api/examples/_weighted_backends_get_response.md @@ -0,0 +1,17 @@ + + +#### Example Response + +```json +{ + "backends": { + "bkdhr_2otazRtJeo4b2Y6bbVzRwhvWg9c": 0, + "bkdhr_2otazS5DeSAng3UDodWMKCWeeQl": 1 + }, + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa", + "metadata": "{\"environment\": \"staging\"}", + "uri": "https://api.ngrok.com/backends/weighted/bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa" +} +``` diff --git a/docs/api/examples/_weighted_backends_list_request.md b/docs/api/examples/_weighted_backends_list_request.md new file mode 100644 index 000000000..a1cca9cfe --- /dev/null +++ b/docs/api/examples/_weighted_backends_list_request.md @@ -0,0 +1,11 @@ + + +#### Example Request + +```bash +curl \ +-X GET \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Ngrok-Version: 2" \ +https://api.ngrok.com/backends/weighted +``` diff --git a/docs/api/examples/_weighted_backends_list_response.md b/docs/api/examples/_weighted_backends_list_response.md new file mode 100644 index 000000000..a6a887716 --- /dev/null +++ b/docs/api/examples/_weighted_backends_list_response.md @@ -0,0 +1,23 @@ + + +#### Example Response + +```json +{ + "backends": [ + { + "backends": { + "bkdhr_2otazRtJeo4b2Y6bbVzRwhvWg9c": 0, + "bkdhr_2otazS5DeSAng3UDodWMKCWeeQl": 1 + }, + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa", + "metadata": "{\"environment\": \"staging\"}", + "uri": "https://api.ngrok.com/backends/weighted/bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa" + } + ], + "next_page_uri": null, + "uri": "https://api.ngrok.com/backends/weighted" +} +``` diff --git a/docs/api/examples/_weighted_backends_update_request.md b/docs/api/examples/_weighted_backends_update_request.md new file mode 100644 index 000000000..96289dafd --- /dev/null +++ b/docs/api/examples/_weighted_backends_update_request.md @@ -0,0 +1,13 @@ + + +#### Example Request + +```bash +curl \ +-X PATCH \ +-H "Authorization: Bearer {API_KEY}" \ +-H "Content-Type: application/json" \ +-H "Ngrok-Version: 2" \ +-d '{"metadata":"{\"environment\": \"production\"}"}' \ +https://api.ngrok.com/backends/weighted/bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa +``` diff --git a/docs/api/examples/_weighted_backends_update_response.md b/docs/api/examples/_weighted_backends_update_response.md new file mode 100644 index 000000000..809d1c73b --- /dev/null +++ b/docs/api/examples/_weighted_backends_update_response.md @@ -0,0 +1,14 @@ + + +#### Example Response + +```json +{ + "backends": {}, + "created_at": "2024-11-15T17:26:27Z", + "description": "acme weighted", + "id": "bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa", + "metadata": "{\"environment\": \"production\"}", + "uri": "https://api.ngrok.com/backends/weighted/bkdwd_2otazT5KWn0IpBaKI6fFenWyjaa" +} +``` diff --git a/docs/api/resources/endpoints.mdx b/docs/api/resources/endpoints.mdx index 9a3561695..a5a0eea76 100644 --- a/docs/api/resources/endpoints.mdx +++ b/docs/api/resources/endpoints.mdx @@ -63,6 +63,7 @@ Returns a 201 response on success | `upstream_proto` | string | the protocol the agent uses to forward with | | `url` | string | the url of the endpoint | | `principal` | [Ref](#ref-fields) | The ID of the owner (bot or user) that owns this endpoint | +| `principal_id` | [Ref](#ref-fields) | TODO: deprecate me! | | `traffic_policy` | string | The traffic policy attached to this endpoint | | `bindings` | List<string> | the bindings associated with this endpoint | | `tunnel_session` | [Ref](#ref-fields) | The tunnel session of the agent for this endpoint | @@ -125,6 +126,7 @@ Returns a 200 response on success | `upstream_proto` | string | the protocol the agent uses to forward with | | `url` | string | the url of the endpoint | | `principal` | [Ref](#ref-fields) | The ID of the owner (bot or user) that owns this endpoint | +| `principal_id` | [Ref](#ref-fields) | TODO: deprecate me! | | `traffic_policy` | string | The traffic policy attached to this endpoint | | `bindings` | List<string> | the bindings associated with this endpoint | | `tunnel_session` | [Ref](#ref-fields) | The tunnel session of the agent for this endpoint | @@ -179,6 +181,7 @@ Returns a 200 response on success | `upstream_proto` | string | the protocol the agent uses to forward with | | `url` | string | the url of the endpoint | | `principal` | [Ref](#ref-fields) | The ID of the owner (bot or user) that owns this endpoint | +| `principal_id` | [Ref](#ref-fields) | TODO: deprecate me! | | `traffic_policy` | string | The traffic policy attached to this endpoint | | `bindings` | List<string> | the bindings associated with this endpoint | | `tunnel_session` | [Ref](#ref-fields) | The tunnel session of the agent for this endpoint | @@ -244,6 +247,7 @@ Returns a 200 response on success | `upstream_proto` | string | the protocol the agent uses to forward with | | `url` | string | the url of the endpoint | | `principal` | [Ref](#ref-fields) | The ID of the owner (bot or user) that owns this endpoint | +| `principal_id` | [Ref](#ref-fields) | TODO: deprecate me! | | `traffic_policy` | string | The traffic policy attached to this endpoint | | `bindings` | List<string> | the bindings associated with this endpoint | | `tunnel_session` | [Ref](#ref-fields) | The tunnel session of the agent for this endpoint | diff --git a/docs/errors/_err_ngrok_list.md b/docs/errors/_err_ngrok_list.md index 9673f3e5d..2c60aa5f7 100644 --- a/docs/errors/_err_ngrok_list.md +++ b/docs/errors/_err_ngrok_list.md @@ -161,7 +161,7 @@ Your <PRODUCT> version "<VERSION>" is no longer supported. Only the most recent version of the ngrok agent is supported without an account. - Update to a newer version with `ngrok update`, by downloading from https://download.ngrok.com, or by updating your SDK version. + Update to a newer version with `ngrok update`, by downloading from https://ngrok.com/download, or by updating your SDK version. Sign up for an account to avoid forced version upgrades: https://ngrok.com/signup. @@ -170,7 +170,7 @@ ERR_NGROK_121 - Your <PRODUCT> version "<VERSION>" is too old. The minimum supported agent version for your account is "<MINVERSION>". Please update to a newer version with `ngrok update`, by downloading from https://download.ngrok.com, or by updating your SDK version. Paid accounts are currently excluded from minimum agent version requirements. To begin handling traffic immediately without updating your agent, upgrade to a paid plan: https://dashboard.ngrok.com/billing/subscription. + Your <PRODUCT> version "<VERSION>" is too old. The minimum supported agent version for your account is "<MINVERSION>". Please update to a newer version with `ngrok update`, by downloading from https://ngrok.com/download, or by updating your SDK version. Paid accounts are currently excluded from minimum agent version requirements. To begin handling traffic immediately without updating your agent, upgrade to a paid plan: https://dashboard.ngrok.com/billing/subscription. @@ -406,7 +406,7 @@ ERR_NGROK_224 - The value <VAL> is not valid for the terminate_at property of the TLS Termination endpoint configuration module. Must be either 'edge' or 'upstream'. + The value <VAL> is not valid for the terminate_at property of the TLS Termination endpoint configuration module. Must be either 'edge', 'agent' or 'upstream'. @@ -1808,7 +1808,7 @@ ERR_NGROK_446 - The domain <DOMAIN> could not be deleted because it is still referenced by an edge. + The domain <DOMAIN> could not be deleted because it is still referenced by an edge or cloud endpoint. @@ -2777,6 +2777,94 @@ The billing email address <EMAIL> is already added + + + ERR_NGROK_1022 + + + Your invoice tax ID type <INPUT> is not a valid option. + + + + + ERR_NGROK_1023 + + + Your invoice tax ID country <INPUT> is not a valid option. + + + + + ERR_NGROK_1024 + + + Your invoice billing address country is too long: <VAL> bytes. Max: <MAX> + + + + + ERR_NGROK_1025 + + + Your invoice billing address state is too long: <VAL> bytes. Max: <MAX> + + + + + ERR_NGROK_1026 + + + Your invoice billing address city is too long: <VAL> bytes. Max: <MAX> + + + + + ERR_NGROK_1027 + + + Your invoice billing address line1 is too long: <VAL> bytes. Max: <MAX> + + + + + ERR_NGROK_1028 + + + Your invoice billing address line2 is too long: <VAL> bytes. Max: <MAX> + + + + + ERR_NGROK_1029 + + + Your invoice billing address postal code is too long: <VAL> bytes. Max: <MAX> + + + + + ERR_NGROK_1030 + + + Your invoice billing address name is too long: <VAL> bytes. Max: <MAX> + + + + + ERR_NGROK_1031 + + + Missing Type for Tax ID. You must supply both the Tax ID and its Type or remove both + + + + + ERR_NGROK_1032 + + + Missing Tax ID for Type. You must supply both the Tax ID and its Type or remove both + + ERR_NGROK_1100 @@ -4742,6 +4830,14 @@ The path specified in an HTTPMux rule is unsupported or otherwise invalid. + + + ERR_NGROK_2087 + + + The sendgrid verification key is not a base64 encoded ecdsa public key. The following error was encountered while trying to parse it: "<ERROR>" + + ERR_NGROK_2089 @@ -4797,7 +4893,7 @@ ERR_NGROK_2204 - Configuration for policy action type <TYP> has invalid <FIELD> value. + Configuration for policy action type <TYP> has invalid value: <FIELD>. @@ -5043,6 +5139,22 @@ The traffic policy provided is not guaranteed to handle traffic. Ensure traffic always results in an action, e.g. custom response or forward action. + + + ERR_NGROK_2236 + + + Failed to parse the supplied traffic policy; please verify it is not malformed. + + + + + ERR_NGROK_2237 + + + Invalid configuration for <ACTION>: <CONFIG> length of <ACTUAL> does not satisfy minimum length of <MIN>. + + ERR_NGROK_3002 @@ -5750,7 +5862,7 @@ ERR_NGROK_3501 - Traffic can only be forwarded through one Forward Internal action, disallowing further forwarding. + ForwardInternal may only forward through <MAX> endpoints. @@ -10487,6 +10599,22 @@ The Webhook Verification secret was not specified. + + + ERR_NGROK_15008 + + + Invalid basic auth credential. Username must be at most <MAXLENGTH> characters, got <GOTLENGTH>. + + + + + ERR_NGROK_15009 + + + Invalid basic auth credentials list. Your plan is limited to <MAXLENGTH> sets of credentials, got <GOTLENGTH>. + + ERR_NGROK_16000 @@ -10556,7 +10684,7 @@ ERR_NGROK_18002 - The provided cloud endpoint configuration is invalid: <MESSAGE> + The provided cloud endpoint traffic policy configuration is invalid: <MESSAGE> @@ -10615,5 +10743,37 @@ This account already has a cloud endpoint on this URL. + + + ERR_NGROK_18010 + + + You have exceeded the maximum number of cloud endpoints allowed for this account. Please log into https://dashboard.ngrok.com/usage to review your historic usage and https://dashboard.ngrok.com/billing/subscription/select to view your subscription options. + + + + + ERR_NGROK_18011 + + + Traffic policy configuration is required: <MESSAGE> + + + + + ERR_NGROK_18012 + + + The description field cannot be longer than 255 characters. + + + + + ERR_NGROK_18013 + + + The metadata field cannot be longer than 4096 characters. + + diff --git a/docs/errors/err_ngrok_1022.mdx b/docs/errors/err_ngrok_1022.mdx new file mode 100644 index 000000000..787b30f2d --- /dev/null +++ b/docs/errors/err_ngrok_1022.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1022 + +### Message + +Your invoice tax ID type `INPUT` is not a valid option. + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1022) diff --git a/docs/errors/err_ngrok_1023.mdx b/docs/errors/err_ngrok_1023.mdx new file mode 100644 index 000000000..341a17d22 --- /dev/null +++ b/docs/errors/err_ngrok_1023.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1023 + +### Message + +Your invoice tax ID country `INPUT` is not a valid option. + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1023) diff --git a/docs/errors/err_ngrok_1024.mdx b/docs/errors/err_ngrok_1024.mdx new file mode 100644 index 000000000..7e1b38a41 --- /dev/null +++ b/docs/errors/err_ngrok_1024.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1024 + +### Message + +Your invoice billing address country is too long: `VAL` bytes. Max: `MAX` + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1024) diff --git a/docs/errors/err_ngrok_1025.mdx b/docs/errors/err_ngrok_1025.mdx new file mode 100644 index 000000000..9c44f5e87 --- /dev/null +++ b/docs/errors/err_ngrok_1025.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1025 + +### Message + +Your invoice billing address state is too long: `VAL` bytes. Max: `MAX` + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1025) diff --git a/docs/errors/err_ngrok_1026.mdx b/docs/errors/err_ngrok_1026.mdx new file mode 100644 index 000000000..1c5d05a81 --- /dev/null +++ b/docs/errors/err_ngrok_1026.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1026 + +### Message + +Your invoice billing address city is too long: `VAL` bytes. Max: `MAX` + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1026) diff --git a/docs/errors/err_ngrok_1027.mdx b/docs/errors/err_ngrok_1027.mdx new file mode 100644 index 000000000..be9bb803c --- /dev/null +++ b/docs/errors/err_ngrok_1027.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1027 + +### Message + +Your invoice billing address line1 is too long: `VAL` bytes. Max: `MAX` + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1027) diff --git a/docs/errors/err_ngrok_1028.mdx b/docs/errors/err_ngrok_1028.mdx new file mode 100644 index 000000000..70193287f --- /dev/null +++ b/docs/errors/err_ngrok_1028.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1028 + +### Message + +Your invoice billing address line2 is too long: `VAL` bytes. Max: `MAX` + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1028) diff --git a/docs/errors/err_ngrok_1029.mdx b/docs/errors/err_ngrok_1029.mdx new file mode 100644 index 000000000..ac3145f17 --- /dev/null +++ b/docs/errors/err_ngrok_1029.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1029 + +### Message + +Your invoice billing address postal code is too long: `VAL` bytes. Max: `MAX` + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1029) diff --git a/docs/errors/err_ngrok_1030.mdx b/docs/errors/err_ngrok_1030.mdx new file mode 100644 index 000000000..dcd89e3bf --- /dev/null +++ b/docs/errors/err_ngrok_1030.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1030 + +### Message + +Your invoice billing address name is too long: `VAL` bytes. Max: `MAX` + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1030) diff --git a/docs/errors/err_ngrok_1031.mdx b/docs/errors/err_ngrok_1031.mdx new file mode 100644 index 000000000..35c3d8e24 --- /dev/null +++ b/docs/errors/err_ngrok_1031.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1031 + +### Message + +Missing Type for Tax ID. You must supply both the Tax ID and its Type or remove both + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1031) diff --git a/docs/errors/err_ngrok_1032.mdx b/docs/errors/err_ngrok_1032.mdx new file mode 100644 index 000000000..6a13c781a --- /dev/null +++ b/docs/errors/err_ngrok_1032.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_1032 + +### Message + +Missing Tax ID for Type. You must supply both the Tax ID and its Type or remove both + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_1032) diff --git a/docs/errors/err_ngrok_120.mdx b/docs/errors/err_ngrok_120.mdx index d01b78a02..576321c9d 100644 --- a/docs/errors/err_ngrok_120.mdx +++ b/docs/errors/err_ngrok_120.mdx @@ -10,7 +10,7 @@ import ErrorDetails from "/src/components/ErrorDetails"; ### Message Your `PRODUCT` version "`VERSION`" is no longer supported. Only the most recent version of the ngrok agent is supported without an account. -Update to a newer version with `ngrok update`, by downloading from https://download.ngrok.com, or by updating your SDK version. +Update to a newer version with `ngrok update`, by downloading from https://ngrok.com/download, or by updating your SDK version. Sign up for an account to avoid forced version upgrades: https://ngrok.com/signup. diff --git a/docs/errors/err_ngrok_121.mdx b/docs/errors/err_ngrok_121.mdx index a2dedb8e4..9138c8d78 100644 --- a/docs/errors/err_ngrok_121.mdx +++ b/docs/errors/err_ngrok_121.mdx @@ -9,7 +9,7 @@ import ErrorDetails from "/src/components/ErrorDetails"; ### Message -Your `PRODUCT` version "`VERSION`" is too old. The minimum supported agent version for your account is "`MINVERSION`". Please update to a newer version with `ngrok update`, by downloading from https://download.ngrok.com, or by updating your SDK version. Paid accounts are currently excluded from minimum agent version requirements. To begin handling traffic immediately without updating your agent, upgrade to a paid plan: https://dashboard.ngrok.com/billing/subscription. +Your `PRODUCT` version "`VERSION`" is too old. The minimum supported agent version for your account is "`MINVERSION`". Please update to a newer version with `ngrok update`, by downloading from https://ngrok.com/download, or by updating your SDK version. Paid accounts are currently excluded from minimum agent version requirements. To begin handling traffic immediately without updating your agent, upgrade to a paid plan: https://dashboard.ngrok.com/billing/subscription. diff --git a/docs/errors/err_ngrok_15008.mdx b/docs/errors/err_ngrok_15008.mdx new file mode 100644 index 000000000..1b0576a54 --- /dev/null +++ b/docs/errors/err_ngrok_15008.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_15008 + +### Message + +Invalid basic auth credential. Username must be at most `MAXLENGTH` characters, got `GOTLENGTH`. + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_15008) diff --git a/docs/errors/err_ngrok_15009.mdx b/docs/errors/err_ngrok_15009.mdx new file mode 100644 index 000000000..5c3628e44 --- /dev/null +++ b/docs/errors/err_ngrok_15009.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_15009 + +### Message + +Invalid basic auth credentials list. Your plan is limited to `MAXLENGTH` sets of credentials, got `GOTLENGTH`. + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_15009) diff --git a/docs/errors/err_ngrok_18002.mdx b/docs/errors/err_ngrok_18002.mdx index cf3895456..4b1d9d049 100644 --- a/docs/errors/err_ngrok_18002.mdx +++ b/docs/errors/err_ngrok_18002.mdx @@ -9,7 +9,7 @@ import ErrorDetails from "/src/components/ErrorDetails"; ### Message -The provided cloud endpoint configuration is invalid: `MESSAGE` +The provided cloud endpoint traffic policy configuration is invalid: `MESSAGE` diff --git a/docs/errors/err_ngrok_18010.mdx b/docs/errors/err_ngrok_18010.mdx new file mode 100644 index 000000000..736458b1b --- /dev/null +++ b/docs/errors/err_ngrok_18010.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_18010 + +### Message + +You have exceeded the maximum number of cloud endpoints allowed for this account. Please log into https://dashboard.ngrok.com/usage to review your historic usage and https://dashboard.ngrok.com/billing/subscription/select to view your subscription options. + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_18010) diff --git a/docs/errors/err_ngrok_18011.mdx b/docs/errors/err_ngrok_18011.mdx new file mode 100644 index 000000000..59dad17af --- /dev/null +++ b/docs/errors/err_ngrok_18011.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_18011 + +### Message + +Traffic policy configuration is required: `MESSAGE` + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_18011) diff --git a/docs/errors/err_ngrok_18012.mdx b/docs/errors/err_ngrok_18012.mdx new file mode 100644 index 000000000..7248b3246 --- /dev/null +++ b/docs/errors/err_ngrok_18012.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_18012 + +### Message + +The description field cannot be longer than 255 characters. + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_18012) diff --git a/docs/errors/err_ngrok_18013.mdx b/docs/errors/err_ngrok_18013.mdx new file mode 100644 index 000000000..14c61d49c --- /dev/null +++ b/docs/errors/err_ngrok_18013.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_18013 + +### Message + +The metadata field cannot be longer than 4096 characters. + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_18013) diff --git a/docs/errors/err_ngrok_2087.mdx b/docs/errors/err_ngrok_2087.mdx new file mode 100644 index 000000000..7451083e7 --- /dev/null +++ b/docs/errors/err_ngrok_2087.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_2087 + +### Message + +The sendgrid verification key is not a base64 encoded ecdsa public key. The following error was encountered while trying to parse it: "`ERROR`" + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_2087) diff --git a/docs/errors/err_ngrok_2204.mdx b/docs/errors/err_ngrok_2204.mdx index 740a8bb9a..d851b9e35 100644 --- a/docs/errors/err_ngrok_2204.mdx +++ b/docs/errors/err_ngrok_2204.mdx @@ -9,7 +9,7 @@ import ErrorDetails from "/src/components/ErrorDetails"; ### Message -Configuration for policy action type `TYP` has invalid `FIELD` value. +Configuration for policy action type `TYP` has invalid value: `FIELD`. diff --git a/docs/errors/err_ngrok_2236.mdx b/docs/errors/err_ngrok_2236.mdx new file mode 100644 index 000000000..c5733e4e0 --- /dev/null +++ b/docs/errors/err_ngrok_2236.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_2236 + +### Message + +Failed to parse the supplied traffic policy; please verify it is not malformed. + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_2236) diff --git a/docs/errors/err_ngrok_2237.mdx b/docs/errors/err_ngrok_2237.mdx new file mode 100644 index 000000000..0370b5fbd --- /dev/null +++ b/docs/errors/err_ngrok_2237.mdx @@ -0,0 +1,18 @@ +--- +hide_table_of_contents: true +displayed_sidebar: docs +--- + +import ErrorDetails from "/src/components/ErrorDetails"; + +# ERR_NGROK_2237 + +### Message + +Invalid configuration for `ACTION`: `CONFIG` length of `ACTUAL` does not satisfy minimum length of `MIN`. + + + +### Further help + +If you're having trouble resolving this error, please reach out to [support@ngrok.com](mailto:support@ngrok.com?subject=Help%20with%20ERR_NGROK_2237) diff --git a/docs/errors/err_ngrok_224.mdx b/docs/errors/err_ngrok_224.mdx index 1571d6f86..174eaa88e 100644 --- a/docs/errors/err_ngrok_224.mdx +++ b/docs/errors/err_ngrok_224.mdx @@ -9,7 +9,7 @@ import ErrorDetails from "/src/components/ErrorDetails"; ### Message -The value `VAL` is not valid for the terminate_at property of the TLS Termination endpoint configuration module. Must be either 'edge' or 'upstream'. +The value `VAL` is not valid for the terminate_at property of the TLS Termination endpoint configuration module. Must be either 'edge', 'agent' or 'upstream'. diff --git a/docs/errors/err_ngrok_3501.mdx b/docs/errors/err_ngrok_3501.mdx index 4a462ccba..d0d7c1f95 100644 --- a/docs/errors/err_ngrok_3501.mdx +++ b/docs/errors/err_ngrok_3501.mdx @@ -9,7 +9,7 @@ import ErrorDetails from "/src/components/ErrorDetails"; ### Message -Traffic can only be forwarded through one Forward Internal action, disallowing further forwarding. +ForwardInternal may only forward through `MAX` endpoints. diff --git a/docs/errors/err_ngrok_446.mdx b/docs/errors/err_ngrok_446.mdx index c190a8bf5..7e5d72db3 100644 --- a/docs/errors/err_ngrok_446.mdx +++ b/docs/errors/err_ngrok_446.mdx @@ -9,7 +9,7 @@ import ErrorDetails from "/src/components/ErrorDetails"; ### Message -The domain `DOMAIN` could not be deleted because it is still referenced by an edge. +The domain `DOMAIN` could not be deleted because it is still referenced by an edge or cloud endpoint. diff --git a/docs/obs/_endpoint-list.md b/docs/obs/_endpoint-list.md index e364673b3..5073dc12d 100644 --- a/docs/obs/_endpoint-list.md +++ b/docs/obs/_endpoint-list.md @@ -28,6 +28,8 @@ | url | string | the url of the endpoint | | id | string | a resource identifier | | uri | string | a uri for locating a resource | +| id | string | a resource identifier | +| uri | string | a uri for locating a resource | | traffic_policy | string | The traffic policy attached to this endpoint | | bindings | List<string> | the bindings associated with this endpoint | | id | string | a resource identifier | diff --git a/docs/obs/_endpoint.md b/docs/obs/_endpoint.md index 692575be9..4871af8a4 100644 --- a/docs/obs/_endpoint.md +++ b/docs/obs/_endpoint.md @@ -28,6 +28,8 @@ | url | string | the url of the endpoint | | id | string | a resource identifier | | uri | string | a uri for locating a resource | +| id | string | a resource identifier | +| uri | string | a uri for locating a resource | | traffic_policy | string | The traffic policy attached to this endpoint | | bindings | List<string> | the bindings associated with this endpoint | | id | string | a resource identifier | diff --git a/docs/obs/_event-imports.mdx b/docs/obs/_event-imports.mdx index aede81ddb..7e92dc0b4 100644 --- a/docs/obs/_event-imports.mdx +++ b/docs/obs/_event-imports.mdx @@ -678,6 +678,10 @@ import Item from "./_item.md"; +import ItemPaging from "./_item-paging.md"; + + + import KubernetesOperator from "./_kubernetes-operator.md"; diff --git a/docs/obs/_event-table.mdx b/docs/obs/_event-table.mdx index d71114af2..a3e12ef4c 100644 --- a/docs/obs/_event-table.mdx +++ b/docs/obs/_event-table.mdx @@ -172,6 +172,7 @@ | [`ip_restriction_update.v0`](#ip_restriction_updatev0) | description | | [`identity_provider.v0`](#identity_providerv0) | description | | [`item.v0`](#itemv0) | description | +| [`item_paging.v0`](#item_pagingv0) | description | | [`kubernetes_operator.v0`](#kubernetes_operatorv0) | description | | [`kubernetes_operator_binding.v0`](#kubernetes_operator_bindingv0) | description | | [`kubernetes_operator_binding_create.v0`](#kubernetes_operator_binding_createv0) | description | diff --git a/docs/obs/_item-paging.md b/docs/obs/_item-paging.md new file mode 100644 index 000000000..6f5046405 --- /dev/null +++ b/docs/obs/_item-paging.md @@ -0,0 +1,7 @@ + + +|   |   |   | +| --------- | ------ | --------------------- | +| id | string | a resource identifier | +| before_id | string | | +| limit | string | | From 645d3db733e69dc3b4525a2a7637edc6e37f9730 Mon Sep 17 00:00:00 2001 From: Alice Wasko Date: Fri, 15 Nov 2024 10:27:05 -0800 Subject: [PATCH 2/2] add cli-api to sidebar Signed-off-by: Alice-Lilith --- sidebars.js | 1 + 1 file changed, 1 insertion(+) diff --git a/sidebars.js b/sidebars.js index c4da5fd96..9166e1a67 100644 --- a/sidebars.js +++ b/sidebars.js @@ -186,6 +186,7 @@ const sidebars = { "agent/index", "agent/web-inspection-interface", "agent/cli", + "agent/cli-api", { label: "Configuration file", type: "category",