Files
2026-01-23 21:38:30 +00:00

446 lines
35 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html class="no-js" lang="en">
<head><meta charset="utf-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1"/>
<meta name="color-scheme" content="light dark"><meta name="generator" content="Docutils 0.19: https://docutils.sourceforge.io/" />
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="SSH Host Certificates" href="ssh_host_certificates.html" /><link rel="prev" title="SSH Certificate Authorities" href="ssh_certificate_authorities.html" />
<!-- Generated with Sphinx 6.2.0 and Furo 2022.12.07 -->
<title>SSH Credentials - ngrok-api documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=91d0f0d1c444bdcb17a68e833c7a53903343c195" />
<link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?digest=30d1aed668e5c3a91c3e3bf6a60b675221979f0e" />
<style>
body {
--color-code-background: #f8f8f8;
--color-code-foreground: black;
}
@media not print {
body[data-theme="dark"] {
--color-code-background: #202020;
--color-code-foreground: #d0d0d0;
}
@media (prefers-color-scheme: dark) {
body:not([data-theme="light"]) {
--color-code-background: #202020;
--color-code-foreground: #d0d0d0;
}
}
}
</style></head>
<body>
<script>
document.body.dataset.theme = localStorage.getItem("theme") || "auto";
</script>
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
<symbol id="svg-toc" viewBox="0 0 24 24">
<title>Contents</title>
<svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 1024 1024">
<path d="M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM115.4 518.9L271.7 642c5.8 4.6 14.4.5 14.4-6.9V388.9c0-7.4-8.5-11.5-14.4-6.9L115.4 505.1a8.74 8.74 0 0 0 0 13.8z"/>
</svg>
</symbol>
<symbol id="svg-menu" viewBox="0 0 24 24">
<title>Menu</title>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor"
stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather-menu">
<line x1="3" y1="12" x2="21" y2="12"></line>
<line x1="3" y1="6" x2="21" y2="6"></line>
<line x1="3" y1="18" x2="21" y2="18"></line>
</svg>
</symbol>
<symbol id="svg-arrow-right" viewBox="0 0 24 24">
<title>Expand</title>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor"
stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather-chevron-right">
<polyline points="9 18 15 12 9 6"></polyline>
</svg>
</symbol>
<symbol id="svg-sun" viewBox="0 0 24 24">
<title>Light mode</title>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor"
stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="feather-sun">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</symbol>
<symbol id="svg-moon" viewBox="0 0 24 24">
<title>Dark mode</title>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor"
stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="icon-tabler-moon">
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
<path d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" />
</svg>
</symbol>
<symbol id="svg-sun-half" viewBox="0 0 24 24">
<title>Auto light/dark mode</title>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor"
stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="icon-tabler-shadow">
<path stroke="none" d="M0 0h24v24H0z" fill="none"/>
<circle cx="12" cy="12" r="9" />
<path d="M13 12h5" />
<path d="M13 15h4" />
<path d="M13 18h1" />
<path d="M13 9h4" />
<path d="M13 6h1" />
</svg>
</symbol>
</svg>
<input type="checkbox" class="sidebar-toggle" name="__navigation" id="__navigation">
<input type="checkbox" class="sidebar-toggle" name="__toc" id="__toc">
<label class="overlay sidebar-overlay" for="__navigation">
<div class="visually-hidden">Hide navigation sidebar</div>
</label>
<label class="overlay toc-overlay" for="__toc">
<div class="visually-hidden">Hide table of contents sidebar</div>
</label>
<div class="page">
<header class="mobile-header">
<div class="header-left">
<label class="nav-overlay-icon" for="__navigation">
<div class="visually-hidden">Toggle site navigation sidebar</div>
<i class="icon"><svg><use href="#svg-menu"></use></svg></i>
</label>
</div>
<div class="header-center">
<a href="index.html"><div class="brand">ngrok-api documentation</div></a>
</div>
<div class="header-right">
<div class="theme-toggle-container theme-toggle-header">
<button class="theme-toggle">
<div class="visually-hidden">Toggle Light / Dark / Auto color theme</div>
<svg class="theme-icon-when-auto"><use href="#svg-sun-half"></use></svg>
<svg class="theme-icon-when-dark"><use href="#svg-moon"></use></svg>
<svg class="theme-icon-when-light"><use href="#svg-sun"></use></svg>
</button>
</div>
<label class="toc-overlay-icon toc-header-icon" for="__toc">
<div class="visually-hidden">Toggle table of contents sidebar</div>
<i class="icon"><svg><use href="#svg-toc"></use></svg></i>
</label>
</div>
</header>
<aside class="sidebar-drawer">
<div class="sidebar-container">
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
<span class="sidebar-brand-text">ngrok-api documentation</span>
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
<input class="sidebar-search" placeholder="Search" name="q" aria-label="Search">
<input type="hidden" name="check_keywords" value="yes">
<input type="hidden" name="area" value="default">
</form>
<div id="searchbox"></div><div class="sidebar-scroll"><div class="sidebar-tree">
<p class="caption" role="heading"><span class="caption-text">API</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="client.html">Client</a></li>
<li class="toctree-l1"><a class="reference internal" href="datatypes.html">Datatypes</a></li>
<li class="toctree-l1"><a class="reference internal" href="errors.html">Errors</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Services</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="abuse_reports.html">Abuse Reports</a></li>
<li class="toctree-l1"><a class="reference internal" href="agent_ingresses.html">Agent Ingresses</a></li>
<li class="toctree-l1"><a class="reference internal" href="api_keys.html">API Keys</a></li>
<li class="toctree-l1"><a class="reference internal" href="application_sessions.html">Application Sessions</a></li>
<li class="toctree-l1"><a class="reference internal" href="application_users.html">Application Users</a></li>
<li class="toctree-l1"><a class="reference internal" href="tunnel_sessions.html">Tunnel Sessions</a></li>
<li class="toctree-l1"><a class="reference internal" href="failover_backends.html">Failover Backends</a></li>
<li class="toctree-l1"><a class="reference internal" href="http_response_backends.html">HTTP Response Backends</a></li>
<li class="toctree-l1"><a class="reference internal" href="static_backends.html">Static Backends</a></li>
<li class="toctree-l1"><a class="reference internal" href="tunnel_group_backends.html">Tunnel Group Backends</a></li>
<li class="toctree-l1"><a class="reference internal" href="weighted_backends.html">Weighted Backends</a></li>
<li class="toctree-l1"><a class="reference internal" href="bot_users.html">Bot Users</a></li>
<li class="toctree-l1"><a class="reference internal" href="certificate_authorities.html">Certificate Authorities</a></li>
<li class="toctree-l1"><a class="reference internal" href="credentials.html">Tunnel Credentials</a></li>
<li class="toctree-l1"><a class="reference internal" href="edges_https_routes.html">HTTPS Edge Routes</a></li>
<li class="toctree-l1"><a class="reference internal" href="edges_https.html">HTTPS Edges</a></li>
<li class="toctree-l1"><a class="reference internal" href="https_edge_mutual_tls_module.html">HTTPS Edge Mutual TLS Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="https_edge_tls_termination_module.html">HTTPS Edge TLS Termination Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_backend_module.html">HTTPS Edge Route Backend Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_ip_restriction_module.html">HTTPS Edge Route IP Restriction Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_request_headers_module.html">HTTPS Edge Route Request Headers Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_response_headers_module.html">HTTPS Edge Route Response Headers Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_compression_module.html">HTTPS Edge Route Compression Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_circuit_breaker_module.html">HTTPS Edge Route Circuit Breaker Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_webhook_verification_module.html">HTTPS Edge Route Webhook Verification Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_o_auth_module.html">HTTPS Edge Route OAuth Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_saml_module.html">HTTPS Edge Route SAML Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_oidc_module.html">HTTPS Edge Route OIDC Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_websocket_tcp_converter_module.html">HTTPS Edge Route Websocket TCP Converter Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_user_agent_filter_module.html">HTTPS Edge Route User Agent Filter Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edge_route_traffic_policy_module.html">HTTPS Edge Route Traffic Policy Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edges_tcp.html">TCP Edges</a></li>
<li class="toctree-l1"><a class="reference internal" href="tcp_edge_backend_module.html">TCP Edge Backend Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="tcp_edge_ip_restriction_module.html">TCP Edge IP Restriction Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="tcp_edge_traffic_policy_module.html">TCP Edge Traffic Policy Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="edges_tls.html">TLS Edges</a></li>
<li class="toctree-l1"><a class="reference internal" href="tls_edge_backend_module.html">TLS Edge Backend Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="tls_edge_ip_restriction_module.html">TLS Edge IP Restriction Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="tls_edge_mutual_tls_module.html">TLS Edge Mutual TLS Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="tls_edge_tls_termination_module.html">TLS Edge TLS Termination Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="tls_edge_traffic_policy_module.html">TLS Edge Traffic Policy Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="endpoints.html">Endpoints</a></li>
<li class="toctree-l1"><a class="reference internal" href="event_destinations.html">Event Destinations</a></li>
<li class="toctree-l1"><a class="reference internal" href="event_subscriptions.html">Event Subscriptions</a></li>
<li class="toctree-l1"><a class="reference internal" href="event_sources.html">Event Sources</a></li>
<li class="toctree-l1"><a class="reference internal" href="ip_policies.html">IP Policies</a></li>
<li class="toctree-l1"><a class="reference internal" href="ip_policy_rules.html">IP Policy Rules</a></li>
<li class="toctree-l1"><a class="reference internal" href="ip_restrictions.html">IP Restrictions</a></li>
<li class="toctree-l1"><a class="reference internal" href="reserved_addrs.html">Reserved Addresses</a></li>
<li class="toctree-l1"><a class="reference internal" href="reserved_domains.html">Reserved Domains</a></li>
<li class="toctree-l1"><a class="reference internal" href="secrets.html">Secrets</a></li>
<li class="toctree-l1"><a class="reference internal" href="service_users.html">Service Users</a></li>
<li class="toctree-l1"><a class="reference internal" href="ssh_certificate_authorities.html">SSH Certificate Authorities</a></li>
<li class="toctree-l1 current current-page"><a class="current reference internal" href="#">SSH Credentials</a></li>
<li class="toctree-l1"><a class="reference internal" href="ssh_host_certificates.html">SSH Host Certificates</a></li>
<li class="toctree-l1"><a class="reference internal" href="ssh_user_certificates.html">SSH User Certificates</a></li>
<li class="toctree-l1"><a class="reference internal" href="tls_certificates.html">TLS Certificates</a></li>
<li class="toctree-l1"><a class="reference internal" href="tunnels.html">Tunnels</a></li>
<li class="toctree-l1"><a class="reference internal" href="vaults.html">Vaults</a></li>
</ul>
</div>
</div>
</div>
</div>
</aside>
<div class="main">
<div class="content">
<div class="article-container">
<a href="#" class="back-to-top muted-link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8v12z"></path>
</svg>
<span>Back to top</span>
</a>
<div class="content-icon-container">
<div class="theme-toggle-container theme-toggle-content">
<button class="theme-toggle">
<div class="visually-hidden">Toggle Light / Dark / Auto color theme</div>
<svg class="theme-icon-when-auto"><use href="#svg-sun-half"></use></svg>
<svg class="theme-icon-when-dark"><use href="#svg-moon"></use></svg>
<svg class="theme-icon-when-light"><use href="#svg-sun"></use></svg>
</button>
</div>
<label class="toc-overlay-icon toc-content-icon" for="__toc">
<div class="visually-hidden">Toggle table of contents sidebar</div>
<i class="icon"><svg><use href="#svg-toc"></use></svg></i>
</label>
</div>
<article role="main">
<section id="ssh-credentials">
<h1>SSH Credentials<a class="headerlink" href="#ssh-credentials" title="Permalink to this heading">#</a></h1>
<p>Do not construct this object directly, instead access the
<a class="reference internal" href="client.html#ngrok.Client.ssh_credentials" title="ngrok.Client.ssh_credentials"><code class="xref py py-attr docutils literal notranslate"><span class="pre">ssh_credentials</span></code></a> property of an <a class="reference internal" href="client.html#ngrok.Client" title="ngrok.Client"><code class="xref py py-class docutils literal notranslate"><span class="pre">ngrok.Client</span></code></a> object.</p>
<span class="target" id="module-ngrok.services"></span><dl class="py class">
<dt class="sig sig-object py" id="ngrok.services.SSHCredentialsClient">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">ngrok.services.</span></span><span class="sig-name descname"><span class="pre">SSHCredentialsClient</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">client</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/ngrok/services.html#SSHCredentialsClient"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#ngrok.services.SSHCredentialsClient" title="Permalink to this definition">#</a></dt>
<dd><p>SSH Credentials are SSH public keys that can be used to start SSH tunnels
via the ngrok SSH tunnel gateway.</p>
<dl class="py method">
<dt class="sig sig-object py" id="ngrok.services.SSHCredentialsClient.create">
<span class="sig-name descname"><span class="pre">create</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">public_key</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">description</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">metadata</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">acl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">[]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">owner_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/ngrok/services.html#SSHCredentialsClient.create"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#ngrok.services.SSHCredentialsClient.create" title="Permalink to this definition">#</a></dt>
<dd><p>Create a new ssh_credential from an uploaded public SSH key. This ssh credential can be used to start new tunnels via ngroks SSH gateway.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>description</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes.</p></li>
<li><p><strong>metadata</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes.</p></li>
<li><p><strong>acl</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Sequence</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]) optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the <code class="docutils literal notranslate"><span class="pre">bind</span></code> rule. The <code class="docutils literal notranslate"><span class="pre">bind</span></code> 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 <code class="docutils literal notranslate"><span class="pre">bind:example.ngrok.io</span></code>. 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 <code class="docutils literal notranslate"><span class="pre">bind:*.example.com</span></code> which will allow <code class="docutils literal notranslate"><span class="pre">x.example.com</span></code>, <code class="docutils literal notranslate"><span class="pre">y.example.com</span></code>, <code class="docutils literal notranslate"><span class="pre">*.example.com</span></code>, 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 <code class="docutils literal notranslate"><span class="pre">bind:*=example</span></code> which will allow <code class="docutils literal notranslate"><span class="pre">x=example</span></code>, <code class="docutils literal notranslate"><span class="pre">y=example</span></code>, etc. A rule of <code class="docutils literal notranslate"><span class="pre">'*'</span></code> is equivalent to no acl at all and will explicitly permit all actions.</p></li>
<li><p><strong>public_key</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) the PEM-encoded public key of the SSH keypair that will be used to authenticate</p></li>
<li><p><strong>owner_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) 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.</p></li>
</ul>
</dd>
</dl>
<p><a class="reference external" href="https://ngrok.com/docs/api#api-ssh-credentials-create">https://ngrok.com/docs/api#api-ssh-credentials-create</a></p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="datatypes.html#ngrok.datatypes.SSHCredential" title="ngrok.datatypes.SSHCredential"><code class="xref py py-class docutils literal notranslate"><span class="pre">SSHCredential</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="ngrok.services.SSHCredentialsClient.delete">
<span class="sig-name descname"><span class="pre">delete</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">id</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/ngrok/services.html#SSHCredentialsClient.delete"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#ngrok.services.SSHCredentialsClient.delete" title="Permalink to this definition">#</a></dt>
<dd><p>Delete an ssh_credential by ID</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) a resource identifier</p>
</dd>
</dl>
<p><a class="reference external" href="https://ngrok.com/docs/api#api-ssh-credentials-delete">https://ngrok.com/docs/api#api-ssh-credentials-delete</a></p>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="ngrok.services.SSHCredentialsClient.get">
<span class="sig-name descname"><span class="pre">get</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">id</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/ngrok/services.html#SSHCredentialsClient.get"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#ngrok.services.SSHCredentialsClient.get" title="Permalink to this definition">#</a></dt>
<dd><p>Get detailed information about an ssh_credential</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) a resource identifier</p>
</dd>
</dl>
<p><a class="reference external" href="https://ngrok.com/docs/api#api-ssh-credentials-get">https://ngrok.com/docs/api#api-ssh-credentials-get</a></p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="datatypes.html#ngrok.datatypes.SSHCredential" title="ngrok.datatypes.SSHCredential"><code class="xref py py-class docutils literal notranslate"><span class="pre">SSHCredential</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="ngrok.services.SSHCredentialsClient.list">
<span class="sig-name descname"><span class="pre">list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">before_id</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">limit</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">filter</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/ngrok/services.html#SSHCredentialsClient.list"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#ngrok.services.SSHCredentialsClient.list" title="Permalink to this definition">#</a></dt>
<dd><p>List all ssh credentials on this account</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>before_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) Expects a resource ID as its input. Returns earlier entries in the result set, sorted by ID.</p></li>
<li><p><strong>limit</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) Constrains the number of results in the dataset. See the <a class="reference external" href="https://ngrok.com/docs/api/index#pagination">API Overview</a> for details.</p></li>
<li><p><strong>filter</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) A CEL expression to filter the list results. Supports logical and comparison operators to match on fields such as <code class="docutils literal notranslate"><span class="pre">id</span></code>, <code class="docutils literal notranslate"><span class="pre">metadata</span></code>, <code class="docutils literal notranslate"><span class="pre">created_at</span></code>, and more. See ngrok API Filtering for syntax and field details: <a class="reference external" href="https://ngrok.com/docs/api/api-filtering">https://ngrok.com/docs/api/api-filtering</a>.</p></li>
</ul>
</dd>
</dl>
<p><a class="reference external" href="https://ngrok.com/docs/api#api-ssh-credentials-list">https://ngrok.com/docs/api#api-ssh-credentials-list</a></p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="datatypes.html#ngrok.datatypes.SSHCredentialList" title="ngrok.datatypes.SSHCredentialList"><code class="xref py py-class docutils literal notranslate"><span class="pre">SSHCredentialList</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="ngrok.services.SSHCredentialsClient.update">
<span class="sig-name descname"><span class="pre">update</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">description</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">metadata</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">acl</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/ngrok/services.html#SSHCredentialsClient.update"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#ngrok.services.SSHCredentialsClient.update" title="Permalink to this definition">#</a></dt>
<dd><p>Update attributes of an ssh_credential by ID</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) </p></li>
<li><p><strong>description</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes.</p></li>
<li><p><strong>metadata</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>) arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes.</p></li>
<li><p><strong>acl</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Sequence</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]) optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the <code class="docutils literal notranslate"><span class="pre">bind</span></code> rule. The <code class="docutils literal notranslate"><span class="pre">bind</span></code> 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 <code class="docutils literal notranslate"><span class="pre">bind:example.ngrok.io</span></code>. 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 <code class="docutils literal notranslate"><span class="pre">bind:*.example.com</span></code> which will allow <code class="docutils literal notranslate"><span class="pre">x.example.com</span></code>, <code class="docutils literal notranslate"><span class="pre">y.example.com</span></code>, <code class="docutils literal notranslate"><span class="pre">*.example.com</span></code>, 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 <code class="docutils literal notranslate"><span class="pre">bind:*=example</span></code> which will allow <code class="docutils literal notranslate"><span class="pre">x=example</span></code>, <code class="docutils literal notranslate"><span class="pre">y=example</span></code>, etc. A rule of <code class="docutils literal notranslate"><span class="pre">'*'</span></code> is equivalent to no acl at all and will explicitly permit all actions.</p></li>
</ul>
</dd>
</dl>
<p><a class="reference external" href="https://ngrok.com/docs/api#api-ssh-credentials-update">https://ngrok.com/docs/api#api-ssh-credentials-update</a></p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="datatypes.html#ngrok.datatypes.SSHCredential" title="ngrok.datatypes.SSHCredential"><code class="xref py py-class docutils literal notranslate"><span class="pre">SSHCredential</span></code></a></p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</section>
</article>
</div>
<footer>
<div class="related-pages">
<a class="next-page" href="ssh_host_certificates.html">
<div class="page-info">
<div class="context">
<span>Next</span>
</div>
<div class="title">SSH Host Certificates</div>
</div>
<svg class="furo-related-icon"><use href="#svg-arrow-right"></use></svg>
</a>
<a class="prev-page" href="ssh_certificate_authorities.html">
<svg class="furo-related-icon"><use href="#svg-arrow-right"></use></svg>
<div class="page-info">
<div class="context">
<span>Previous</span>
</div>
<div class="title">SSH Certificate Authorities</div>
</div>
</a>
</div>
<div class="bottom-of-page">
<div class="left-details">
<div class="copyright">
Copyright &#169; 1980, ngrok Inc.
</div>
Made with <a href="https://www.sphinx-doc.org/">Sphinx</a> and <a class="muted-link" href="https://pradyunsg.me">@pradyunsg</a>'s
<a href="https://github.com/pradyunsg/furo">Furo</a>
</div>
<div class="right-details">
</div>
</div>
</footer>
</div>
<aside class="toc-drawer">
<div class="toc-sticky toc-scroll">
<div class="toc-title-container">
<span class="toc-title">
On this page
</span>
</div>
<div class="toc-tree-container">
<div class="toc-tree">
<ul>
<li><a class="reference internal" href="#">SSH Credentials</a><ul>
<li><a class="reference internal" href="#ngrok.services.SSHCredentialsClient"><code class="docutils literal notranslate"><span class="pre">SSHCredentialsClient</span></code></a><ul>
<li><a class="reference internal" href="#ngrok.services.SSHCredentialsClient.create"><code class="docutils literal notranslate"><span class="pre">SSHCredentialsClient.create()</span></code></a></li>
<li><a class="reference internal" href="#ngrok.services.SSHCredentialsClient.delete"><code class="docutils literal notranslate"><span class="pre">SSHCredentialsClient.delete()</span></code></a></li>
<li><a class="reference internal" href="#ngrok.services.SSHCredentialsClient.get"><code class="docutils literal notranslate"><span class="pre">SSHCredentialsClient.get()</span></code></a></li>
<li><a class="reference internal" href="#ngrok.services.SSHCredentialsClient.list"><code class="docutils literal notranslate"><span class="pre">SSHCredentialsClient.list()</span></code></a></li>
<li><a class="reference internal" href="#ngrok.services.SSHCredentialsClient.update"><code class="docutils literal notranslate"><span class="pre">SSHCredentialsClient.update()</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
</div>
</aside>
</div>
</div><script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
<script src="_static/doctools.js"></script>
<script src="_static/sphinx_highlight.js"></script>
<script src="_static/scripts/furo.js"></script>
</body>
</html>