CINXE.COM
Bitbucket + ngrok | Integration
<!DOCTYPE html><!-- Last Published: Tue Nov 26 2024 17:26:00 GMT+0000 (Coordinated Universal Time) --><html data-wf-domain="webflow.ngrok.com" data-wf-page="650320fb1373496e89e6d24e" data-wf-site="63ed4bc7a4b189da942a6b8c" lang="en" data-wf-collection="650320fb1373496e89e6d33c" data-wf-item-slug="bitbucket"><head><meta charset="utf-8"/><title>Bitbucket + ngrok | Integration</title><meta content="Integrate ngrok with Bitbucket. Integrate your CI/CD tools with Bitbucket webhooks and secure access with Bitbucket authentication and ngrok without changing code or poking your firewall." name="description"/><meta content="Bitbucket + ngrok | Integration" property="og:title"/><meta content="Integrate ngrok with Bitbucket. Integrate your CI/CD tools with Bitbucket webhooks and secure access with Bitbucket authentication and ngrok without changing code or poking your firewall." property="og:description"/><meta content="Bitbucket + ngrok | Integration" property="twitter:title"/><meta content="Integrate ngrok with Bitbucket. Integrate your CI/CD tools with Bitbucket webhooks and secure access with Bitbucket authentication and ngrok without changing code or poking your firewall." property="twitter:description"/><meta property="og:type" content="website"/><meta content="summary_large_image" name="twitter:card"/><meta content="width=device-width, initial-scale=1" name="viewport"/><meta content="google-site-verification=j0vjqZkk-L879XcfC6AN7gsHUlNADGphHmjhoZ80fGw" name="google-site-verification"/><link href="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/css/ngrok.ad0159fb1.min.css" rel="stylesheet" type="text/css"/><script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script><link href="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/63ef8624e010d9861920be4e_ngrok-favicon.svg" rel="shortcut icon" type="image/x-icon"/><link href="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/63ef861b114f2bbd3e038582_Untitled%20design%20(3).svg" rel="apple-touch-icon"/><script async="" src="https://www.googletagmanager.com/gtag/js?id=G-94F3ZL4GLW"></script><script type="text/javascript">window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}gtag('js', new Date());gtag('set', 'developer_id.dZGVlNj', true);gtag('config', 'G-94F3ZL4GLW');</script><!-- Preconnect, prefetch, preload (pagespeed improvements) --> <link rel="preconnect" href="https://d3e54v103j8qbb.cloudfront.net"> <link rel="preconnect" href="https://cdn.jsdelivr.net"> <link rel="preconnect" href="https://global.ketchcdn.com"> <link rel="preconnect" href="https://cdn.ketchjs.com"> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com"> <link rel="preconnect" href="https://assets-global.website-files.com"> <link rel="preconnect" href="https://assets.website-files.com"> <link rel="preconnect" href="https://www.googletagmanager.com"> <link rel="preconnect" href="https://www.google-analytics.com"> <link rel="preconnect" href="https://www.clarity.ms"> <link rel="preconnect" href="https://hubspotonwebflow.com"> <link rel="preconnect" href="https://js.hs-scripts.com"> <link rel="preconnect" href="https://s.hs-analytics.net"> <link rel="preconnect" href="https://js.hs-banner.com"> <link rel="preconnect" href="https://js.hscollectedforms.net"> <link rel="preconnect" href="https://forms.hscollectedforms.net"> <link rel="preconnect" href="https://track.hubspot.com"> <link rel="preconnect" href="https://static.zdassets.com"> <link rel="preconnect" href="https://ekr.zdassets.com"> <link rel="preconnect" href="https://ngrok.zendesk.com"> <link rel="preconnect" href="https://tag.clearbitscripts.com"> <link rel="preconnect" href="https://x.clearbitjs.com"> <link rel="preconnect" href="https://app.clearbit.com"> <!-- Ketch Consent Platform --> <style> #lanyard_root [class^="content"] { padding-top: 12px; padding-bottom: 12px; line-height: 14px; } #lanyard_root [class^="titleWrapper"] { margin-bottom: 8px; } #lanyard_root #banner-description { min-height: min-content; } #lanyard_root [class^="buttons"] button { padding-top: 4px; padding-bottom: 4px; } #lanyard_root #banner-description + div { display: none; } #lanyard_root [role="dialog"] > [class^="root"]:not(:last-child) { border-bottom: 1px solid #d9d9d9; } #lanyard_root [role="dialog"] > [class^="root"]:last-child { border-top: 1px solid #d9d9d9; } </style> <script type="text/javascript"> window.semaphore = window.semaphore || []; window.ketch = function () { window.semaphore.push(arguments); }; </script> <script type="text/javascript" defer async src="https://global.ketchcdn.com/web/v2/config/ngrok/ngrok_ketch_tag/boot.js"></script> <!-- END Ketch --> <!-- Please keep this css code to improve the font quality--> <style> * { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } </style> <!-- Google Tag Manager --> <script> (function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ "gtm.start": new Date().getTime(), event: "gtm.js" }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != "dataLayer" ? "&l=" + l : ""; j.async = true; j.src = "https://www.googletagmanager.com/gtm.js?id=" + i + dl; f.parentNode.insertBefore(j, f); })(window, document, "script", "dataLayer", "GTM-P4F37ZW"); </script> <!-- End Google Tag Manager --> <meta property="og:url" content="https://ngrok.com/partners/bitbucket"/> <link rel="canonical" href="https://ngrok.com/partners/bitbucket"><script type="text/javascript">window.__WEBFLOW_CURRENCY_SETTINGS = {"currencyCode":"USD","symbol":"$","decimal":".","fractionDigits":2,"group":",","template":"{{wf {\"path\":\"symbol\",\"type\":\"PlainText\"} }} {{wf {\"path\":\"amount\",\"type\":\"CommercePrice\"} }} {{wf {\"path\":\"currencyCode\",\"type\":\"PlainText\"} }}","hideDecimalForWholeNumbers":false};</script></head><body><div class="main-wrapper"><div class="navbar-block"><div class="navbar-block-new"><div class="theme-switch w-embed"><style> .nav-link, .dropdown-nav-title { color: white; opacity: 70%; } .logo { color: white; } .menu-burger, .menu-burger.w--open { color: #ffffff; } @media screen and (max-width: 991px) { .nav-menu-inner { background: #242526; } .nav-menu { background: #242526; } .text-dropdown { color: white; opacity: 70%; } .text-dropdown { color: white; opacity: 70%; } } .bg-dark { display: block; } </style></div><section class="announcement_banner"><div class="padding-global background-color-primary-dark"><div class="announcement_content-wrapper"><div class="announcement_content"><div class="w-dyn-list"><div role="list" class="w-dyn-items"><div role="listitem" class="w-dyn-item"><a id="news-banner-link" href="https://ngrok.com/blog-post/introducing-internal-endpoints" class="news-banner-link w-inline-block"><div class="text-block-5">Want to route traffic based on headers, paths, subdomains or other attributes? Check out internal endpoints. →</div></a></div></div></div></div></div></div></section><div data-animation="over-right" data-collapse="medium" data-duration="400" data-easing="ease" data-easing2="ease" role="banner" class="navbar w-nav"><div class="embed-pop-up-copy w-embed"><style> .right-pop-up { background-color: #000000; } .left-pop-up { background-color: #0E0228; } .blck{ background-color: #1B1033; } .embed-color-white{ color: white; } .embed-color-gray{ color: #A1A0CF; } .indicator-on{ background-color: white; } </style></div><div class="container-large-nav"><div class="wrapper-nav"><a href="/" class="link-logo w-nav-brand"><div class="logo w-embed"><svg width="86" height="32" viewBox="0 0 86 32" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M29.1488 10.9052C27.962 9.57399 26.494 8.90381 24.7495 8.90381C23.6742 8.90381 22.6837 9.11352 21.7734 9.53752C20.8632 9.96151 20.078 10.536 19.4131 11.27C18.7528 12.0085 18.2308 12.8656 17.8471 13.8595C17.4633 14.8488 17.2715 15.9202 17.2715 17.0782C17.2715 18.2134 17.45 19.2483 17.8024 20.1829C18.1594 21.113 18.6546 21.9108 19.2971 22.5764C19.9396 23.242 20.7026 23.7618 21.586 24.1356C22.4695 24.5095 23.4377 24.6964 24.4907 24.6964C24.9681 24.6964 25.4098 24.6599 25.8114 24.5915C26.2129 24.5231 26.5967 24.4092 26.9625 24.2542C27.3284 24.0946 27.6853 23.894 28.0423 23.6524C28.3948 23.4062 28.7651 23.0962 29.1488 22.7269V26.6796H29.1443V27.0625H24.2721L20.6089 31.2751V32H34.3557V30.2903V9.31868H29.1488V10.9052ZM29.1354 18.1496C28.9525 18.569 28.7115 18.9383 28.4171 19.2529C28.1181 19.5674 27.7656 19.8091 27.3552 19.9869C26.9447 20.1647 26.5074 20.2513 26.0479 20.2513C25.566 20.2513 25.1198 20.1647 24.7093 19.9869C24.2988 19.8091 23.9419 19.5674 23.6429 19.2529C23.344 18.9383 23.112 18.569 22.938 18.1496C22.764 17.7301 22.6792 17.2697 22.6792 16.7819C22.6792 16.3123 22.7684 15.87 22.9514 15.4597C23.1343 15.0494 23.3752 14.6938 23.6876 14.3884C23.9954 14.0829 24.3479 13.8413 24.7495 13.6543C25.151 13.4674 25.5838 13.3762 26.0434 13.3762C26.4851 13.3762 26.909 13.4629 27.3239 13.6407C27.7344 13.8139 28.0958 14.0601 28.4037 14.3747C28.7115 14.6893 28.9525 15.0494 29.1399 15.4597C29.3228 15.87 29.4121 16.3214 29.4121 16.8138C29.4076 17.2834 29.3184 17.7301 29.1354 18.1496Z" fill="currentColor"/> <path d="M14.6213 11.1515C14.3447 10.8187 14.0324 10.5315 13.6977 10.2762C13.3988 10.0528 13.082 9.85674 12.7385 9.69718C12.5734 9.61967 12.3994 9.55584 12.2164 9.49658C11.9532 9.40995 11.6676 9.35069 11.3731 9.30054H7.66092L5.20693 12.1591V11.8263V9.3598H0V24.4412H5.20693V17.9719V14.2653H5.92974H7.37983H10.0346H10.0971L10.5031 14.2562V24.4366H15.71V15.0039C15.71 14.2015 15.6342 13.4857 15.4825 12.8566C15.3308 12.232 15.0452 11.6667 14.6213 11.1515Z" fill="currentColor"/> <path d="M49.6685 9.3186H45.809C45.809 9.3186 44.4303 9.3186 43.9886 9.3186L41.7309 11.9173V9.3186H36.5195V24.4H41.7399L41.7443 14.3062H43.4577H45.5324L49.6685 9.52832V9.3186V9.3186Z" fill="currentColor"/> <path d="M77.8051 16.2849L84.9262 9.57402V9.31871H78.0639L72.6027 14.7577V0H67.3958V24.3955H72.6027V18.2545L78.3272 24.3955H85.3333V24.1083L77.8051 16.2849Z" fill="currentColor"/> <path d="M63.3262 11.0374C62.532 10.3216 61.5906 9.76544 60.5064 9.36425C59.4221 8.96305 58.2487 8.76245 56.9815 8.76245C55.6965 8.76245 54.5097 8.96761 53.4299 9.37792C52.3457 9.78824 51.4132 10.3536 50.6234 11.0648C49.8382 11.7805 49.2224 12.624 48.7807 13.5951C48.339 14.5661 48.1204 15.6102 48.1204 16.7271C48.1204 17.9626 48.339 19.0842 48.7807 20.0917C49.2224 21.0993 49.8292 21.9655 50.6101 22.6904C51.3864 23.4153 52.31 23.976 53.3853 24.3681C54.4606 24.7602 55.6296 24.9562 56.8968 24.9562C58.1818 24.9562 59.3731 24.7602 60.4796 24.3681C61.5817 23.976 62.5276 23.4244 63.3128 22.704C64.0981 21.9883 64.7183 21.1357 65.169 20.1464C65.6196 19.1571 65.8472 18.0675 65.8472 16.8685C65.8472 15.674 65.6241 14.5798 65.1868 13.5905C64.7406 12.6057 64.1204 11.7532 63.3262 11.0374ZM60.0736 18.1769C59.8906 18.5963 59.6497 18.9656 59.3552 19.2802C59.0563 19.5948 58.7038 19.8364 58.2933 20.0142C57.8784 20.192 57.4456 20.2786 56.986 20.2786C56.5264 20.2786 56.0892 20.192 55.6742 20.0142C55.2637 19.8364 54.9068 19.5948 54.6123 19.2802C54.3134 18.9656 54.0769 18.5963 53.894 18.1769C53.711 17.7575 53.6218 17.2924 53.6218 16.7818C53.6218 16.3122 53.711 15.87 53.894 15.4597C54.0769 15.0494 54.3134 14.6892 54.6123 14.3747C54.9112 14.0601 55.2637 13.8139 55.6742 13.6406C56.0892 13.4628 56.522 13.3762 56.986 13.3762C57.4456 13.3762 57.8828 13.4628 58.2933 13.6406C58.7038 13.8139 59.0607 14.0601 59.3552 14.3747C59.6542 14.6892 59.8906 15.0585 60.0736 15.4779C60.2565 15.8974 60.3457 16.3442 60.3457 16.8137C60.3457 17.3016 60.2565 17.7575 60.0736 18.1769Z" fill="currentColor"/> </svg></div></a><nav role="navigation" class="nav-menu-copy nav-menu-bl w-nav-menu"><div class="nav-menu-inner"><div class="nav-links nav-links-bl"><a href="/our-product/platform" class="nav-link nav-link-bl w-nav-link">Platform</a><div data-hover="true" data-delay="0" class="drop-link-wrapper w-dropdown"><div class="head-drop head-drop-bl w-dropdown-toggle"><a href="/use-cases" class="link-block-3 w-inline-block"><div class="text-block-4">Use cases</div></a><div class="ic-16x16 desktop-hide w-embed"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M6 13L11 8L6 3" stroke="CurrentColor" stroke-width="2"/> </svg></div></div><aside class="dropdown-list-2 w-dropdown-list"><div class="pop-up-menu"><div id="w-node-_0317a723-def7-78b8-800f-77c3e5a07016-e5a06ffa" class="color-wrapper-drop size-pop-up mobile-menu-height mobile-menu-height-bl"><div class="container-large-menu top"><div class="main-grid-copy _100"><div class="grid-pop _100 grid-pop-bl"><div id="w-node-_0317a723-def7-78b8-800f-77c3e5a0701a-e5a06ffa" class="w-layout-hflex nav-dropdown-group"><div id="w-node-_0317a723-def7-78b8-800f-77c3e5a0701b-e5a06ffa" class="div-block-40"><a href="https://ngrok.com/use-cases#development" class="w-inline-block"><div class="nav-dropdown-uc-section-head">ngrok for development</div></a><div class="w-dyn-list"><div role="list" class="w-dyn-items"><div role="listitem" class="w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="/use-cases/developer-preview" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/6679eb465cc1904fde624de3_icon-uc-dev-previews.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Developer Preview</div></div></a></div></div><div role="listitem" class="w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="/use-cases/webhook-testing" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/6679d60b6c8e34d766b5ce13_icon-uc-webhook-testing.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Webhook Testing</div></div></a></div></div></div></div></div><div class="div-block-41"><a href="https://ngrok.com/use-cases#production" class="w-inline-block"><div class="nav-dropdown-uc-section-head">ngrok for production</div></a><div class="w-dyn-list"><div role="list" class="collection-list-17 w-dyn-items"><div role="listitem" class="collection-item-13 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="/use-cases/api-gateway" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/666cae8c8cf878a8b673375e_icon-uc-api-gateway.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">API Gateway</div></div></a></div></div><div role="listitem" class="collection-item-13 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="/use-cases/device-gateway" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/667442887492bd1247e44186_icon-uc-device-gateway.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Device Gateway</div></div></a></div></div><div role="listitem" class="collection-item-13 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="/use-cases/global-load-balancer" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/6675c1ae09326601909fb334_icon-uc-glb.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Global Load Balancer</div></div></a></div></div><div role="listitem" class="collection-item-13 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="/use-cases/identity-aware-proxy" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/6675c9af5cc9e9c9c81626d9_icon-uc-iap.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Identity-Aware Proxy</div></div></a></div></div><div role="listitem" class="collection-item-13 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="/use-cases/kubernetes-operator" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/6674842b9b041daf04544e57_icon-uc-kubernetes-ingress.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Kubernetes Operator</div></div></a></div></div><div role="listitem" class="collection-item-13 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="/use-cases/site-to-site-connectivity" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/666a0aba8900e94ee9112d13_icon-uc-s2sc.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Site-to-site connectivity</div></div></a></div></div></div></div></div><div id="w-node-_0317a723-def7-78b8-800f-77c3e5a0702d-e5a06ffa" class="top-nav-dropdown-uc-highlight"><div class="nav-dropdown-uc-section-head mb-0">More from ngrok</div><a href="/contact" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/668466e051116b5919b6e028_icon-talk-to-an-expert-1.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Talk to an expert</div></div></a><a href="https://ngrok.com/resources/office-hours" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/670d6b29debdfa4790ad9ec0_nav-icon-any-office-hours.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Join our Office Hours</div></div></a></div></div></div></div></div></div></div></aside></div><a href="/blog" class="nav-link nav-link-bl w-nav-link">Blog</a><div data-hover="true" data-delay="0" class="drop-link-wrapper w-dropdown"><div class="head-drop head-drop-bl w-dropdown-toggle"><a href="/resources" class="link-block-3 w-inline-block"><div class="text-block-4">Resources</div></a><div class="ic-16x16 desktop-hide w-embed"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M6 13L11 8L6 3" stroke="CurrentColor" stroke-width="2"/> </svg></div></div><aside class="dropdown-list-2 w-dropdown-list"><div class="pop-up-menu"><div id="w-node-_0317a723-def7-78b8-800f-77c3e5a07068-e5a06ffa" class="color-wrapper-drop size-pop-up mobile-menu-height mobile-menu-height-bl"><div class="container-large-menu top"><div class="main-grid-copy _100"><div class="grid-pop _100 grid-pop-bl"><div id="w-node-_3c301cb3-827e-b886-0f5c-0daa693fa7ea-e5a06ffa" class="w-layout-hflex nav-dropdown-group"><div id="w-node-_3c301cb3-827e-b886-0f5c-0daa693fa7eb-e5a06ffa" class="nav-content-fullwidth"><div class="top-nav-content-list-wrapper w-dyn-list"><div role="list" class="top-nav-content-list w-dyn-items"><div role="listitem" class="top-nav-content-list-item twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/customers" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d52f3ca5f2d2451c7a191_nav-icon-resources-customers.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Customers</div></div></a></div></div><div role="listitem" class="top-nav-content-list-item twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/security" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d5327be3ce0e0b57a216e_nav-icon-resources-security.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Security</div></div></a></div></div><div role="listitem" class="top-nav-content-list-item twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/docs/guides/" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d53e944cb3daf0c40b5ac_nav-icon-resources-guides.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Guides</div></div></a></div></div><div role="listitem" class="top-nav-content-list-item twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/partners" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d53f3dafae8ac23abeafd_nav-icon-resources-partners.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Partners</div></div></a></div></div><div role="listitem" class="top-nav-content-list-item twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/resources/events" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d5438ca5f2d2451c8b595_nav-icon-resources-events.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Live Events</div></div></a></div></div><div role="listitem" class="top-nav-content-list-item twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/resources/videos" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d578991275ea25a9d5435_nav-icon-resources-videos.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Videos</div></div></a></div></div></div></div></div><div id="w-node-_3c301cb3-827e-b886-0f5c-0daa693fa7ff-e5a06ffa" class="top-nav-dropdown-uc-highlight"><div class="nav-dropdown-uc-section-head mb-0">More from ngrok</div><a href="/contact" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/668466e051116b5919b6e028_icon-talk-to-an-expert-1.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Talk to an expert</div></div></a><a href="https://ngrok.com/resources/office-hours" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/670d6b29debdfa4790ad9ec0_nav-icon-any-office-hours.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Join our Office Hours</div></div></a></div></div></div></div></div></div></div></aside></div><div data-hover="true" data-delay="0" class="drop-link-wrapper w-dropdown"><div class="head-drop head-drop-bl w-dropdown-toggle"><a href="https://ngrok.com/docs" class="link-block-3 w-inline-block"><div class="text-block-4">Docs</div></a><div class="ic-16x16 desktop-hide w-embed"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M6 13L11 8L6 3" stroke="CurrentColor" stroke-width="2"/> </svg></div></div><aside class="dropdown-list-2 w-dropdown-list"><div class="pop-up-menu"><div id="w-node-_0317a723-def7-78b8-800f-77c3e5a0709b-e5a06ffa" class="color-wrapper-drop size-pop-up mobile-menu-height mobile-menu-height-bl"><div class="container-large-menu top"><div class="main-grid-copy _100"><div class="grid-pop _100 grid-pop-bl"><div id="w-node-_24e1a404-0744-bc34-b7b1-bf9d6ada1c50-e5a06ffa" class="w-layout-hflex nav-dropdown-group"><div id="w-node-_24e1a404-0744-bc34-b7b1-bf9d6ada1c51-e5a06ffa" class="nav-content-fullwidth"><div class="collection-list-wrapper-16 w-dyn-list"><div role="list" class="collection-list-20 w-dyn-items"><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/docs/" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d64219e1d8b79c8600a88_nav-icon-docs-all.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">View all docs</div></div></a></div></div><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/docs/api/" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d64a46cc4da4f80fbfa90_nav-icon-docs-api.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">API</div></div></a></div></div><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/docs/integrations/" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d64d02546ff96a07e2a20_nav-icon-docs-integrations.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Integrations</div></div></a></div></div><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/docs/getting-started/" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d652fd549ce6167f8c206_nav-icon-docs-quickstart.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Quickstart</div></div></a></div></div><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/docs/agent-sdks/" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d657de93ebfc0a3ac5586_nav-icon-docs-sdk.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">SDKs</div></div></a></div></div><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://github.com/ngrok" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d65bc0d0eafc0e88dfee8_nav-icon-docs-github.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">GitHub</div></div></a></div></div></div></div></div><div id="w-node-_24e1a404-0744-bc34-b7b1-bf9d6ada1c58-e5a06ffa" class="top-nav-dropdown-uc-highlight"><div class="nav-dropdown-uc-section-head mb-0">More from ngrok</div><a href="/contact" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/668466e051116b5919b6e028_icon-talk-to-an-expert-1.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Talk to an expert</div></div></a><a href="https://ngrok.com/resources/office-hours" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/670d6b29debdfa4790ad9ec0_nav-icon-any-office-hours.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Join our Office Hours</div></div></a></div></div></div></div></div></div></div></aside></div><a href="https://ngrok.com/pricing" class="nav-link nav-link-bl w-nav-link">Pricing</a><div data-hover="true" data-delay="0" class="drop-link-wrapper w-dropdown"><div class="head-drop head-drop-bl w-dropdown-toggle"><a href="/download" class="link-block-3 w-inline-block"><div class="text-block-4">Get ngrok</div></a><div class="ic-16x16 desktop-hide w-embed"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M6 13L11 8L6 3" stroke="CurrentColor" stroke-width="2"/> </svg></div></div><aside class="dropdown-list-2 w-dropdown-list"><div class="pop-up-menu"><div id="w-node-_0317a723-def7-78b8-800f-77c3e5a070e0-e5a06ffa" class="color-wrapper-drop size-pop-up mobile-menu-height mobile-menu-height-bl"><div class="container-large-menu top"><div class="main-grid-copy _100"><div class="grid-pop _100 grid-pop-bl"><div id="w-node-_9aa058f7-3e7c-b7fe-5314-9a6f08034dd8-e5a06ffa" class="w-layout-hflex nav-dropdown-group"><div id="w-node-_9aa058f7-3e7c-b7fe-5314-9a6f08034dd9-e5a06ffa" class="nav-content-fullwidth"><div class="collection-list-wrapper-16 w-dyn-list"><div role="list" class="collection-list-20 w-dyn-items"><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://download.ngrok.com/" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d684549010795adbee0cd_nav-get-download.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Download</div></div></a></div></div><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/docs/agent-sdks/" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d686c01bbc0b5b9d3485d_nav-get-sdk.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">SDKs</div></div></a></div></div><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/contact" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d6984012d90f4ebe61576_nav-get-contact.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Contact Us</div></div></a></div></div><div role="listitem" class="twelfths-4 w-dyn-item"><div class="top-nav-dropdown-uc-list-item"><a href="https://ngrok.com/docs/getting-started/" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/670d652fd549ce6167f8c206_nav-icon-docs-quickstart.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Getting started</div></div></a></div></div></div></div></div><div id="w-node-_9aa058f7-3e7c-b7fe-5314-9a6f08034de0-e5a06ffa" class="top-nav-dropdown-uc-highlight"><div class="nav-dropdown-uc-section-head mb-0">More from ngrok</div><a href="/contact" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/668466e051116b5919b6e028_icon-talk-to-an-expert-1.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Talk to an expert</div></div></a><a href="https://ngrok.com/resources/office-hours" id="w-node-_63ea0f79-1a29-5cf3-5084-82304904d35f-4904d35f" class="nav-item-resource w-inline-block"><div class="currentcolor ic-30x30"><img src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/670d6b29debdfa4790ad9ec0_nav-icon-any-office-hours.svg" loading="lazy" alt=""/></div><div class="gap-2"><div class="nav-dropdown-uc-heading">Join our Office Hours</div></div></a></div></div></div></div></div></div></div></aside></div></div></div><div class="nav-buttons-wrapper hide-desktop"><a href="https://dashboard.ngrok.com/login" class="button-secondary btn-small width-100 w-button">Login</a><a href="https://dashboard.ngrok.com/signup" class="button-primary btn-small width-100 text-style-nowrap w-button">Sign up</a></div></nav><div class="nav-buttons-wrapper hide-tablet"><a id="header_logIn" href="https://dashboard.ngrok.com/login" class="button-secondary btn-small width-100 w-button">Log in</a><a id="header_signUp" href="https://dashboard.ngrok.com/signup" class="button-primary btn-small width-100 text-style-nowrap w-button">Sign up</a></div><div class="menu-burger w-nav-button"><div class="menu-close w-embed"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M13.2139 12L19.3662 4.66641C19.4694 4.54453 19.3826 4.35938 19.2233 4.35938H17.3529C17.2428 4.35938 17.1373 4.40859 17.0647 4.49297L11.9904 10.5422L6.91623 4.49297C6.84592 4.40859 6.74045 4.35938 6.62795 4.35938H4.75763C4.59826 4.35938 4.51154 4.54453 4.61467 4.66641L10.767 12L4.61467 19.3336C4.59156 19.3608 4.57674 19.394 4.57196 19.4293C4.56718 19.4647 4.57264 19.5006 4.5877 19.533C4.60275 19.5653 4.62676 19.5926 4.65689 19.6117C4.68701 19.6308 4.72197 19.6408 4.75763 19.6406H6.62795C6.7381 19.6406 6.84357 19.5914 6.91623 19.507L11.9904 13.4578L17.0647 19.507C17.135 19.5914 17.2404 19.6406 17.3529 19.6406H19.2233C19.3826 19.6406 19.4694 19.4555 19.3662 19.3336L13.2139 12Z" fill="currentColor"/> </svg></div><div class="menu-open w-embed"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M21.1875 3.75H2.8125C2.70937 3.75 2.625 3.83437 2.625 3.9375V5.4375C2.625 5.54062 2.70937 5.625 2.8125 5.625H21.1875C21.2906 5.625 21.375 5.54062 21.375 5.4375V3.9375C21.375 3.83437 21.2906 3.75 21.1875 3.75ZM21.1875 18.375H2.8125C2.70937 18.375 2.625 18.4594 2.625 18.5625V20.0625C2.625 20.1656 2.70937 20.25 2.8125 20.25H21.1875C21.2906 20.25 21.375 20.1656 21.375 20.0625V18.5625C21.375 18.4594 21.2906 18.375 21.1875 18.375ZM21.1875 11.0625H2.8125C2.70937 11.0625 2.625 11.1469 2.625 11.25V12.75C2.625 12.8531 2.70937 12.9375 2.8125 12.9375H21.1875C21.2906 12.9375 21.375 12.8531 21.375 12.75V11.25C21.375 11.1469 21.2906 11.0625 21.1875 11.0625Z" fill="currentColor"/> </svg></div></div></div></div><div class="bg-wrapper"><div class="bg-light"></div><div class="bg-dark"></div></div></div></div></div><div class="global-styles w-embed"><style> .post-wysiwyg-content .text-rich-text h1, .post-wysiwyg-content .text-rich-text h2, .post-wysiwyg-content .text-rich-text h3, .post-wysiwyg-content .text-rich-text h4, .post-wysiwyg-content .text-rich-text h5, .post-wysiwyg-content .text-rich-text h6 { margin-bottom: 0.50em; margin-top: 1.50em; padding-bottom: 0; padding-top: 0; } /* Get rid of top margin on first element in any rich text element */ .w-richtext > :not(div):first-child, .w-richtext > div:first-child > :first-child { margin-top: 0 !important; } /* Get rid of bottom margin on last element in any rich text element */ .w-richtext>:last-child, .w-richtext ol li:last-child, .w-richtext ul li:last-child { margin-bottom: 0 !important; } /* Make the following elements inherit typography styles from the parent and not have hardcoded values. Important: You will not be able to style for example "All Links" in Designer with this CSS applied. Uncomment this CSS to use it in the project. Leave this message for future hand-off. */ /* a, .w-input, .w-select, .w-tab-link, .w-nav-link, .w-dropdown-btn, .w-dropdown-toggle, .w-dropdown-link { color: inherit; text-decoration: inherit; font-size: inherit; } */ /* Prevent all click and hover interaction with an element */ .pointer-events-off { pointer-events: none; } /* Enables all click and hover interaction with an element */ .pointer-events-on { pointer-events: auto; } /* Snippet enables you to add class of div-square which creates and maintains a 1:1 dimension of a div.*/ .div-square::after { content: ""; display: block; padding-bottom: 100%; } /*Hide focus outline for main content element*/ main:focus-visible { outline: -webkit-focus-ring-color auto 0px; } /* Make sure containers never lose their center alignment*/ .container-medium, .container-small, .container-large { margin-right: auto !important; margin-left: auto !important; } /*Reset selects, buttons, and links styles*/ .w-input, .w-select, a { color: inherit; text-decoration: inherit; font-size: inherit; } /*Apply "..." after 3 lines of text */ .text-style-3lines { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; } /* Apply "..." after 2 lines of text */ .text-style-2lines { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } /* Apply "..." at 100% width */ .truncate-width { width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } /* Removes native scrollbar */ .no-scrollbar { -ms-overflow-style: none; // IE 10+ overflow: -moz-scrollbars-none; // Firefox } .no-scrollbar::-webkit-scrollbar { display: none; // Safari and Chrome } /* Adds inline flex display */ .display-inlineflex { display: inline-flex; } /* These classes are never overwritten */ .hide { display: none !important; } @media screen and (max-width: 991px) { .hide, .hide-tablet { display: none !important; } } @media screen and (max-width: 767px) { .hide-mobile-landscape{ display: none !important; } } @media screen and (max-width: 479px) { .hide-mobile{ display: none !important; } } .margin-0 { margin: 0rem !important; } .padding-0 { padding: 0rem !important; } .spacing-clean { padding: 0rem !important; margin: 0rem !important; } .margin-top { margin-right: 0rem !important; margin-bottom: 0rem !important; margin-left: 0rem !important; } .padding-top { padding-right: 0rem !important; padding-bottom: 0rem !important; padding-left: 0rem !important; } .margin-right { margin-top: 0rem !important; margin-bottom: 0rem !important; margin-left: 0rem !important; } .padding-right { padding-top: 0rem !important; padding-bottom: 0rem !important; padding-left: 0rem !important; } .margin-bottom { margin-top: 0rem !important; margin-right: 0rem !important; margin-left: 0rem !important; } .padding-bottom { padding-top: 0rem !important; padding-right: 0rem !important; padding-left: 0rem !important; } .margin-left { margin-top: 0rem !important; margin-right: 0rem !important; margin-bottom: 0rem !important; } .padding-left { padding-top: 0rem !important; padding-right: 0rem !important; padding-bottom: 0rem !important; } .margin-horizontal { margin-top: 0rem !important; margin-bottom: 0rem !important; } .padding-horizontal { padding-top: 0rem !important; padding-bottom: 0rem !important; } .margin-vertical { margin-right: 0rem !important; margin-left: 0rem !important; } .padding-vertical { padding-right: 0rem !important; padding-left: 0rem !important; } .hljs-copy-wrapper code { font-size: 14px !important; border-radius: 5px; } /* ===== BL CUSTOM CSS ===== */ /* Code snippets inside blog post */ div[fs-richtext-element="rich-text"] code:not([class]) { --tw-bg-opacity: 1; background-color: rgb(244 244 245/var(--tw-bg-opacity)); font-weight: 600; font-family: Courier New,Courier,monospace; padding-left: 0.4rem; padding-right: 0.4rem; border-radius: 0.2rem; } /* Utilities */ .checkmark-bullets ul { list-style-image: url('https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/65497815cad2197f542d7e80_checkmark-green.svg'); } .checkmark-bullets-white ul { list-style-image: url('https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/642304f99e59e83efbb28106_Frame%203590.svg'); padding-left: 30px; } .wrapper-pricing-features .feature-col2 ul { padding-left: 0; } .add-on-list-item .feature-col2 li { background-image: url('https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/65e21760a46d5aadb4300c8c_checkmark-pricing.svg'); background-repeat: no-repeat; list-style-type: none; margin-bottom: 1rem; padding-left: 1.75rem; } .included-feature-body ul { padding-left: 0; } .included-feature-body li { background-image: url('https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/65fdc717b315140401454ca2_checkmark-pricing-2.svg'); background-repeat: no-repeat; background-position: -0.25rem -0.25rem; list-style-type: none; margin-bottom: 1rem; margin-bottom: 0.5rem; padding-left: 1.75rem; } .add-on-list-item .feature-col2 h3 { color: var(--black); font-size: 1.25rem; font-weight: 700; line-height: 1.5rem; } .wrapper-pricing-highlight-section figcaption {display: none !important;} .w-richtext a {text-decoration: underline;} .cards-border-solid .cmp-card {border: 1px solid var(--bl-colors-border-light);} .card-heading-color-black .card-heading {color: var(--black)} .card-heading-weight-semibold .card-heading {font-weight: 600 !important;} .bl-card-bg-gray-light .cmp-card {background-color: var(--bl-colors-border-light); margin-top: 0;} .bl-card-bg-gray-light .item-latest {border-radius: 0;} .bl-card-bg-gray-light div:empty {display: none;} .rich-text-li-space-increase li {margin-bottom: 1.25em;} .card-boost .gap-6, .card-boost-red .gap-6 {gap: 24px;} .hide-icon .ic-40-40 {display: none !important;} .card-pricing-feature p + ul {margin-top: 0;} :root .w-dyn-empty {padding: 0;} .card-to-blog-list-item .item-latest.cmp-card { border-color: var(--secondary-gray); border-radius: 0; border-width: 0 0 1px 0; padding-left: 0; padding-right: 0; } .card-to-blog-list-item .text-24-28.text-weight-bold.text-color-blue.card-heading { color: var(--black-soft); font-weight: normal; } .hero-force-wrap .hero-col1, .hero-force-wrap .hero-col2 { flex-basis: 100%; margin-bottom: var(--activetheme--spc-lg); } /* Forms */ :root .w-richtext-figure-type-image figcaption { display: none !important; } /* === VARIABLES ===*/ :root { --bl-colors-black: #0B0C0E; --bl-colors-blueng-500: #2e54ea; --bl-colors-gray-400: #8C91A2; --bl-colors-gray-600: #535968; --bl-colors-grayng-500: #595959; --bl-colors-peach-500: #fa8080; --bl-colors-red-500: #E53E3E; --bl-colors-white: #ffffff; --bl-fontSizes-txs: calc(12rem / 16); --bl-fontSizes-tsm: calc(14rem / 16); --bl-fontSizes-tmd: calc(15rem / 16); --bl-fontSizes-tlg: calc(16rem / 16); --bl-lineHeights-txs: 1.5; --bl-lineHeights-tsm: 1.5; --bl-lineHeights-tmd: 1.5; --bl-lineHeights-tlg: 1.5; --bl-fontWeights-thin: font-weight: 200; --bl-fontWeights-light: font-weight: 300; --bl-fontWeights-normal: font-weight: 400; --bl-fontWeights-medium: font-weight: 500; --bl-fontWeights-semibold: font-weight: 600; --bl-fontWeights-bold: font-weight: 700; --bl-radii-none: 0; --bl-radii-sm: 0.125rem; --bl-radii-base: 0.25rem; --bl-radii-md: 0.25rem; --bl-radii-lg: 0.5rem; --bl-radii-xl: 0.75rem; --bl-radii-2xl: 1rem; --bl-radii-3xl: 1.25rem; --bl-radii-4xl: 1.5rem; --bl-radii-full: 100%; --bl-space-xs: calc(8rem / 16); --bl-space-sm: calc(12rem / 16); --bl-space-smmd: calc(16rem / 16); --bl-space-md: calc(24rem / 16); } /* === FIELDS ===*/ .hs-richtext, .hs-form-field { margin-bottom: var(--bl-space-sm); } .hs-form-field * { font-size: var(--bl-fontSizes-tlg); line-height: var(--bl-lineHeights-tlg); } .legal-consent-container .hs-richtext, .hs-form-field label { font-weight: var(--bl-fontWeights-normal); } .hs-form-booleancheckbox label { font-weight: var(--bl-fontWeights-normal); } .hs-form-field input[type="date"], .hs-form-field input[type="email"], .hs-form-field input[type="number"], .hs-form-field input[type="phone"], .hs-form-field input[type="tel"], .hs-form-field input[type="text"], .hs-form-field textarea, .hs-form-field select { background-color: var(--bl-colors-white); border: 1px solid var(--bl-colors-gray-400); color: var(--bl-colors-black); padding: var(--bl-space-xs) var(--bl-space-smmd) !important; width: 100% !important; } .hs-form fieldset { max-width: 100% !important; } .hbspt-form .inputs-list { list-style-type: none; margin-bottom: var(--bl-space-sm); padding-left: 0; } .hbspt-form .inputs-list .hs-form-booleancheckbox { padding-left: 0; } .hbspt-form .inputs-list input[type="checkbox"] { height: 1.5rem; } div[class*="hs_LEGAL_CONSENT"] .inputs-list { margin: 0; } .hs_use_cases { clear: both; color: var(--bl-colors-black); width: 100% !important; } .hs_use_cases > label { font-weight: 600 !important; } .hs_use_cases ul { margin-bottom: 0 !important; margin-top: 0 !important; } .hs_use_cases li { margin-bottom: 0 !important; margin-top: 0; } .hs_use_cases .hs-form-checkbox-display span { display: inline-block; margin-left: .5rem; vertical-align: top; width: calc(100% - 1.5rem); } .hs_other_use_case { margin-left: 2rem; margin-top: -1rem; width: calc(100% - 2rem) !important; } /* === CONTENT === */ .hs-field-desc { color: var(--bl-colors-black); line-height: var(--activetheme--lh-base); margin-bottom: .5rem; } .hs-richtext { font-size: var(--bl-fontSizes-tsm); line-height: var(--bl-lineHeights-tsm); } .hs-richtext a { text-decoration: underline; } .legal-consent-container .hs-richtext { color: var(--bl-colors-grayng-500); font-size: var(--bl-fontSizes-txs); line-height: var(--bl-lineHeights-txs); } li.hs-form-booleancheckbox label span { font-size: var(--bl-fontSizes-tsm); } /* === STATES === */ .hs-form-field .hs-input.invalid { border-color: var(--bl-colors-red-500); } ::placeholder { color: var(--bl-colors-black); } .hs-form-field .is-placeholder { color: var(--bl-colors-black); } .hs-error-msgs { color: var(--bl-colors-red-500); } /* === CAPTCHA AND SUBMIT === */ .hs-submit { float: right; } .hs_recaptcha::before { clear: both; content: ""; display: block; padding-top: var(--bl-space-sm); } .hs_recaptcha:after, .form-component:after { clear: both; content: ""; display: block; } @media (max-width: 767px) { .hs-submit { float: none; } .hs-submit { text-align: center; } .hs-submit .hs-button { margin-left: auto; margin-right: auto; max-width: 400px; width: 100%; } } input[type="submit"] { background-color: var(--bl-colors-blueng-500); border-color: transparent; border-radius: .625rem; border-width: 0; color: var(--bl-colors-white); cursor: pointer; font-size: var(--bl-fontSizes-tlg); line-height: var(--bl-lineHeights-tlg); padding: 0.75rem 1.5rem; } .submitted-message { font-size: 1.1em; } .submitted-message a { text-decoration: underline; } .submitted-message p:first-child:before { content: "✅"; display: inline; padding-right: .5em; } img[src="https://21124867.fs1.hubspotusercontent-na1.net/hubfs/21124867/ngrok-email-header-03.png"] {display: none !important;} /* Noms ngrok marketing design system */ :root { --grid-gap-size: var(--activetheme--spc-lg); --grid-gap-count: 0; } @media screen and (min-width: 962px) { .twelfths-1 {width: calc( 1*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/1)) );} .twelfths-2 {width: calc( 2*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/2)) );} .twelfths-3 {width: calc( 3*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/3)) );} .twelfths-4 {width: calc( 4*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/4)) );} .twelfths-5 {width: calc( 5*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/5)) );} .twelfths-5 {width: calc( 5*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/5)) );} .twelfths-6 {width: calc( 6*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/6)) );} .twelfths-7 {width: calc( 7*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/7)) );} .twelfths-8 {width: calc( 8*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/8)) );} .twelfths-9 {width: calc( 9*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/9)) );} .twelfths-10 {width: calc( 10*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/10)) );} .twelfths-11 {width: calc( 11*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/11)) );} .twelfths-12 {width: 100%;} .max-twelfths-1 {max-width: calc( 1*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/1)) );} .max-twelfths-2 {max-width: calc( 2*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/2)) );} .max-twelfths-3 {max-width: calc( 3*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/3)) );} .max-twelfths-4 {max-width: calc( 4*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/4)) );} .max-twelfths-5 {max-width: calc( 5*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/5)) );} .max-twelfths-6 {max-width: calc( 6*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/6)) );} .max-twelfths-7 {max-width: calc( 7*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/7)) );} .max-twelfths-8 {max-width: calc( 8*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/8)) );} .max-twelfths-9 {max-width: calc( 9*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/9)) );} .max-twelfths-10 {max-width: calc( 10*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/10)) );} .max-twelfths-11 {max-width: calc( 11*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/11)) );} .max-twelfths-12 {max-width: calc( 12*(100% / 12) - (var(--grid-gap-count)*var(--grid-gap-size)/(12/12)) );} } @media screen and (max-width: 768px) { .twelfths-1, .twelfths-2, .twelfths-3, .twelfths-4, .twelfths-5, .twelfths-6, .twelfths-7, .twelfths-8, .twelfths-9, .twelfths-10, .twelfths-11, .twelfths-12, .max-twelfths-1, .max-twelfths-2, .max-twelfths-3, .max-twelfths-4, .max-twelfths-5, .max-twelfths-6, .max-twelfths-7, .max-twelfths-8, .max-twelfths-9, .max-twelfths-10, .max-twelfths-11, .max-twelfths-12 { flex-basis: 100%; width: 100%; } } .main-wrapper .nom-section-base:first-child { margin-top: 60px; } .nom-section-base .w-richtext p { line-height: var(--activetheme--lh-base); } .nom-button-wrapper-100 a[class*="button"] { width: 100%; } </style></div><div class="page-wrapper"><div class="section-top"><div class="container-large w-container"><div class="padding-global"><div class="wrapper-top"><div class="title-top"><a href="/partners" class="link-2">Partners /</a><div class="light-grey">Bitbucket</div></div><div class="content-top"><div class="left-content-top"><div class="gap-18 _w-624"><div class="title-wrapper-text"><div class="heading-style-h3 text-weight-bold color-sub">Bitbucket</div><div class="heading-style-h3 text-weight-bold"> + ngrok</div></div><p class="text-20-32 text-color-grey">Integrate your CI/CD tools with Bitbucket webhooks and secure access with Bitbucket authentication and ngrok without changing code or poking your firewall.</p></div><div class="w-dyn-list"><div role="list" class="collection-list-5 w-dyn-items"><div role="listitem" class="w-dyn-item"><div class="tag-wrapper w-condition-invisible"><img loading="lazy" alt="" src="" class="img-24-24 w-dyn-bind-empty"/><div class="text-size-small text-size-medium">Type of Integration</div></div></div><div role="listitem" class="w-dyn-item"><div style="background-color:#e3faef" class="tag-wrapper"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/65837258f1d358d46d2ac5bf_webhooks.svg" class="img-24-24"/><div style="color:#3eb77d" class="text-size-small text-size-medium">Webhooks</div></div></div></div></div></div><div class="right-content-top"><div class="square-wrapper"><div class="inner-box"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/644d872d7398153f02fd2840_logo.svg" class="inner-img"/></div></div></div></div></div></div></div></div><div class="section-integrations"><div class="container-large w-container"><div class="padding-global"><div class="bottom-50"><h1 class="heading-style-h3">Integrations</h1></div><div class="w-dyn-list"><div role="list" class="collection-list-6 w-dyn-items"><div role="listitem" class="w-dyn-item"><div class="wrapper-integrations"><div class="content-integrations"><div style="background-color:#3eb77d" class="top-line"></div><div class="top-content"><div style="background-color:#e3faef" class="top-content-left"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/65837258f1d358d46d2ac5bf_webhooks.svg" class="img-24-cont"/></div><div class="top-content-right"><h5 class="heading-style-h5 text-weight-semibold">Webhooks</h5><div class="text-size-medium text-color-gray">Develop and test Bitbucket webhooks from localhost</div></div></div><div class="line-content"></div><div class="bottom-content"><div class="number-template"><div id="w-node-ab04f44a-5b1c-ff49-d590-5785a1936920-89e6d24e" style="color:#3eb77d" class="heading-style-h1 text-weight-semibold color-blue">1</div><div id="w-node-da2f7c05-3c4c-762b-3aab-3b329ffa5e88-89e6d24e" style="color:#3eb77d" class="heading-style-h1 text-weight-semibold color-blue">2</div><div id="w-node-_8982de02-25cd-d651-3af6-b3702697adf7-89e6d24e" class="line-desh"></div><div id="w-node-_104563a5-c7c6-5538-ed3f-a1a12193d49e-89e6d24e" class="line-desh"></div><div id="w-node-_01b4ff45-d4b0-6db2-3fb1-64c9a420b276-89e6d24e" style="color:#3eb77d" class="heading-style-h1 text-weight-semibold color-blue">3</div></div><div class="image-template"><div id="w-node-_00ffe69a-bc45-1a01-88a2-7d9c8f2c522c-89e6d24e" class="gap-40"><div class="heading-style-h1 text-weight-semibold color-blue hide-number">1</div><div id="w-node-_4e66b435-7e14-dd7b-0320-0205c85354f2-89e6d24e" class="radius-img"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/644d867295c6aa53f0a15f1f_webhook-01.png" class="content-img"/></div><div class="text-size-medium">Listen to Bitbucket webhooks with a public and secure URL</div></div><div id="w-node-d02f11c2-c2e3-3238-e47e-073ed3ec2760-89e6d24e" class="gap-40"><div class="heading-style-h1 text-weight-semibold color-blue hide-number">2</div><div id="w-node-e66e96e7-c548-6c0c-3f8a-a75c949d4688-89e6d24e" class="radius-img"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/643455bae148fd581d5531d6_webhook-02.svg" class="content-img"/></div><div class="text-size-medium">Inspect webhook traffic</div></div><div id="w-node-_693c1320-3e3b-352d-57da-e1fb47a1fd67-89e6d24e" class="gap-40"><div class="heading-style-h1 text-weight-semibold color-blue hide-number">3</div><div id="w-node-_21b4263b-d99c-0c66-9d02-d729d9aca5cb-89e6d24e" class="radius-img"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/64345403ab4f87d0f45b74c1_webhook-03.svg" class="content-img"/></div><div class="text-size-medium">Modify and replay Bitbucket requests</div></div></div><div class="gap-70"><div class="gap-76"><div class="link-block"><div class="top-link"><div class="circle"></div><div class="circle"></div><div class="circle"></div></div><div class="line-link"></div><div class="bottom-link"><div style="color:#e3faef" class="text-size-medium w-richtext"><p>ngrok http 8080 --verify-webhook=bitbucket --verify-webhook-secret=mySecret</p></div></div></div><div class="buttons-block"><a href="https://dashboard.ngrok.com/signup" target="_blank" class="button-primary-copy w-inline-block"><div>Sign up for free</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></a><a href="https://ngrok.com/docs/integrations/bitbucket/webhooks" target="_blank" class="button-secondary-collection w-inline-block"><div>Follow our tutorial</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></a></div></div></div></div></div></div></div></div></div></div></div></div><div class="section-learn"><div class="container-large w-container"><div class="padding-global"><div class="under-block"><div class="top-learn"><h3 class="heading-style-h3">Learn more</h3></div><div class="w-dyn-list"><div role="list" class="collection-list-3 w-dyn-items"><div role="listitem" class="collection-item-2 w-dyn-item"><div class="learn-wrapper"><div class="bottom-learn"><a href="https://ngrok.com/docs/integrations/bitbucket/webhooks" target="_blank" class="learn-item w-inline-block"><div class="left-item"><div class="sub-item-left"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/6433e988443cd20c9bb4215f_doc.svg" class="image-93"/></div><div class="sub-item-right"><div class="heading-style-h6 text-weight-semibold">Tutorial</div><div class="text-size-regular color-sub">Integrate Bitbucket webhooks with ngrok</div></div></div><div class="right-item w-condition-invisible"><div>Watch</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></div><div class="right-item"><div>Read</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></div></a><a href="#" class="lightbox-link w-inline-block w-condition-invisible w-dyn-bind-empty w-lightbox"><img src="https://cdn.prod.website-files.com/plugins/Basic/assets/placeholder.60f9b1840c.svg" loading="lazy" alt="" class="image-127"/><script type="application/json" class="w-json">{ "items": [], "group": "" }</script></a></div></div></div><div role="listitem" class="collection-item-2 w-dyn-item"><div class="learn-wrapper"><div class="bottom-learn"><a href="https://www.youtube.com/watch?v=rcRQRJ7yRag" target="_blank" class="learn-item w-inline-block"><div class="left-item"><div class="sub-item-left"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/644d857643b556364b361b5b_video.svg" class="image-93"/></div><div class="sub-item-right"><div class="heading-style-h6 text-weight-semibold">Video</div><div class="text-size-regular color-sub">Build a continuous integration set-up of a Bitbucket repo using webhooks and ngrok</div></div></div><div class="right-item w-condition-invisible"><div>Watch</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></div><div class="right-item"><div>Read</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></div></a><a href="#" class="lightbox-link w-inline-block w-condition-invisible w-dyn-bind-empty w-lightbox"><img src="https://cdn.prod.website-files.com/plugins/Basic/assets/placeholder.60f9b1840c.svg" loading="lazy" alt="" class="image-127"/><script type="application/json" class="w-json">{ "items": [], "group": "" }</script></a></div></div></div><div role="listitem" class="collection-item-2 w-dyn-item"><div class="learn-wrapper"><div class="bottom-learn"><a href="https://support.atlassian.com/bitbucket-cloud/docs/create-and-trigger-a-webhook-tutorial/" target="_blank" class="learn-item w-inline-block"><div class="left-item"><div class="sub-item-left"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/6433e988443cd20c9bb4215f_doc.svg" class="image-93"/></div><div class="sub-item-right"><div class="heading-style-h6 text-weight-semibold">Documentation</div><div class="text-size-regular color-sub">Create and trigger a Bitbucket webhook tutorial</div></div></div><div class="right-item w-condition-invisible"><div>Watch</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></div><div class="right-item"><div>Read</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></div></a><a href="#" class="lightbox-link w-inline-block w-condition-invisible w-dyn-bind-empty w-lightbox"><img src="https://cdn.prod.website-files.com/plugins/Basic/assets/placeholder.60f9b1840c.svg" loading="lazy" alt="" class="image-127"/><script type="application/json" class="w-json">{ "items": [], "group": "" }</script></a></div></div></div><div role="listitem" class="collection-item-2 w-dyn-item"><div class="learn-wrapper"><div class="bottom-learn"><a href="https://developer.atlassian.com/cloud/bitbucket/getting-started/" target="_blank" class="learn-item w-inline-block"><div class="left-item"><div class="sub-item-left"><img loading="lazy" alt="" src="https://cdn.prod.website-files.com/63ed707844acb1ccf1ccb700/6433e988443cd20c9bb4215f_doc.svg" class="image-93"/></div><div class="sub-item-right"><div class="heading-style-h6 text-weight-semibold">Tutorial</div><div class="text-size-regular color-sub">Getting started with the Atlassian Connect for Bitbucket Cloud framework</div></div></div><div class="right-item w-condition-invisible"><div>Watch</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></div><div class="right-item"><div>Read</div><div class="html-embed-2 w-embed"><svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_903_41715)"> <path d="M12.2344 4.82324L10.8244 6.23324L16.4044 11.8232H4.23438V13.8232H16.4044L10.8244 19.4132L12.2344 20.8232L20.2344 12.8232L12.2344 4.82324Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_903_41715"> <rect width="24" height="24" fill="white" transform="translate(0.234375 0.823242)"/> </clipPath> </defs> </svg></div></div></a><a href="#" class="lightbox-link w-inline-block w-condition-invisible w-dyn-bind-empty w-lightbox"><img src="https://cdn.prod.website-files.com/plugins/Basic/assets/placeholder.60f9b1840c.svg" loading="lazy" alt="" class="image-127"/><script type="application/json" class="w-json">{ "items": [], "group": "" }</script></a></div></div></div></div></div><div class="html-embed-8 w-condition-invisible w-embed w-iframe"><iframe width="100%" height="500" src="" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe></div></div></div></div></div><section class="section-cta"><div class="padding-global"><div class="container-large"><div class="padding-section-large padding-mobile"><div class="cta-wrapper cta-wrapper-smaller-gap"><div class="cta-header"><h3 class="heading-style-h1 text-weight-bold">Try ngrok for your<br/>application or API</h3></div><div class="button-block button-block-vertical"><a rel="nofollow noreferrer" href="https://dashboard.ngrok.com/signup" class="button-primary w-button">Get started for free</a><a href="https://ngrok.com/docs" class="button-primary btn-transparent w-inline-block"><div>Read technical documentation </div><img src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/641dd9ede94c1d0055660816_Arrow%20forward.svg" loading="lazy" alt="" class="img-arrow hide-mobile-portrait"/></a></div></div></div></div></div></section><footer class="footer5_component background-color-gray"><section class="section-footer"><div class="w-layout-blockcontainer nom-container-base w-container"><div class="wrapper-footer"><div class="top-footer"><div class="column-1-footer"><div class="heading-footer">Platform</div><a href="/our-product" class="link-footer w-inline-block"><div>Product</div></a><a href="/our-product/cloud-edge" class="link-footer w-inline-block"><div>Cloud Edge</div></a><a href="/our-product/secure-tunnels" class="link-footer w-inline-block"><div>Secure Tunnels</div></a><a href="/our-product/platform" class="link-footer w-inline-block"><div>Platform Features</div></a></div><div class="column-1-footer"><div class="heading-footer">Use Cases</div><a href="https://ngrok.com/use-cases#development" class="link-footer w-inline-block"><div>ngrok for development</div></a><a href="https://ngrok.com/use-cases#production" class="link-footer w-inline-block"><div>ngrok for production</div></a><div class="w-dyn-list"><div role="list" class="collection-list-19 w-dyn-items"><div role="listitem" class="w-dyn-item"><a href="/use-cases/site-to-site-connectivity" class="link-footer w-inline-block"><div>Site-to-site connectivity</div></a></div><div role="listitem" class="w-dyn-item"><a href="/use-cases/api-gateway" class="link-footer w-inline-block"><div>API Gateway</div></a></div><div role="listitem" class="w-dyn-item"><a href="/use-cases/device-gateway" class="link-footer w-inline-block"><div>Device Gateway</div></a></div><div role="listitem" class="w-dyn-item"><a href="/use-cases/kubernetes-operator" class="link-footer w-inline-block"><div>Kubernetes Operator</div></a></div><div role="listitem" class="w-dyn-item"><a href="/use-cases/global-load-balancer" class="link-footer w-inline-block"><div>Global Load Balancer</div></a></div><div role="listitem" class="w-dyn-item"><a href="/use-cases/identity-aware-proxy" class="link-footer w-inline-block"><div>Identity-Aware Proxy</div></a></div><div role="listitem" class="w-dyn-item"><a href="/use-cases/webhook-testing" class="link-footer w-inline-block"><div>Webhook Testing</div></a></div><div role="listitem" class="w-dyn-item"><a href="/use-cases/developer-preview" class="link-footer w-inline-block"><div>Developer Preview</div></a></div></div></div><a href="/use-cases" class="link-footer w-inline-block"><div>View all use cases</div></a></div><div class="column-1-footer"><div class="heading-footer">Resources</div><a href="/security" class="link-footer w-inline-block"><div>Security</div></a><a href="https://trust.ngrok.com/" class="link-footer w-inline-block"><div>Trust</div></a><a href="/our-product/platform" class="link-footer w-inline-block"><div>Platform</div></a><a href="/customers" class="link-footer w-inline-block"><div>Customers</div></a><a href="/partners" class="link-footer w-inline-block"><div>Integrations</div></a><a href="/blog" class="link-footer w-inline-block"><div>Blog</div></a><a href="/support" class="link-footer w-inline-block"><div>Support</div></a><a href="/abuse" class="link-footer w-inline-block"><div>Abuse</div></a></div><div class="column-1-footer"><div class="heading-footer">Get Started</div><a href="https://download.ngrok.com/" class="link-footer w-inline-block"><div>Download</div></a><a href="https://ngrok.com/pricing" class="link-footer w-inline-block"><div>Pricing</div></a><a href="https://ngrok.com/docs" class="link-footer w-inline-block"><div>Docs</div></a><a href="/contact" class="link-footer w-inline-block"><div>Contact</div></a><a href="/partners" class="link-footer w-inline-block"><div>Partners</div></a><a href="https://status.ngrok.com/" class="link-footer w-inline-block"><div>Service Status</div></a></div><div class="column-1-footer"><div class="heading-footer">Company</div><a href="/about" class="link-footer w-inline-block"><div>About</div></a><a href="/newsletter" class="link-footer w-inline-block"><div>Newsletter</div></a><a href="/resources/events" class="link-footer w-inline-block"><div>Events</div></a><a href="/press" class="link-footer w-inline-block"><div>Press</div></a><a href="/brand" class="link-footer w-inline-block"><div>Brand</div></a><a href="/careers" class="link-footer w-inline-block"><div>Careers</div></a><a href="/tos" class="link-footer w-inline-block"><div>Terms of Service</div></a><a href="/privacy" class="link-footer w-inline-block"><div>Privacy Policy</div></a><a href="/privacy-preferences" class="link-footer w-inline-block"><div>Privacy Preferences</div></a><a href="/dpa" class="link-footer w-inline-block"><div>DPA</div></a></div></div><div class="line-between"></div><div class="bottom-footer footer5_credit-text-copy"><div class="w-layout-hflex flex-block"><div>© </div><div class="w-embed w-script"><script type="text/javascript">document.write(new Date().getFullYear());</script></div><div> ngrok, Inc.</div></div><div class="link-block-footer"><div class="w-layout-grid footer5_social-icons-copy"><a rel="noopener noreferrer" href="https://ngrok.com/blog-post/rss.xml" target="_blank" class="footer5_social-link-copy w-inline-block"><div class="social-icon-copy w-embed"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"> <path d="M6.54809 20.7489C6.54809 22.5008 5.12775 23.9216 3.37422 23.9216C1.62224 23.9216 0.201172 22.5008 0.201172 20.7489C0.201172 18.9946 1.62224 17.5742 3.37422 17.5742C5.12775 17.5742 6.54809 18.9946 6.54809 20.7489Z" fill="currentColor"/> <path d="M0 11.9438C0 12.3829 0.343591 12.7437 0.782052 12.7661C3.91931 12.9261 6.02928 14.068 7.97261 16.0211C9.88228 17.9385 11.097 20.6896 11.3056 23.1867C11.3413 23.6133 11.6978 23.9422 12.1259 23.9422H15.075C15.3009 23.9422 15.517 23.8494 15.6725 23.6855C15.8281 23.5216 15.9094 23.3011 15.8979 23.0754C15.4779 14.8496 9.10153 8.59883 0.86574 8.18804C0.64032 8.17676 0.420309 8.25852 0.256731 8.41398C0.0932055 8.56945 0 8.78524 0 9.01092V11.9438Z" fill="currentColor"/> <path d="M0 3.81802C0 4.26064 0.349157 4.62327 0.791415 4.6408C10.8927 5.04041 19.012 13.0562 19.4168 23.1508C19.4345 23.5924 19.7975 23.9418 20.2395 23.9418H23.176C23.3995 23.9418 23.6133 23.8511 23.7685 23.6904C23.9238 23.5296 24.007 23.3128 23.9995 23.0895C23.5709 10.3716 13.5764 0.481921 0.851957 0.0580749C0.628773 0.0506371 0.412195 0.134116 0.251634 0.289372C0.091073 0.444524 0 0.658293 0 0.881581V3.81802Z" fill="currentColor"/> </svg></div></a><a rel="noopener noreferrer" href="https://github.com/ngrok" target="_blank" class="footer5_social-link-copy w-inline-block"><div class="social-icon-copy w-embed"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--simple-icons" width="24" height="24" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><path fill="currentColor" d="M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></div></a><a rel="noopener noreferrer" href="https://twitter.com/ngrokHQ" target="_blank" class="footer5_social-link-copy w-inline-block"><div class="social-icon-copy w-embed"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--simple-icons" width="24" height="24" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><path fill="currentColor" d="M23.953 4.57a10 10 0 0 1-2.825.775a4.958 4.958 0 0 0 2.163-2.723c-.951.555-2.005.959-3.127 1.184a4.92 4.92 0 0 0-8.384 4.482C7.69 8.095 4.067 6.13 1.64 3.162a4.822 4.822 0 0 0-.666 2.475c0 1.71.87 3.213 2.188 4.096a4.904 4.904 0 0 1-2.228-.616v.06a4.923 4.923 0 0 0 3.946 4.827a4.996 4.996 0 0 1-2.212.085a4.936 4.936 0 0 0 4.604 3.417a9.867 9.867 0 0 1-6.102 2.105c-.39 0-.779-.023-1.17-.067a13.995 13.995 0 0 0 7.557 2.209c9.053 0 13.998-7.496 13.998-13.985c0-.21 0-.42-.015-.63A9.935 9.935 0 0 0 24 4.59z"></path></svg></div></a><a rel="noopener noreferrer" href="https://www.linkedin.com/company/ngrok" target="_blank" class="footer5_social-link-copy w-inline-block"><div class="social-icon-copy w-embed"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--simple-icons" width="24" height="24" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><path fill="currentColor" d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037c-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85c3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065a2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"></path></svg></div></a><a rel="noopener noreferrer" id="w-node-_6faab1cb-d86e-d77e-a70a-485850fdbffd-cbec719b" href="https://www.youtube.com/@ngrokHQ" target="_blank" class="footer5_social-link-copy w-inline-block"><div class="social-icon-copy w-embed"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_2262_2)"> <path fill-rule="evenodd" clip-rule="evenodd" d="M9.522 15.135L9.52125 8.34387L16.0058 11.7511L9.522 15.135ZM23.76 7.16708C23.76 7.16708 23.5252 5.5016 22.806 4.76819C21.8932 3.80515 20.8702 3.80061 20.4015 3.74472C17.043 3.5 12.0052 3.5 12.0052 3.5H11.9948C11.9948 3.5 6.957 3.5 3.5985 3.74472C3.129 3.80061 2.10675 3.80515 1.19325 4.76819C0.474003 5.5016 0.239998 7.16708 0.239998 7.16708C0.239998 7.16708 0 9.12336 0 11.0789V12.9128C0 14.8691 0.239998 16.8246 0.239998 16.8246C0.239998 16.8246 0.474003 18.4901 1.19325 19.2235C2.10675 20.1865 3.306 20.1563 3.84 20.2568C5.76 20.4426 12 20.5 12 20.5C12 20.5 17.043 20.4924 20.4015 20.2477C20.8702 20.1911 21.8932 20.1865 22.806 19.2235C23.5252 18.4901 23.76 16.8246 23.76 16.8246C23.76 16.8246 24 14.8691 24 12.9128V11.0789C24 9.12336 23.76 7.16708 23.76 7.16708Z" fill="currentColor"/> </g> <defs> <clipPath id="clip0_2262_2"> <rect width="24" height="24" fill="currentColor"/> </clipPath> </defs> </svg></div></a></div></div></div></div></div><div></div></section></footer></div></div><script src="https://d3e54v103j8qbb.cloudfront.net/js/jquery-3.5.1.min.dc5e7f18c8.js?site=63ed4bc7a4b189da942a6b8c" type="text/javascript" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script><script src="https://cdn.prod.website-files.com/63ed4bc7a4b189da942a6b8c/js/ngrok.f52dcc846.js" type="text/javascript"></script><script> window.populateFormUrl = function() { var formElement = document.querySelector('form input[name="form_url"]'); if (formElement !== undefined && formElement !== null) { formElement.value = window.location.origin + window.location.pathname; }; }; </script><script src="https://hubspotonwebflow.com/assets/js/form-124.js" type="text/javascript" integrity="sha384-bjyNIOqAKScdeQ3THsDZLGagNN56B4X2Auu9YZIGu+tA/PlggMk4jbWruG/P6zYj" crossorigin="anonymous"></script></body></html>