<!DOCTYPE html>
<html class="no-js" lang="en">
    <head>
        <title>Apache NiFi MiNiFi Downloads</title>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <link rel="shortcut icon" href="/assets/images/nifi16.ico"/>
        <link rel="stylesheet" href="/stylesheets/app.min.5c81cf462909783b5f788de8312885d5e08d20aa6dd5f6eb9507dd445444a6cb.css">
        <link rel="stylesheet" href="/assets/stylesheets/font-awesome.min.css">
        <script src="/assets/js/modernizr.js"></script>
        <script src="/assets/js/webfontloader.js"></script>
        <script>
  var _paq = window._paq = window._paq || [];
  _paq.push(['disableCookies']);
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);
  (function() {
    var baseUri = "//matomo.privacy.apache.org/";
    _paq.push(['setTrackerUrl', baseUri + 'matomo.php']);
    _paq.push(['setSiteId', '28']);
    var trackerElement = document.createElement('script');
    var firstScriptElement = document.getElementsByTagName('script')[0];
    trackerElement.async = true;
    trackerElement.src = baseUri + 'matomo.js';
    var firstScriptElement = document.getElementsByTagName('script')[0];
    if (window.location.host === 'nifi.apache.org') {
      firstScriptElement.parentNode.insertBefore(trackerElement, firstScriptElement);
    }
  })();
</script>
</head>
    <body><div class="sticky contain-to-grid">
    <nav class="top-bar" data-topbar role="navigation">
        <ul class="title-area">
            <li class="name">
                <h1>
                    <a href="index.html">
                        <img id="logo-top-bar" src="/assets/images/minifi-drop-white.svg" alt="MiNiFi"/>
                    </a>
                </h1>
            </li>
            
            <li class="toggle-topbar menu-icon"><a href="#"><span></span></a></li>
        </ul>

        <section class="top-bar-section">
            
            <ul class="right">
                <li class="has-dropdown">
                    <a href="#">Project</a>
                    <ul class="dropdown">
                        <li><a href="/index.html">Home</a></li>
                        <li><a href="https://blogs.apache.org/nifi/"><i class="fa fa-external-link external-link"></i>Apache NiFi Blog</a></li>
                        <li><a href="https://www.apache.org/licenses/"><i class="fa fa-external-link external-link"></i>License</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">Documentation</a>
                    <ul class="dropdown">
                        <li><a href="getting-started.html"><i class="fa"></i>Getting Started</a></li>
                        <li><a href="minifi-java-agent-quick-start.html"><i class="fa"></i>MiNiFi Java Quick Start Guide</a></li>
                        <li><a href="system-admin-guide.html"><i class="fa"></i>Administrator's Guide</a></li>
                        <li><a href="minifi-toolkit.html"><i class="fa"></i>Converter Toolkit</a></li>
                        <li><a href="faq.html"><i class="fa"></i>FAQ</a></li>
                        <li><a href="https://cwiki.apache.org/confluence/display/MiNiFi"><i class="fa fa-external-link external-link"></i>Wiki</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">Downloads</a>
                    <ul class="dropdown">
                        <li><a href="download.html">Download MiNiFi Components</a></li>
                        <li><a href="https://cwiki.apache.org/confluence/display/MINIFI/Release+Notes"><i class="fa fa-external-link external-link"></i>MiNiFi Java Release Notes</a></li>
                        <li><a href="https://cwiki.apache.org/confluence/display/MINIFI/Release+Notes#ReleaseNotes-MiNiFi(C++)"><i class="fa fa-external-link external-link"></i>MiNiFi C++ Release Notes</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">Community</a>
                    <ul class="dropdown">
                        <li><a href="https://cwiki.apache.org/confluence/display/NIFI/Contributor+Guide"><i class="fa fa-external-link external-link"></i>Contributor Guide</a></li>
                        <li><a href="../mailing_lists.html">Mailing Lists &amp; Chat</a></li>
                        <li><a href="../people.html">People</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">Development</a>
                    <ul class="dropdown">
                        <li><a href="../release-guide.html">Release Guide</a></li>
                        <li><a href="../licensing-guide.html">Licensing Guide</a></li>
                        <li><a href="https://gitbox.apache.org/repos/asf?p=nifi.git"><i class="fa fa-external-link external-link"></i>Source - Java Agent</a></li>
                        <li><a href="https://github.com/apache/nifi"><i class="fa fa-external-link external-link"></i>Source - GitHub - Java Agent</a></li>
                        <li><a href="https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git"><i class="fa fa-external-link external-link"></i>Source - C++ Agent</a></li>
                        <li><a href="https://github.com/apache/nifi-minifi-cpp"><i class="fa fa-external-link external-link"></i>Source - GitHub - C++ Agent</a></li>
                        <li><a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20NIFI%20AND%20resolution%20%3D%20Unresolved%20AND%20component%20%3D%20%22MiNiFi%22%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC"><i class="fa fa-external-link external-link"></i>MiNiFi Java Issues</a></li>
                        <li><a href="https://issues.apache.org/jira/browse/MINIFICPP"><i class="fa fa-external-link external-link"></i>MiNiFi C++ Issues</a></li>
                    </ul>
                </li>
                <li class="has-dropdown">
                    <a href="#">ASF Links</a>
                    <ul class="dropdown">
                        <li><a href="https://www.apache.org"><i class="fa fa-external-link external-link"></i>Apache Software Foundation</a></li>
                        <li><a href="https://privacy.apache.org/policies/privacy-policy-public.html"><i class="fa fa-external-link external-link"></i>Privacy Policy</a></li>
                        <li><a href="https://www.apache.org/foundation/sponsorship.html"><i class="fa fa-external-link external-link"></i>Sponsorship</a></li>
                        <li><a href="https://www.apache.org/security/"><i class="fa fa-external-link external-link"></i>Security</a></li>
                        <li><a href="https://www.apache.org/foundation/thanks.html"><i class="fa fa-external-link external-link"></i>Thanks</a></li>
                    </ul>
                </li>
                <li>
                    <a href="../index.html">Apache NiFi</a>
                </li>
            </ul>
        </section>
    </nav>
</div>
          <div class="row">
            <div class="large-12 columns">
              <div class="large-space"></div>
	<h1 id="apache-hahahugoshortcode-s0-hbhb-minifi-downloads">Apache <span class="ni">ni</span><span class="fi">fi</span>
 MiNiFi Downloads</h1>
<p>Apache NiFi <a href="https://downloads.apache.org/nifi/KEYS">Project Keys</a> can be used to
<a href="https://www.apache.org/info/verification.html">verify downloads</a>.</p>
<p>Please allow up to 24 hours for mirrors to synchronize following the release of a new version.</p>
<p>Previous releases can be found in <a href="https://archive.apache.org/dist/nifi/">release archives</a>.
Please avoid repeated downloads from archives to avoid infrastructure rate limits.</p>
<h2 id="minifi-java-releases">MiNiFi Java Releases</h2>
<h3 id="hahahugoshortcode-s1-hbhb">1.19.1</h3>
<ul>
<li>Released: 2022-12-07
<ul>
<li><a href="https://cwiki.apache.org/confluence/display/NIFI/Release+Notes#ReleaseNotes-Version1.19.1">Release Notes</a></li>
</ul>
</li>
<li>Sources
<ul>
<li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/1.19.1/nifi-1.19.1-source-release.zip">Apache NiFi Sources 1.19.1</a>
[<a href="https://downloads.apache.org/nifi/1.19.1/nifi-1.19.1-source-release.zip.asc">OpenPGP</a>]
[<a href="https://downloads.apache.org/nifi/1.19.1/nifi-1.19.1-source-release.zip.sha256">SHA-256</a>]
[<a href="https://downloads.apache.org/nifi/1.19.1/nifi-1.19.1-source-release.zip.sha512">SHA-512</a>]
</li>
</ul>
</li>
<li>Binaries
<ul>
<li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/1.19.1/minifi-1.19.1-bin.zip">Apache NiFi MiNiFi Binary 1.19.1</a>
[<a href="https://downloads.apache.org/nifi/1.19.1/minifi-1.19.1-bin.zip.asc">OpenPGP</a>]
[<a href="https://downloads.apache.org/nifi/1.19.1/minifi-1.19.1-bin.zip.sha256">SHA-256</a>]
[<a href="https://downloads.apache.org/nifi/1.19.1/minifi-1.19.1-bin.zip.sha512">SHA-512</a>]
</li>
<li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/1.19.1/minifi-toolkit-1.19.1-bin.zip">Apache NiFi MiNiFi Toolkit Binary 1.19.1</a>
[<a href="https://downloads.apache.org/nifi/1.19.1/minifi-toolkit-1.19.1-bin.zip.asc">OpenPGP</a>]
[<a href="https://downloads.apache.org/nifi/1.19.1/minifi-toolkit-1.19.1-bin.zip.sha256">SHA-256</a>]
[<a href="https://downloads.apache.org/nifi/1.19.1/minifi-toolkit-1.19.1-bin.zip.sha512">SHA-512</a>]
</li>
<li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/1.19.1/minifi-c2-1.19.1-bin.zip">Apache NiFi MiNiFi Command and Control Binary 1.19.1</a>
[<a href="https://downloads.apache.org/nifi/1.19.1/minifi-c2-1.19.1-bin.zip.asc">OpenPGP</a>]
[<a href="https://downloads.apache.org/nifi/1.19.1/minifi-c2-1.19.1-bin.zip.sha256">SHA-256</a>]
[<a href="https://downloads.apache.org/nifi/1.19.1/minifi-c2-1.19.1-bin.zip.sha512">SHA-512</a>]
</li>
</ul>
</li>
</ul>
<h2 id="minifi-c-releases">MiNiFi C++ Releases</h2>
<h3 id="0120">0.12.0</h3>
<ul>
<li>Released: 2022-06-01
<ul>
<li><a href="https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=65145325#ReleaseNotesMiNiFi(C++)-Versioncpp-0.12.0">Release Notes</a></li>
</ul>
</li>
<li>Sources
<ul>
<li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/nifi-minifi-cpp/0.12.0/nifi-minifi-cpp-0.12.0-source.tar.gz">Apache NiFi MiNiFi C&#43;&#43; Sources 0.12.0</a>
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.12.0/nifi-minifi-cpp-0.12.0-source.tar.gz.asc">OpenPGP</a>]
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.12.0/nifi-minifi-cpp-0.12.0-source.tar.gz.sha256">SHA-256</a>]
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.12.0/nifi-minifi-cpp-0.12.0-source.tar.gz.sha512">SHA-512</a>]
</li>
</ul>
</li>
<li>Binaries
<ul>
<li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/nifi-minifi-cpp/0.12.0/nifi-minifi-cpp-0.12.0-bin-linux.tar.gz">Apache NiFi MiNiFi C&#43;&#43; Binary for Linux x86_64 0.12.0</a>
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.12.0/nifi-minifi-cpp-0.12.0-bin-linux.tar.gz.asc">OpenPGP</a>]
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.12.0/nifi-minifi-cpp-0.12.0-bin-linux.tar.gz.sha256">SHA-256</a>]
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.12.0/nifi-minifi-cpp-0.12.0-bin-linux.tar.gz.sha512">SHA-512</a>]
</li>
</ul>
</li>
</ul>
<h3 id="0110">0.11.0</h3>
<ul>
<li>Released: 2021-12-13
<ul>
<li><a href="https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=65145325#ReleaseNotesMiNiFi(C++)-Versioncpp-0.11.0">Release Notes</a></li>
</ul>
</li>
<li>Sources
<ul>
<li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/nifi-minifi-cpp/0.11.0/nifi-minifi-cpp-0.11.0-source.tar.gz">Apache NiFi MiNiFi C&#43;&#43; Sources 0.11.0</a>
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.11.0/nifi-minifi-cpp-0.11.0-source.tar.gz.asc">OpenPGP</a>]
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.11.0/nifi-minifi-cpp-0.11.0-source.tar.gz.sha256">SHA-256</a>]
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.11.0/nifi-minifi-cpp-0.11.0-source.tar.gz.sha512">SHA-512</a>]
</li>
</ul>
</li>
<li>Binaries
<ul>
<li><a href="https://www.apache.org/dyn/closer.lua?path=/nifi/nifi-minifi-cpp/0.11.0/nifi-minifi-cpp-0.11.0-bin-linux.tar.gz">Apache NiFi MiNiFi C&#43;&#43; Binary for Linux x86_64 0.11.0</a>
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.11.0/nifi-minifi-cpp-0.11.0-bin-linux.tar.gz.asc">OpenPGP</a>]
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.11.0/nifi-minifi-cpp-0.11.0-bin-linux.tar.gz.sha256">SHA-256</a>]
[<a href="https://downloads.apache.org/nifi/nifi-minifi-cpp/0.11.0/nifi-minifi-cpp-0.11.0-bin-linux.tar.gz.sha512">SHA-512</a>]
</li>
</ul>
</li>
</ul>

</div>
          </div>
        <div class="row">
    <div class="large-12 columns footer">
        <a href="https://www.apache.org">
            <img id="asf-logo" alt="Apache Software Foundation" src="/assets/images/asf_logo.png" width="200" style="margin:0px 10px" />
        </a>
        <a  href="https://www.apache.org/events/current-event.html">
            <img src="https://www.apache.org/events/current-event-234x60.png" style="margin:0px 10px" />
        </a>
        <div id="copyright">
            <p>Copyright &#169; 2022 The Apache Software Foundation, Licensed under the <a
                    href="https://www.apache.org/licenses/">Apache License, Version 2.0</a>.<br/>Apache, the
                Apache feather logo, NiFi, Apache NiFi and the project logo are trademarks of The Apache Software
                Foundation.</p>
        </div>
    </div>
</div>
        <script src="/assets/js/jquery.min.js"></script>
        <script src="/assets/js/foundation.js"></script>
        <script src="/assets/js/app.js"></script>
    </body>
</html>